https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104869
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |liuhongt at gcc dot gnu.org,
| |rsandifo at gcc dot gnu.org
Summary|[12 Regression] |[12 Regression]
|Miscompilation of |Miscompilation of
|qt5-qtdeclarative |qt5-qtdeclarative since
| |r12-6342-ge7a7dbb5ca5dd696
--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Bisected to r12-6342-ge7a7dbb5ca5dd69689f1a462ba7620180acfe8b0
Assembly difference is:
--- qv4codegen.s.r12-6341 2022-03-10 20:27:09.392500655 +0100
+++ qv4codegen.s.r12-6342 2022-03-10 20:23:00.256971680 +0100
@@ -52895,9 +52895,11 @@ _ZN3QV48Compiler7Codegen5visitEPN6QQmlJS
ld 2,24(1)
mr 9,3
mr 3,31
- cmpdi 4,9,0
- beq 4,.L7388
+ cmpdi 0,9,0
+ beq 0,.L7388
+ li 9,0
mr 31,4
+ cmpdi 4,9,0
.L7389:
ld 3,32(1)
lwz 9,0(3)
@@ -53428,9 +53430,11 @@ _ZN3QV48Compiler7Codegen5visitEPN6QQmlJS
ld 2,24(1)
mr 9,3
mr 3,31
- cmpdi 4,9,0
- beq 4,.L7477
+ cmpdi 0,9,0
+ beq 0,.L7477
+ li 9,0
mr 31,4
+ cmpdi 4,9,0
.L7478:
ld 3,32(1)
lwz 9,0(3)
That said, I suspect that the r12-6342 change just uncovered a latent fwprop or
rtl-ssa bug, because the commit didn't do anything with propagation across
clobbers.