-
Notifications
You must be signed in to change notification settings - Fork 102
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
Parse call frame instructions #94
Conversation
1 similar comment
|
||
debug_assert!(high_bits == 0); | ||
|
||
if instruction == constants::DW_CFA_nop.0 { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: how about let instruction = DwCfa(instruction);
and then drop the .0
.
Is there a reason you used if
statements instead of match
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: how about let instruction = DwCfa(instruction); and then drop the .0.
Done
Is there a reason you used if statements instead of match?
I wanted to avoid rightward drift since the high bit masking would lead to two matches, each of which is double indentation, so quad indentation. I ended up making the second larger set (when the high bits aren't set) a match.
LGTM |
* Defines a CallFrameInstruction type to represent parsed call frame instructions * Exposes a FallibleIterator to lazily parse instructions * Adds methods to FDEs and CIEs to iterate and parse their instructions
65f11e1
to
a42cd8d
Compare
Thanks! |
instructions
r? @philipc