Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add x86 support #13

Open
Rot127 opened this issue Jun 8, 2023 · 0 comments
Open

Add x86 support #13

Rot127 opened this issue Jun 8, 2023 · 0 comments
Labels
enhancement New feature or request

Comments

@Rot127
Copy link
Collaborator

Rot127 commented Jun 8, 2023

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 and PrinterCapstone classes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant