Open
Description
x86
is currently not supported. But the reason is only a single not refactored backend.
The DisassemblerEmitter.cpp
emits the decoding tables via the class RecognizableInstr
for x86
or, for all other targets, via the DecoderEmitter
class.
For obvious reasons we decided to refactor the DecoderEmitter
first. But this also means that we can not generate the decoder tables in C for the x86
target.
But as far as I can tell refactoring the RecognizableInstr
class is the only thing, which prevents us from generating the decoder tables. All the other backends (RegisterInfo
, AsmMatcher
etc.) are not special for x86
.
To support x86
we simply need to:
- Figure out how the
x86
specific backends work. - Move every code snippet which prints code to the output stream into the
PrinterLLVM
andPrinterCapstone
classes.