-
Notifications
You must be signed in to change notification settings - Fork 274
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
RISCV PLT call causes subsequent instructions to be lost. #1606
Comments
Playing with
Specifically, we have |
Looking at the files I attached
When I investigated in June/July I noticed that I was able to resolve this issue by forking the LLVM respository and setting |
@matt-j-griffin I'm not aware of it, but it may be useful to check with them. I'd be curious if there was a way to tell BAP's disassembler via the Knowledge Base about this, without having to fork LLVM. |
I've been using BAP to analyze cURL in RISC-V (libcurl.4.4.0).
Calling
llvm-objdump
on the binary results in this dump.Generating BIL for the same binary using
bap libcurl.4.4.0 -dbil.adt
produces this file.In the BIL output, after the instruction
jal
appears in a subroutine all the subsequent instructions are lost. In these cases,jal
is used to call PLT stubs in the binary.An example can be found in the
curl_easy_getinfo
subroutine given below:The BIL for this subroutine is as follows:
Instructions at
1be44
,1be46
and1be48
do not appear in the BIL output.Is there a workaround?
The text was updated successfully, but these errors were encountered: