[Bug ipa/60912] New: [4.10 Regression] wrong code with -O -fno-inline -fipa-pta

zsojka at seznam dot cz gcc-bugzilla@gcc.gnu.org
Mon Apr 21 09:51:00 GMT 2014


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60912

            Bug ID: 60912
           Summary: [4.10 Regression] wrong code with -O -fno-inline
                    -fipa-pta
           Product: gcc
           Version: 4.10.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: ipa
          Assignee: unassigned at gcc dot gnu.org
          Reporter: zsojka at seznam dot cz

Created attachment 32647
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=32647&action=edit
reduced testcase (g++.dg/tree-ssa/20040317-1.C)

Output:
$ g++ -O -fno-inline -fipa-pta testcase.C
$ ./a.out 
Segmentation fault

Relevant disassembly diff 4.9/4.10:
@@ -61,9 +61,8 @@
        mov     QWORD PTR [rax], 0
        mov     rdi, rax
        call    _ZN3BarC1Ev
-       mov     rax, QWORD PTR [rbx]
        mov     rdi, rbx
-       call    [QWORD PTR [rax]]
+       call    [QWORD PTR ds:0]
        mov     eax, 0
        pop     rbx
        .cfi_def_cfa_offset 8

In 4.10, vtable seems to be expected to be constant 0.



More information about the Gcc-bugs mailing list