-
Notifications
You must be signed in to change notification settings - Fork 365
Implement -d inlines support for Mach-O. #444
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
base: main
Are you sure you want to change the base?
Conversation
EricRahm
left a comment
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.
Overall lgtm, nice and straightforward. Thanks for including the test as well. Only small request is to add some details to the commit message and include the version of clang you used to generate the binary.
Sounds good. FWIW I tried to make this into a yaml test instead of using a prebuilt binary but I think I've found a obj2yaml/yaml2obj bug writing out the dsym. Since I wasn't sure how long it'll take to fix, and how long before the test could rely on updated yaml2obj, I opted for using a binary instead. However if you want, I can look at the yaml2obj bug more and then update the test with a comment to point to the llvm bug report (if needed) |
Having an upstream bug filed and referenced would be great. |
43609f3 to
03ba814
Compare
I was able to use generate a minimal YAML test and work around the upstream bug. llvm/llvm-project#166993 for reference. |
EricRahm
left a comment
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.
That test file is wild :) Given the complexity of the setup I think we're fine as-is, we can always come back and attempt to reduce it. Just a small request to more explicitly document the steps to generate it.
tests/macho/inlines.test
Outdated
| # Test that -d inlines works for Mach-O binaries | ||
| # | ||
| # The YAML below was generated from binaries compiled from | ||
| # tests/testdata/macho/test_inlines.c |
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.
For completeness can we include the rough set of commands, I'm guessing vaguely:
# on macOS
# clang <some flags> tests/testdata/macho/test_inlines.c
# obj2yaml <some flags>
# manually change thing because bug xyz
03ba814 to
015d015
Compare
No description provided.