-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
[Alpha] BSR, JMP, JSR instructions are not disassembled #2582
Comments
For Alpha we used LLVM 3 as a basis. This means they likely haven't added those instructions when they deprecated the whole architecture. Are you aware of any other LLVM fork with Alpha still maintained? Otherwise we would need to add those instructions into our cc @R33v0LT |
I checked the current Alpha td files. Indeed, the jmp, bsr, jsr instructions are described only for specific registers. I think it is possible to manually try to add the missing ones |
Those ones?
Did they really hard code back then what registers these instructions use? Was this ever defined like this in any ISA? But yes, would really appreciate it if you could add them as regular operands. |
@Rot127 I don't think "outdated module" label applies here, since Alpha was essentially auto-synced. |
Work environment
git clone
Instruction bytes giving faulty results
(8 sample instructions)
Expected results
It should be:
This is the output of
objdump -m alpha -b binary -D test.bin
where I replaced symbolic register names with numeric to match capstone output.
Steps to get the wrong result
With
cstool
:The BSR instruction is only disassembled when used with register $26 (ra). There is also an extra
..ng
at the end, which shouldn't be there.JMP and JSR instructions are not disassembled at all.
Thank you.
The text was updated successfully, but these errors were encountered: