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

Fix x86_64 instruction formatting for >2 operands #1459

Closed
kupsch opened this issue Jul 24, 2023 · 0 comments · Fixed by #1463
Closed

Fix x86_64 instruction formatting for >2 operands #1459

kupsch opened this issue Jul 24, 2023 · 0 comments · Fixed by #1463
Assignees
Labels
bug instructionAPI This issue is directly related to instructionAPI x86_64 Related to x86 family of ISAs

Comments

@kupsch
Copy link
Contributor

kupsch commented Jul 24, 2023

Formatting an x86_64 instruction with three or more operands has the operands in the wrong order. Dyninst stores the operands in intel syntax order, but wants to formats them in AT&T syntax order. Essentially the formatter rotates the operands right one instead of reversing the list. If the intel order was A, B, C, the AT&T syntax should be C, B, A, but it currently outputs as C, A, B. One and two operand instructions format correctly as rotating and reversing produce the same result.

@kupsch kupsch added bug instructionAPI This issue is directly related to instructionAPI x86_64 Related to x86 family of ISAs labels Jul 24, 2023
@kupsch kupsch self-assigned this Jul 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug instructionAPI This issue is directly related to instructionAPI x86_64 Related to x86 family of ISAs
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant