Issue 147162
Summary [ARM] Expensive checks failures
Labels new issue
Assignees
Reporter mstorsjo
    Building libvpx for `armv7-linux-gnueabihf` triggers failures with expensive checks (`-DLLVM_ENABLE_EXPENSIVE_CHECKS=ON`). These issues have been present since 2dcf0512599280ba68a5028f24ea96dfdb37b7b7 (since LLVM 18.1.0)

The issue can be reproduced with the following reduced testcase:
```c
char filter_mask_p3, filter_mask_p2;
int abs();
void filter4();
void vpx_lpf_vertical_4_c_s() {
  char mask;
  mask |= abs(filter_mask_p3 - filter_mask_p2);
  filter4(mask, 2, 1, vpx_lpf_vertical_4_c_s, 1);
}
```

```console
$ clang -target armv7-linux-gnueabihf -c -O2 repro.c
*** Bad machine code: Call frame size on entry does not match value computed fro
m predecessor ***
- function:    vpx_lpf_vertical_4_c_s
- basic block: %bb.1 entry (0x5b6a2651c518)
Call frame size on entry 0 does not match value computed from predecessor 4

*** Bad machine code: Call frame size on entry does not match value computed from predecessor ***
- function:    vpx_lpf_vertical_4_c_s
- basic block: %bb.2 entry (0x5b6a2651c678)
Call frame size on entry 0 does not match value computed from predecessor 4
fatal error: error in backend: Found 2 machine code errors.
```


CC @jayfoad @davemgreen 
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to