-
-
Notifications
You must be signed in to change notification settings - Fork 9
Fixup https://github.com/JuliaLang/llvm-project/pull/39 #40
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
Fixup https://github.com/JuliaLang/llvm-project/pull/39 #40
Conversation
This restores the functionality of AsmPrinterHandlers to what it was prior to llvm#96785. The attempted hack there of adding a duplicate DebugHandlerBase handling added a lot of hidden state and assumptions, which just segfaulted when we tried to continuing using this API. Instead, this just goes back to the old design, but adds a separate array for the basic EH handles. The duplicate array is identical to the other array of handler, but which doesn't get their begin/endInstruction callbacks called. This still saves the negligible but measurable amount of virtual function calls as was the goal of llvm#96785, while restoring the API to the pre-LLVM-19 status quo. (cherry picked from commit f6b0555)
The C++ standard prohibits this implicit destructor call, leading to incorrect reports from clang-analyzer. This causes projects that use std::option (including llvm) to fail the cplusplus.NewDelete test incorrectly when run through the analyzer. Fixes llvm#119415 (cherry picked from commit 9b8297b)
In claude we trust Fix by not setting working directory as ittapi source dir might not exist. Also, quote paths in case of whitespace
)" This reverts commit 4d27caf.
This restores the functionality of AsmPrinterHandlers to what it was prior to llvm#96785. The attempted hack there of adding a duplicate DebugHandlerBase handling added a lot of hidden state and assumptions, which just segfaulted when we tried to continuing using this API. Instead, this just goes back to the old design, but adds a separate array for the basic EH handles. The duplicate array is identical to the other array of handler, but which doesn't get their begin/endInstruction callbacks called. This still saves the negligible but measurable amount of virtual function calls as was the goal of llvm#96785, while restoring the API to the pre-LLVM-19 status quo.
6e8ff57
to
3cb75ba
Compare
I force-pushed 3cb75ba. Now this PR is messed up, but for the record the diff between previous version and new version is https://github.com/JuliaLang/llvm-project/compare/6e8ff5767e9466d73be85f1eaa760e2c94cdbd86..3cb75bacf7f61380a4ef45fef519c2fb5940dd4a (can also see the link at #40 (comment)) and that looks to me the same as https://github.com/JuliaLang/llvm-project/compare/6e8ff5767e9466d73be85f1eaa760e2c94cdbd86..82ee50754d4797500beaf24da05bf0118c544c70 (your changes), right? |
Closing as done, but let me know if I did something wrong again! |
I can get Julia building and (seemingly) passing tests with this. As always feel free to rewrite git history however you please.