-
Notifications
You must be signed in to change notification settings - Fork 13.2k
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 LLVM to fix miscompiles with -Copt-level=z on Windows #45824
Conversation
Needs to wait for rust-lang/llvm#95 |
r=me with the new merge commit, also would it be possible to add a test for this? |
If someone could test that this crashes on i686 windows msvc with -Copt-level=z #![feature(test)]
extern crate test;
fn foo(x: i32, y: i32) -> i64 {
(x + y) as i64
}
#[inline(never)]
fn bar() {
let f = Box::new(0);
let y: fn(i32, i32) -> i64 = test::black_box(foo);
test::black_box(y(1, 2));
}
fn main() {
bar();
} |
The test from the comment above does crash on 11-03 nightly. Compiling it complains about |
That being said, I feel that a codegen test would be way more appropriate if one is possible. |
Are there any codegen tests that check for assembler output? |
Doesn't seem like there is, and I currently don't have time to adjust the test runner to support it. :-/ So this is free for someone to pick up. |
Er sorry @dotdash I didn't mean to imply a test was required, just if we already had one I figured it'd be good to include! I'm totally fine merging this regardless (as it's upstream in LLVM anyway). Do you want to check in the test you gisted above and r=me? |
@bors r=alexcrichton |
📌 Commit 8b6caa2 has been approved by |
@bors r- CI failed, “error: -O and -C opt-level both provided” on the new test case.
|
Sadly, using |
☔ The latest upstream changes (presumably #45806) made this pull request unmergeable. Please resolve the merge conflicts. |
@bors r=alexcrichton |
📌 Commit 1a8c9f8 has been approved by |
Update LLVM to fix miscompiles with -Copt-level=z on Windows Fixes #45034
☀️ Test successful - status-appveyor, status-travis |
Fixes #45034