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

LLVM assertion in crushtool crate #56482

Closed
pietroalbini opened this issue Dec 3, 2018 · 2 comments
Closed

LLVM assertion in crushtool crate #56482

pietroalbini opened this issue Dec 3, 2018 · 2 comments
Labels
A-codegen Area: Code generation A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Comments

@pietroalbini
Copy link
Member

The crushtool crate fails to compile when LLVM assertions are enabled:

rustc: /checkout/src/llvm/lib/IR/Type.cpp:241: static llvm::IntegerType *llvm::IntegerType::get(llvm::LLVMContext &, unsigned int): Assertion `NumBits >= MIN_INT_BITS && "bitwidth too small"' failed.

This is not a regression, it's confirmed to also fail on 1.28.0 (alt builds are not available past that). You might want to remove the crate's lockfile if you test it locally.

@alexcrichton alexcrichton added A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. A-codegen Area: Code generation T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Dec 3, 2018
@nikic
Copy link
Contributor

nikic commented Dec 4, 2018

Assertion occurs via SelectionDAGBuilder::lowerRangeToAssertZExt(), likely fixed by llvm-mirror/llvm@3000523.

@nikic
Copy link
Contributor

nikic commented Dec 4, 2018

Verified that this is indeed fixed on master. The last LLVM upgrade pulled in the fix.

@nikic nikic closed this as completed Dec 4, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-codegen Area: Code generation A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

3 participants