-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
Bump Julia to LLVM 16 #51720
Merged
Merged
Bump Julia to LLVM 16 #51720
Changes from 29 commits
Commits
Show all changes
30 commits
Select commit
Hold shift + click to select a range
946b6a1
Adopt to LLVM 16
vchuravy a21c7ed
Bump Julia to LLVM 16
vchuravy 8d92d63
Merge branch 'master' into vc/llvm16_bump
gbaraldi 66ee579
Update to 16.0.6+1 and add removeJuliaAddrSpaces pass
gbaraldi 9ba6de9
Fixup new LLVM 16 issues
gbaraldi dd44675
Merge branch 'master' into vc/llvm16_bump
gbaraldi bc918a5
Fix memory attributes with the new syntax
gbaraldi 633e656
Bump llvm build to 16.0.6+2
gbaraldi 63f4afb
Try to fix asan and gcanalyze
gbaraldi 2704710
Update some tests that don't expect opaque pointers
gbaraldi 8b7bc43
Merge branch 'master' into vc/llvm16_bump
gbaraldi 3b5c3ae
Bump LLVM to 16.0.6+3
gbaraldi 89b162c
Actually bump the jlls
gbaraldi d3dc475
add optional
vtjnash 7ffc66b
fix win32 build?
vtjnash 12a3ad9
Merge remote-tracking branch 'origin/master' into vc/llvm16_bump
vchuravy 22079eb
Fixup checksums
gbaraldi 30aa38f
Correct opaque pointer detection
gbaraldi a38c099
Try to make ASAN happier
gbaraldi 9cb34c6
Make llvmpasses tests more happy
gbaraldi 471dc6c
Why do I even bother also thanks tim
gbaraldi 91d2069
Fix typo
gbaraldi e9bf920
Don't remove bfloat16
gbaraldi 4048f7e
Fix Float16 soft-float ABI.
maleadt bf929df
Merge branch 'master' into vc/llvm16_bump
gbaraldi 4e5b98a
Merge branch 'master' into vc/llvm16_bump
gbaraldi b61062b
Remove unused code and try to make analyzegc happier
gbaraldi 3687772
More static analyzer fixes
gbaraldi 08014aa
Use reference instead of copying by value
gbaraldi 1d169c5
Use function ref and update version header
gbaraldi File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
## jll artifact | ||
# Clang (paired with LLVM, only here as a JLL download) | ||
CLANG_JLL_NAME := Clang | ||
CLANG_JLL_VER := 15.0.7+10 | ||
CLANG_JLL_VER := 16.0.6+3 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,3 @@ | ||
## jll artifact | ||
LLD_JLL_NAME := LLD | ||
LLD_JLL_VER := 15.0.7+10 | ||
LLD_JLL_VER := 16.0.6+3 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
## jll artifact | ||
# LLVM_tools (downloads LLVM_jll to get things like `lit` and `opt`) | ||
LLVM_TOOLS_JLL_NAME := LLVM | ||
LLVM_TOOLS_JLL_VER := 15.0.7+10 | ||
LLVM_TOOLS_ASSERT_JLL_VER := 15.0.7+10 | ||
LLVM_TOOLS_JLL_VER := 16.0.6+3 | ||
LLVM_TOOLS_ASSERT_JLL_VER := 16.0.6+3 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -911,7 +911,7 @@ static bool is_tupletype_homogeneous(jl_svec_t *t, bool allow_va = false) | |
} | ||
|
||
static bool for_each_uniontype_small( | ||
std::function<void(unsigned, jl_datatype_t*)> f, | ||
const std::function<void(unsigned, jl_datatype_t*)> &f, | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Could use an llvm::function_ref here. |
||
jl_value_t *ty, | ||
unsigned &counter) | ||
{ | ||
|
@@ -4046,12 +4046,12 @@ static jl_cgval_t emit_memoryref(jl_codectx_t &ctx, const jl_cgval_t &ref, jl_cg | |
Value *mlen = emit_genericmemorylen(ctx, mem, ref.typ); | ||
Value *inbound = ctx.builder.CreateICmpULT(newdata, mlen); | ||
ctx.builder.CreateCondBr(inbound, endBB, failBB); | ||
ctx.f->getBasicBlockList().push_back(failBB); | ||
failBB->insertInto(ctx.f); | ||
ctx.builder.SetInsertPoint(failBB); | ||
ctx.builder.CreateCall(prepare_call(jlboundserror_func), | ||
{ mark_callee_rooted(ctx, boxed(ctx, ref)), i }); | ||
ctx.builder.CreateUnreachable(); | ||
ctx.f->getBasicBlockList().push_back(endBB); | ||
endBB->insertInto(ctx.f); | ||
ctx.builder.SetInsertPoint(endBB); | ||
} | ||
} | ||
|
@@ -4119,12 +4119,12 @@ static jl_cgval_t emit_memoryref(jl_codectx_t &ctx, const jl_cgval_t &ref, jl_cg | |
Value *inbound = ctx.builder.CreateICmpULT(idx0, mlen); | ||
#endif | ||
ctx.builder.CreateCondBr(inbound, endBB, failBB); | ||
ctx.f->getBasicBlockList().push_back(failBB); | ||
failBB->insertInto(ctx.f); | ||
ctx.builder.SetInsertPoint(failBB); | ||
ctx.builder.CreateCall(prepare_call(jlboundserror_func), | ||
{ mark_callee_rooted(ctx, boxed(ctx, ref)), i }); | ||
ctx.builder.CreateUnreachable(); | ||
ctx.f->getBasicBlockList().push_back(endBB); | ||
endBB->insertInto(ctx.f); | ||
ctx.builder.SetInsertPoint(endBB); | ||
} | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
Can we make this dependent on the target triple? Just to preserve the fiction that codegen is cross-compile capable.