Skip to content

i#7842: ISA feature AARCH64 bug fix#7893

Open
edeiana wants to merge 3 commits intomasterfrom
i7842-opcodemix-isa-bug
Open

i#7842: ISA feature AARCH64 bug fix#7893
edeiana wants to merge 3 commits intomasterfrom
i7842-opcodemix-isa-bug

Conversation

@edeiana
Copy link
Copy Markdown
Contributor

@edeiana edeiana commented May 7, 2026

Fixes instr_get_isa_feature() in AARCH64 where instructions like bcond
were incorrectly reported with an <invalid> ISA feature in the opcode_mix tool.
The root cause was that instr_get_isa_feature() instantiated a decode_info_t
struct without initialization, leaving the check_reachable flag containing
indeterminate stack data.
When this flag happened to be true, the encoding walk of instr_get_isa_feature()
enforced reachability checks on PC-relative operands.
Depending on how instr_get_isa_feature() is used, pc is not necessarily the
instruction's actual pc, it can be an unrelated address like a buffer, so disabling
the reachability check is necessary.

Adds a unit test that would trigger returning <invalid> ISA feature if the
reachability check were to be enabled.

Issue #7842

@bin-wang bin-wang self-requested a review May 7, 2026 00:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant