https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85574

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P2
   Target Milestone|9.0                         |8.3
            Summary|[9 Regression] LTO          |[8/9 Regression] LTO
                   |bootstapped binaries differ |bootstapped binaries differ

--- Comment #13 from Richard Biener <rguenth at gcc dot gnu.org> ---
-fno-reorder-blocks-and-partition does not help.

@@ -115230,59624 +115230,59628 @@
   5e1fa6:      44 88 74 24 18          mov    %r14b,0x18(%rsp)
   5e1fab:      e9 77 f7 ff ff          jmpq   5e1727
<_Z14composite_typeP9tree_nodeS0_.part.56+0x4c7>
   5e1fb0:      80 7c 24 27 00          cmpb   $0x0,0x27(%rsp)
-  5e1fb5:      75 17                   jne    5e1fce
<_Z14composite_typeP9tree_nodeS0_.part.56+0xd6e>
-  5e1fb7:      31 c0                   xor    %eax,%eax
-  5e1fb9:      0f b6 4c 24 27          movzbl 0x27(%rsp),%ecx
-  5e1fbe:      45 31 ff                xor    %r15d,%r15d
-  5e1fc1:      88 44 24 27             mov    %al,0x27(%rsp)
-  5e1fc5:      88 4c 24 10             mov    %cl,0x10(%rsp)
-  5e1fc9:      e9 59 f7 ff ff          jmpq   5e1727
<_Z14composite_typeP9tree_nodeS0_.part.56+0x4c7>
-  5e1fce:      48 89 df                mov    %rbx,%rdi
-  5e1fd1:      4c 89 5c 24 10          mov    %r11,0x10(%rsp)
-  5e1fd6:      e8 f5 8c fa ff          callq  58acd0
<_Z12c_vla_type_pPK9tree_node>
-  5e1fdb:      4c 8b 5c 24 10          mov    0x10(%rsp),%r11
-  5e1fe0:      88 44 24 27             mov    %al,0x27(%rsp)
-  5e1fe4:      b8 01 00 00 00          mov    $0x1,%eax
-  5e1fe9:      eb ce                   jmp    5e1fb9
<_Z14composite_typeP9tree_nodeS0_.part.56+0xd59>
-  5e1feb:      45 31 c9                xor    %r9d,%r9d
...
-  5e26b6:      66 2e 0f 1f 84 00 00    nopw   %cs:0x0(%rax,%rax,1)
-  5e26bd:      00 00 00 
-
-00000000005e26c0 <_ZL19common_pointer_typeP9tree_nodeS0_>:
-  5e26c0:      48 39 f7                cmp    %rsi,%rdi
-  5e26c3:      0f 84 07 02 00 00       je     5e28d0
<_ZL19common_pointer_typeP9tree_nodeS0_+0x210>
-  5e26c9:      48 8b 05 10 18 91 01    mov    0x1911810(%rip),%rax        #
1ef3ee0 <global_trees>
-  5e26d0:      48 39 f8                cmp    %rdi,%rax
...
-
-00000000005e2a30 <_Z14composite_typeP9tree_nodeS0_>:
-  5e2a30:      48 39 f7                cmp    %rsi,%rdi
-  5e2a33:      74 1b                   je     5e2a50
<_Z14composite_typeP9tree_nodeS0_+0x20>
-  5e2a35:      48 8b 05 a4 14 91 01    mov    0x19114a4(%rip),%rax        #
1ef3ee0 <global_trees>
-  5e2a3c:      48 39 f8                cmp    %rdi,%rax
-  5e2a3f:      74 1f                   je     5e2a60
<_Z14composite_typeP9tree_nodeS0_+0x30>
-  5e2a41:      48 39 f0                cmp    %rsi,%rax
-  5e2a44:      74 0a                   je     5e2a50
<_Z14composite_typeP9tree_nodeS0_+0x20>
-  5e2a46:      e9 15 e8 ff ff          jmpq   5e1260
<_Z14composite_typeP9tree_nodeS0_.part.56>
-  5e2a4b:      0f 1f 44 00 00          nopl   0x0(%rax,%rax,1)
-  5e2a50:      48 89 f8                mov    %rdi,%rax
+  5e1fb5:      75 0d                   jne    5e1fc4
<_Z14composite_typeP9tree_nodeS0_.part.56+0xd64>
+  5e1fb7:      c6 44 24 10 00          movb   $0x0,0x10(%rsp)
+  5e1fbc:      45 31 ff                xor    %r15d,%r15d
+  5e1fbf:      e9 63 f7 ff ff          jmpq   5e1727
<_Z14composite_typeP9tree_nodeS0_.part.56+0x4c7>
+  5e1fc4:      48 89 df                mov    %rbx,%rdi
+  5e1fc7:      4c 89 5c 24 28          mov    %r11,0x28(%rsp)
+  5e1fcc:      e8 ff 8c fa ff          callq  58acd0
<_Z12c_vla_type_pPK9tree_node>
+  5e1fd1:      4c 8b 5c 24 28          mov    0x28(%rsp),%r11
+  5e1fd6:      88 44 24 10             mov    %al,0x10(%rsp)

Btw, I see the same issue on the GCC 8 branch head.  Have yet to find where
it actually doesn't miscompare so maybe it isn't a regression after all.

Reply via email to