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 notrack support #48

Merged
merged 1 commit into from
Jun 21, 2023
Merged

add notrack support #48

merged 1 commit into from
Jun 21, 2023

Conversation

Ptival
Copy link
Contributor

@Ptival Ptival commented Jun 9, 2023

This adds support for recognizing and flagging notrack on near jumps and calls.

It makes no attempt at introducing notrack when reassembling.

@Ptival Ptival requested review from kquick and RyanGlScott June 9, 2023 20:24
Copy link
Contributor

@RyanGlScott RyanGlScott left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It would be worth documenting this new prefix type here:

pfx describes the prefixes that can precede the main opcode without
turning it into a different instruction. These may be:
aso - accepts address size override
oso - accepts operand size override
rexw, rexr, rexx, rexb - uses the indicated REX bit
seg - accepts a segment override

Also, I think there is an invariant that notrack cannot be allowed alongside seg, since seg also uses 0x3e (permitting both types of 0x3e would be ambiguous).

src/Flexdis86/Disassembler.hs Outdated Show resolved Hide resolved
@Ptival
Copy link
Contributor Author

Ptival commented Jun 12, 2023

Note: This addresses issue #44

@Ptival Ptival force-pushed the vr/notrack branch 2 times, most recently from 79d30ec to 258c984 Compare June 12, 2023 18:05
data/optable.xml Outdated Show resolved Hide resolved
@Ptival Ptival merged commit 191d283 into main Jun 21, 2023
3 checks passed
@Ptival Ptival deleted the vr/notrack branch June 21, 2023 10:26
@Ptival Ptival mentioned this pull request Jun 21, 2023
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.

None yet

3 participants