-
Notifications
You must be signed in to change notification settings - Fork 12.4k
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
[LVI][CVP] CVP error deleted the and
instruction.
#68381
Closed
DianQK opened this issue
Oct 6, 2023
· 3 comments
· Fixed by #68190 or llvm/llvm-project-release-prs#728
Closed
[LVI][CVP] CVP error deleted the and
instruction.
#68381
DianQK opened this issue
Oct 6, 2023
· 3 comments
· Fixed by #68190 or llvm/llvm-project-release-prs#728
Comments
DianQK
added a commit
that referenced
this issue
Oct 10, 2023
When converting to ConstantRange, we should treat undef like a full range. Fixes #68381.
While adding the abs test case, I found a new mis-compilation at #68683. So let's do the backport first. /cherry-pick 8185794 |
/branch llvm/llvm-project-release-prs/issue68381 |
/pull-request llvm/llvm-project-release-prs#728 |
tru
pushed a commit
that referenced
this issue
Oct 16, 2023
bors
added a commit
to rust-lang-ci/rust
that referenced
this issue
Oct 27, 2023
Check for occupied niches Implementation of rust-lang/compiler-team#624 Crater run has 62 crates that hit the check, 43 of those are published to crates.io. I see a lot of null function pointers and use of `mem::uninitialized` where the 0x1-filling collides with an enum niche. But that is with full niche checks; checking transmute, plus any place where that we Copy, Move, or Inspect. Such checking is definitely too thorough to be on by default because it is 2x compile time overhead. --- During implementation, this ran into llvm/llvm-project#68381 r? `@ghost`
bors
added a commit
to rust-lang-ci/rust
that referenced
this issue
Oct 28, 2023
Check for occupied niches Implementation of rust-lang/compiler-team#624 Crater run has 62 crates that hit the check, 43 of those are published to crates.io. I see a lot of null function pointers and use of `mem::uninitialized` where the 0x1-filling collides with an enum niche. But that is with full niche checks; checking transmute, plus any place where that we Copy, Move, or Inspect. Such checking is definitely too thorough to be on by default because it is 2x compile time overhead. --- During implementation, this ran into llvm/llvm-project#68381 r? `@ghost`
bors
added a commit
to rust-lang-ci/rust
that referenced
this issue
Oct 28, 2023
Check for occupied niches Implementation of rust-lang/compiler-team#624 Crater run has 62 crates that hit the check, 43 of those are published to crates.io. I see a lot of null function pointers and use of `mem::uninitialized` where the 0x1-filling collides with an enum niche. But that is with full niche checks; checking transmute, plus any place where that we Copy, Move, or Inspect. Such checking is definitely too thorough to be on by default because it is 2x compile time overhead. --- During implementation, this ran into llvm/llvm-project#68381 r? `@ghost`
bors
added a commit
to rust-lang-ci/rust
that referenced
this issue
Oct 29, 2023
Check for occupied niches Implementation of rust-lang/compiler-team#624 Crater run has 62 crates that hit the check, 43 of those are published to crates.io. I see a lot of null function pointers and use of `mem::uninitialized` where the 0x1-filling collides with an enum niche. But that is with full niche checks; checking transmute, plus any place where that we Copy, Move, or Inspect. Such checking is definitely too thorough to be on by default because it is 2x compile time overhead. --- During implementation, this ran into llvm/llvm-project#68381 r? `@ghost`
bors
added a commit
to rust-lang-ci/rust
that referenced
this issue
Oct 29, 2023
Check for occupied niches Implementation of rust-lang/compiler-team#624 Crater run has 62 crates that hit the check, 43 of those are published to crates.io. I see a lot of null function pointers and use of `mem::uninitialized` where the 0x1-filling collides with an enum niche. But that is with full niche checks; checking transmute, plus any place where that we Copy, Move, or Inspect. Such checking is definitely too thorough to be on by default because it is 2x compile time overhead. --- During implementation, this ran into llvm/llvm-project#68381 r? `@ghost`
bors
added a commit
to rust-lang-ci/rust
that referenced
this issue
Nov 10, 2023
Check for occupied niches Implementation of rust-lang/compiler-team#624 Crater run has 62 crates that hit the check, 43 of those are published to crates.io. I see a lot of null function pointers and use of `mem::uninitialized` where the 0x1-filling collides with an enum niche. But that is with full niche checks; checking transmute, plus any place where that we Copy, Move, or Inspect. Such checking is definitely too thorough to be on by default because it is 2x compile time overhead. --- During implementation, this ran into llvm/llvm-project#68381 r? `@ghost`
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I tried this IR:
%z = and i32 %y, 255
should not be deleted by CVP.alive2: https://alive2.llvm.org/ce/z/A9T1PH
godbolt: https://llvm.godbolt.org/z/YEqPjTv83
This issue started with LLVM 15.
This IR is reduced from https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/Implementing.20niche.20checks.
Extended to
abs
: https://alive2.llvm.org/ce/z/k_8paG.The text was updated successfully, but these errors were encountered: