[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug gas/29058] Quadratic(?) slowdown of m68k-as on m68k_frob_symbol()
From: |
slyich at gmail dot com |
Subject: |
[Bug gas/29058] Quadratic(?) slowdown of m68k-as on m68k_frob_symbol() |
Date: |
Wed, 13 Apr 2022 20:59:16 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=29058
--- Comment #2 from Sergei Trofimovich <slyich at gmail dot com> ---
Adding a bit of debugging to get the idea what symbol types and values are most
frequent at being checked for alignment:
--- a/gas/config/tc-m68k.c
+++ b/gas/config/tc-m68k.c
@@ -4735,6 +4735,8 @@ m68k_frob_symbol (symbolS *sym)
{
struct label_line *l;
+ fprintf(stderr, "m68k_frob_symbol('%s') value = %#lx\n", S_GET_NAME
(sym), S_GET_VALUE (sym));
+
for (l = labels; l != NULL; l = l->next)
{
if (l->label == sym)
$ ./as-new a.S
m68k_frob_symbol('%d0') value = 0x1
m68k_frob_symbol('%D0') value = 0x1
m68k_frob_symbol('%d2') value = 0x3
m68k_frob_symbol('%D2') value = 0x3
m68k_frob_symbol('%d4') value = 0x5
m68k_frob_symbol('%D4') value = 0x5
m68k_frob_symbol('%d6') value = 0x7
m68k_frob_symbol('%D6') value = 0x7
m68k_frob_symbol('%a0') value = 0x9
m68k_frob_symbol('%A0') value = 0x9
m68k_frob_symbol('%a2') value = 0xb
m68k_frob_symbol('%A2') value = 0xb
m68k_frob_symbol('%a4') value = 0xd
m68k_frob_symbol('%A4') value = 0xd
m68k_frob_symbol('%a6') value = 0xf
...
m68k_frob_symbol('.LVU1') value = 0x1
m68k_frob_symbol('.LVU3') value = 0x1
m68k_frob_symbol('.LVU5') value = 0x1
m68k_frob_symbol('.LVU7') value = 0x3
m68k_frob_symbol('.LVU11') value = 0x1
m68k_frob_symbol('.LVU13') value = 0x1
...
My guess is that these symbols can't be used as text labels and could be
skipped earlier.
--
You are receiving this mail because:
You are on the CC list for the bug.