Skip to content

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

Closed

Conversation

Zentrik
Copy link
Member

@Zentrik Zentrik commented Feb 9, 2025

I can get Julia building and (seemingly) passing tests with this. As always feel free to rewrite git history however you please.

vtjnash and others added 7 commits February 7, 2025 11:10
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)
de92615 allows specifying the source directory of ittapi. This
change allows configuring the source directory of ittapi here as well.

(cherry picked from commit f8287f6)
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 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.
@giordano
Copy link

giordano commented Feb 9, 2025

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?

@giordano
Copy link

giordano commented Feb 9, 2025

Closing as done, but let me know if I did something wrong again!

@giordano giordano closed this Feb 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants