| Issue |
76618
|
| Summary |
Select128 problem
|
| Labels |
backend:SystemZ
|
| Assignees |
uweigand
|
| Reporter |
JonPsson1
|
cat crash2.i
```
short a, c;
long b, d;
__int128 e;
int f;
static unsigned __int128 g(unsigned, unsigned __int128, __int128, unsigned,
unsigned char);
void h() { g(e, c != 0, e, b, a); }
unsigned __int128 g(unsigned i, unsigned __int128 j, __int128 k, unsigned l,
unsigned char m) {
d = i;
f = j;
if (l | m)
for (;;)
;
return k;
}
void main() {}
```
/home/ijonpan/llvm-project/install/bin/clang -O3 -march=arch13 crash2.i -o a.out -w -fno-inline -mllvm -pre-RA-sched=list-ilp -mllvm -verify-misched
*** Bad machine code: Call frame size on entry does not match value computed from predecessor ***
Looks like there is a Select128 inside the call frame setup (below ADJCALLSTACKDOWN), which makes the verifier complain when new blocks are created there.
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs