Skip to content
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

Update the minimum external LLVM to 7 #66973

Merged
merged 1 commit into from Dec 3, 2019
Merged

Update the minimum external LLVM to 7 #66973

merged 1 commit into from Dec 3, 2019

Conversation

@cuviper
Copy link
Member

cuviper commented Dec 2, 2019

LLVM 7 is over a year old, which should be plenty for compatibility. The
last LLVM 6 holdout was llvm-emscripten, which went away in #65501.

I've also included a fix for LLVM 8 lacking MemorySanitizerOptions,
which was broken by #66522.

LLVM 7 is over a year old, which should be plenty for compatibility. The
last LLVM 6 holdout was llvm-emscripten, which went away in #65501.

I've also included a fix for LLVM 8 lacking `MemorySanitizerOptions`,
which was broken by #66522.
@rust-highfive

This comment has been minimized.

Copy link
Collaborator

rust-highfive commented Dec 2, 2019

r? @kennytm

(rust_highfive has picked a reviewer for you, use r? to override)

const bool CompileKernel = false;

return wrap(createMemorySanitizerLegacyPassPass(
MemorySanitizerOptions{TrackOrigins, Recover, CompileKernel}));
#elif LLVM_VERSION_GE(8, 0)
return wrap(createMemorySanitizerLegacyPassPass(TrackOrigins, Recover));

This comment has been minimized.

Copy link
@cuviper

cuviper Dec 2, 2019

Author Member

This is the LLVM 8 fix.

cc @rust-lang/infra -- do we have any budget for more CI builders? Currently we only test the minimum external LLVM and rust's own src/llvm-project fork, but there are more possible LLVM versions between...

This comment has been minimized.

Copy link
@Mark-Simulacrum

Mark-Simulacrum Dec 2, 2019

Member

I suspect no, or if we did, this would not be a good use IMO.

This comment has been minimized.

Copy link
@cuviper

cuviper Dec 2, 2019

Author Member

Even just ./x.py check on those middle versions would be an improvement.

This comment has been minimized.

Copy link
@Mark-Simulacrum

Mark-Simulacrum Dec 2, 2019

Member

Currently x.py check doesn't do anything at all LLVM-wise -- we don't attempt to compile it, intentionally, so that even people with smaller machines can at least sort of contribute to the compiler.

This comment has been minimized.

Copy link
@cuviper

cuviper Dec 2, 2019

Author Member

Ah, darn. We could let that build script work in full when using external LLVM, which shouldn't be expensive, but I won't press further on this point. Thanks anyway.

@kennytm

This comment has been minimized.

Copy link
Member

kennytm commented Dec 2, 2019

@rust-highfive rust-highfive assigned alexcrichton and unassigned kennytm Dec 2, 2019
@alexcrichton

This comment has been minimized.

Copy link
Member

alexcrichton commented Dec 2, 2019

@bors: r+

Thanks for this @cuviper!

I agree with @Mark-Simulacrum that we unfortunately probably don't have budget right now to test the build against multiple LLVM versions.

@bors

This comment has been minimized.

Copy link
Contributor

bors commented Dec 2, 2019

📌 Commit 2304c25 has been approved by alexcrichton

@rkruppe rkruppe mentioned this pull request Dec 3, 2019
0 of 2 tasks complete
Centril added a commit to Centril/rust that referenced this pull request Dec 3, 2019
Update the minimum external LLVM to 7

LLVM 7 is over a year old, which should be plenty for compatibility. The
last LLVM 6 holdout was llvm-emscripten, which went away in rust-lang#65501.

I've also included a fix for LLVM 8 lacking `MemorySanitizerOptions`,
which was broken by rust-lang#66522.
bors added a commit that referenced this pull request Dec 3, 2019
Rollup of 7 pull requests

Successful merges:

 - #66750 (Update the `wasi` crate for `wasm32-wasi`)
 - #66903 (parse_enum_item -> parse_enum_variant)
 - #66951 (miri: add throw_machine_stop macro)
 - #66957 (Change Linker for x86_64-fortanix-unknown-sgx target to rust-lld)
 - #66960 ([const-prop] Fix ICE calculating enum discriminant)
 - #66973 (Update the minimum external LLVM to 7)
 - #66979 (Add long error for E0631 and update ui tests.)

Failed merges:

r? @ghost
Centril added a commit to Centril/rust that referenced this pull request Dec 3, 2019
Update the minimum external LLVM to 7

LLVM 7 is over a year old, which should be plenty for compatibility. The
last LLVM 6 holdout was llvm-emscripten, which went away in rust-lang#65501.

I've also included a fix for LLVM 8 lacking `MemorySanitizerOptions`,
which was broken by rust-lang#66522.
bors added a commit that referenced this pull request Dec 3, 2019
Rollup of 7 pull requests

Successful merges:

 - #66750 (Update the `wasi` crate for `wasm32-wasi`)
 - #66878 (Move Sessions into (new) librustc_session)
 - #66903 (parse_enum_item -> parse_enum_variant)
 - #66951 (miri: add throw_machine_stop macro)
 - #66957 (Change Linker for x86_64-fortanix-unknown-sgx target to rust-lld)
 - #66960 ([const-prop] Fix ICE calculating enum discriminant)
 - #66973 (Update the minimum external LLVM to 7)

Failed merges:

r? @ghost
@bors bors merged commit 2304c25 into rust-lang:master Dec 3, 2019
4 checks passed
4 checks passed
pr #20191202.54 succeeded
Details
pr (Linux mingw-check) Linux mingw-check succeeded
Details
pr (Linux x86_64-gnu-llvm-7) Linux x86_64-gnu-llvm-7 succeeded
Details
pr (Linux x86_64-gnu-tools) Linux x86_64-gnu-tools succeeded
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
6 participants
You can’t perform that action at this time.