[Libre-soc-bugs] [Bug 1068] add instructions from ls012 not currently implemented in binutils
bugzilla-daemon at libre-soc.org
bugzilla-daemon at libre-soc.org
Mon May 1 20:47:57 BST 2023
https://bugs.libre-soc.org/show_bug.cgi?id=1068
--- Comment #22 from Dmitry Selyutin <ghostmansd at gmail.com> ---
minmax aliases support is introduced to binutils.
https://git.libre-soc.org/?p=binutils-gdb.git;a=commitdiff;h=f2cb631dd73096751e1af8e116b091ebbdb04aad
Please note that, like with branches, this means that disassembly tends to
prefer aliases, not the vanilla instruction, which is checked by the tests I
implemented (see link above). For example, `minmax 31,0,0,0` will always be
shown as `minmax r31,r0,r0,0` by objdump, and this is intentional.
Also, this is one of the rare (IIRC the first) time when I feel the task was
completely underrated budget-wise. From binutils point of view, all these are
distinct instructions, and it takes a lot of time to process these (2
instructions, 16 aliases, 48 tests). If we have more similar cases, I suggest
that we either:
a) estimate these tasks as if these instructions are distinct (because they
indeed are);
b) implement some mechanism inside insndb to deal with aliases based on some
sort of configuration, because otherwise these things take too much time.
As I understand, there's at least one more case of such aliasing, fminmax; I
suspect grevlut should also have aliases. Any other victims?
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the libre-soc-bugs
mailing list