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

instructions: consider using intel xed #23

Open
mmcloughlin opened this issue Jan 1, 2019 · 2 comments
Open

instructions: consider using intel xed #23

mmcloughlin opened this issue Jan 1, 2019 · 2 comments
Labels
instructions Instruction database proposal Ideas for discussion

Comments

@mmcloughlin
Copy link
Owner

Creating an issue to record thoughts on moving to Intel XED for the instruction database (started in #22).

@mmcloughlin mmcloughlin added the proposal Ideas for discussion label Jan 1, 2019
@mmcloughlin
Copy link
Owner Author

Moving to XED is also interesting because it could (ambitiously) help with the Go project too. Some related links:

@mmcloughlin
Copy link
Owner Author

Perhaps it would be good to consider this in connection to AVX-512 #20, especially if the existing sources turn out to be incomplete or annoying.

@mmcloughlin mmcloughlin added the instructions Instruction database label Jan 14, 2019
mmcloughlin added a commit that referenced this issue Nov 28, 2022
Supporting extra instructions not included in the Opcodes database is
currently a challenge. Short of migrating to an entirely different source
(such as #23), the options are either to patch the XML data file or to append
additional instructions at the loading phase.

An example of patching the XML was shown in the as-yet unlanded PR #234. This
shows the XML patching approach is unwieldy and requires more information than
we actually need (for example instruction form encodings).

In #335 we discussed the alternative of adding extra instructions during
loading. This has the advantage of using avo's simpler internal data
structure.

This PR prepares for using that approach by adding an `internal/opcodesextra`
package, intended to contain manually curated lists of extra instructions to
add to the instruction database during loading. At the moment, the only
instruction added here is the `MOVLQZX` instruction that's already handled
this way.

Updates #335 #234 #23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
instructions Instruction database proposal Ideas for discussion
Projects
None yet
Development

No branches or pull requests

1 participant