[Libre-soc-bugs] [Bug 898] binutils svp64 objdump support
bugzilla-daemon at libre-soc.org
bugzilla-daemon at libre-soc.org
Sat Aug 20 23:03:11 BST 2022
https://bugs.libre-soc.org/show_bug.cgi?id=898
--- Comment #3 from Dmitry Selyutin <ghostmansd at gmail.com> ---
It takes an absolute eternity to make things done, really, not even hours, but
days. Still, here's what we have for now (I've omitted the boilerplate):
class Instruction(_Fields):
_: _Field = range(0, 32)
major: _Field = range(0, 6)
class WordInstruction(Instruction):
pass
class PrefixedInstruction(Instruction):
class Prefix(WordInstruction):
pass
class Suffix(WordInstruction):
pass
prefix: Prefix = range(0, 32)
suffix: Suffix = range(32, 64)
major: _Field = Suffix.major
class SVP64Instruction(PrefixedInstruction):
class Prefix(PrefixedInstruction.Prefix, _Prefix):
pass
prefix: Prefix
With the code above, SVP64 instructions from the binary file produce the
representations like below:
SVP64Instruction(0x54000007c410214, major=0x1, prefix.insn=0x5400000,
prefix.major=0x1, prefix.pid=0x3, prefix.rm.spr=0x54000, prefix.rm.mmode=0x0,
prefix.rm.mask=0x0, prefix.rm.elwidth=0x1, prefix.rm.ewsrc=0x1,
prefix.rm.subvl=0x1, prefix.rm.extra=0x0, prefix.rm.mode=0x0,
prefix.rm.extra2[0]=0x0, prefix.rm.extra2[1]=0x0, prefix.rm.extra2[2]=0x0,
prefix.rm.extra2[3]=0x0, prefix.rm.smask=0x0, prefix.rm.extra3[0]=0x0,
prefix.rm.extra3[1]=0x0, prefix.rm.extra3[2]=0x0, suffix.major=0x1)
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the libre-soc-bugs
mailing list