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