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

x86: Pass the right nameEnv in resolvePtrSetupValue #1534

Merged
merged 2 commits into from
Dec 7, 2021
Merged

x86: Pass the right nameEnv in resolvePtrSetupValue #1534

merged 2 commits into from
Dec 7, 2021

Conversation

RyanGlScott
Copy link
Contributor

Previously, resolvePtrSetupValue would pass an empty Map of Ident to resolveSetupVal, which prevented SAW from lookup up struct field names properly. The fix is quite straightforward, luckily enough.

Fixes #1533.

Previously, `resolvePtrSetupValue` would pass an empty `Map` of `Ident` to
`resolveSetupVal`, which prevented SAW from lookup up struct field names
properly. The fix is quite straightforward, luckily enough.

Fixes #1533.
Copy link
Contributor

@andreistefanescu andreistefanescu left a comment

Choose a reason for hiding this comment

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

@RyanGlScott nice fix! I'm curious, how did you run into it? I'm fairly certain we haven't used structs with x86 verification.

@RyanGlScott
Copy link
Contributor Author

I'm curious, how did you run into it? I'm fairly certain we haven't used structs with x86 verification.

Funny you should ask: I tried porting over some test cases involving llvm_points_to_bitfield (see #1461) from llvm_verify to llvm_verify_x86 to test my changes to SAWScript.Crucible.LLVM.X86, and this was the first error that I experienced. I say "first" since there were other issues with llvm_points_to_bitfield in x86 mode after fixing this issue, but perhaps this is to be expected, given that we haven't used structs with x86 verification much before. Nevertheless, this seems like such a straightforward fix that we should adopt it regardless.

@RyanGlScott RyanGlScott added the PR: ready to merge Magic flag for pull requests to ask Mergify to merge given an approval and a successful CI run label Dec 7, 2021
@mergify mergify bot merged commit 5745d37 into master Dec 7, 2021
@mergify mergify bot deleted the T1533 branch December 7, 2021 13:06
@RyanGlScott RyanGlScott added subsystem: x86 Issues related to verifying x86 binaries via Macaw subsystem: crucible-llvm Issues related to LLVM bitcode verification with crucible-llvm labels Dec 7, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
PR: ready to merge Magic flag for pull requests to ask Mergify to merge given an approval and a successful CI run subsystem: crucible-llvm Issues related to LLVM bitcode verification with crucible-llvm subsystem: x86 Issues related to verifying x86 binaries via Macaw
Projects
None yet
Development

Successfully merging this pull request may close these issues.

llvm_verify_x86 fails to find struct field name that llvm_verify can find
2 participants