DynamoRIO / DynamoRIO/dynamorio
Add API to query which AArch64 ISA feature an instruction belongs to
- Dominant language
- C
- Stars
- 3.2k
- Forks
- 629
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 30
Description
We have a use case of identifying whether an instr_t is SVE/SVE2.
For x86 DR never had the source ISA release as a first class field and so old tools like drcpusim would figure out SSE vs SSE2 and other categories using helper functions in DR API that list opcodes: e.g., instr_is_sse().
But for AArch64 the ISA feature group is a first class field in the decoder/encoder codec, and I see SVE and SVE2 columns in core/ir/aarch64/codec*.txt.
Presumably there's nowhere in instr_t that holds such a thing, so this would be deduced by doing an encoding walk to find the target template and then grabbing the feature field from the template.
Contributor guide
Assessment
This issue has not been assessed yet.