-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Assertion llvm::isUIntN(BitWidth, val) && "Value is not an N-bit unsigned value"
when using @llvm.usub.with.overflow
on Hexagon
#127296
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
Comments
cc @androm3da |
@llvm/issue-subscribers-backend-hexagon Author: Alex Rønne Petersen (alexrp)
```llvm
target datalayout = "e-m:e-p:32:32:32-a:0-n16:32-i64:64:64-i32:32:32-i16:16:16-i1:8:8-f32:32:32-f64:64:64-v32:32:32-v64:64:64-v512:512:512-v1024:1024:1024-v2048:2048:2048"
target triple = "hexagon-unknown-linux4.19.0-musl"
define fastcc void @os.linux.tls.initStatic() { 2: ; preds = %0 ; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none) attributes #0 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
❯ llc reduced.ll -march hexagon -O0
#0 0x0000771d51b80ed2 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/alexrp/Source/llvm-project/llvm/lib/Support/Unix/Signals.inc:802:3
|
FYI @iajbar and @yandalur I tried reverting #117558 on top of So I am just guessing that maybe this code in
|
Change DAG.getConstant to DAG.getAllOnesConstant and drop the The -1 is being signed extended to 64 bits for uint64_t operand to getConstant, but the type is only 32 bits. Using getSignedConstant would also be a fix. |
After llvm#117558 landed, this code would assert "Value is not an N-bit unsigned value" in getConstant(), from a test case in zig. Co-authored-by: Craig Topper <[email protected]> Fixes llvm#127296
After llvm#117558 landed, this code would assert "Value is not an N-bit unsigned value" in getConstant(), from a test case in zig. Co-authored-by: Craig Topper <[email protected]> Fixes llvm#127296
/cherry-pick 788cb72 |
/pull-request #127527 |
After llvm#117558 landed, this code would assert "Value is not an N-bit unsigned value" in getConstant(), from a test case in zig. Co-authored-by: Craig Topper <[email protected]> Fixes llvm#127296 (cherry picked from commit 788cb72)
The text was updated successfully, but these errors were encountered: