m m via llvm-dev
2019-Jan-12 21:58 UTC
[llvm-dev] "Didn't provide enough results" assertion
Hi, I am getting this assertion when building my project: `Ops.size() >= NumSrcResults && "Didn't provide enough results"' this is the instruction that causes it: def ASTI: F<0b100001,(outs),(ins i32imm:$i10s),"ASTI $i10s",[(set SP, (i32 (add (i32 SP), (i32 sext12To32Trunc2imm:$i10s))))] > { let isReMaterializable = 1; let mayLoad = 0; let mayStore = 0; let Defs = [SP]; let Uses = [SP]; } I've been staring at it for a while and can't identify what the problem is. It is supposed to add an immediate to the SP and store the result back in SP (i.e. SP = SP + i10s). When I print Ops.size() and NumSrcResults, I get 0 and 2 Thanks. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190112/586138f3/attachment.html>
m m via llvm-dev
2019-Jan-17 17:41 UTC
[llvm-dev] "Didn't provide enough results" assertion
Quick update: If I add an output register, the assertion goes away. def ASTI: F<0b100001,(outs CPURegs:$ra),(ins i32imm:$i10s),"ASTI $i10s",[(set CPURegs:$ra, (i32 (add (i32 SP), (i32 sext12To32Trunc2imm:$i10s))))] > { Why can't this instruction be without output register? ________________________________ From: m m Sent: Saturday, January 12, 2019 1:58 PM To: via llvm-dev Subject: "Didn't provide enough results" assertion Hi, I am getting this assertion when building my project: `Ops.size() >= NumSrcResults && "Didn't provide enough results"' this is the instruction that causes it: def ASTI: F<0b100001,(outs),(ins i32imm:$i10s),"ASTI $i10s",[(set SP, (i32 (add (i32 SP), (i32 sext12To32Trunc2imm:$i10s))))] > { let isReMaterializable = 1; let mayLoad = 0; let mayStore = 0; let Defs = [SP]; let Uses = [SP]; } I've been staring at it for a while and can't identify what the problem is. It is supposed to add an immediate to the SP and store the result back in SP (i.e. SP = SP + i10s). When I print Ops.size() and NumSrcResults, I get 0 and 2 Thanks. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190117/6079d66a/attachment.html>