[llvm] [X86][APX] Remove redundant TEST*ri instructions (PR #155586)
Martin Storsjö via llvm-commits
llvm-commits at lists.llvm.org
Thu Aug 28 23:55:38 PDT 2025
mstorsjo wrote:
I also ran into this issue. The miscompilations can be reproduced with https://martin.st/temp/apv_entropy-preproc.c, compiled with `clang -target x86_64-linux-gnu apv_entropy-preproc.c -c -o out.o -O2`. The diff in output looks like this:
```diff
--- good.s 2025-08-29 09:34:24.970634708 +0300
+++ bad.s 2025-08-29 09:34:16.822610156 +0300
@@ -1228,7 +1228,6 @@
jmp .LBB1_19
.LBB1_34: # %if.else157
movl %r11d, %r9d
- testb $1, %cl
jne .LBB1_69
jmp .LBB1_55
.LBB1_35: # %if.end104
```
It's possible to reproduce the failures at runtime, by cloning http://github.com/ffmpeg/ffmpeg, configuring it with `./configure --cc=clang` and building `make -j$(nproc) fate-apv-entropy`, on x86_64 linux. The object file impacted by the miscompilation is `libavcodec/apv_entropy.o`.
https://github.com/llvm/llvm-project/pull/155586
More information about the llvm-commits
mailing list