This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug lto/49796] New: [4.7 Regression] 483.xalancbmk/447.dealII in SPEC CPU 2006 failed to build


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

           Summary: [4.7 Regression] 483.xalancbmk/447.dealII in SPEC CPU
                    2006 failed to build
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: lto
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: hjl.tools@gmail.com


On Linux/x86-64, revision 176460 gave

g++  -O3 -funroll-loops -ffast-math -fwhole-program -flto=jobserver
-fuse-linker-plugin  -DSPEC_CPU_LP64 ....
...
lto1: error: edge points to wrong declaration:
 <function_decl 0x2b8492a43500
_ZN10xalanc_1_814XalanDOMStringC2EPKtj.constprop.15198
    type <method_type 0x2b8492a42540
        type <void_type 0x2b84920f6bd0 void VOID
            align 8 symtab 0 alias set -1 canonical type 0x2b84920f6bd0
            pointer_to_this <pointer_type 0x2b84920f6c78>>
        QI
        size <integer_cst 0x2b84920f9060 constant 8>
        unit size <integer_cst 0x2b84920f9080 constant 1>
        align 8 symtab 0 alias set -1 canonical type 0x2b8492a42540 method
basetype <record_type 0x2b8492213d20 XalanDOMString>
        arg-types <tree_list 0x2b8492a442a8 value <pointer_type 0x2b8492228000>
            chain <tree_list 0x2b8492a442d0 value <pointer_type 0x2b849222cbd0>
                chain <tree_list 0x2b84920ea618 value <void_type 0x2b84920f6bd0
void>>>>>
    public external QI file XalanDOMString.cpp line 68 col 1 align 16 context
<record_type 0x2b8492213d20 XalanDOMString>
    arguments <parm_decl 0x2b849282caa0 this
        type <pointer_type 0x2b84922280a8 type <record_type 0x2b8492213d20
XalanDOMString>
            readonly unsigned DI
            size <integer_cst 0x2b84920e5ec0 constant 64>
            unit size <integer_cst 0x2b84920e5ee0 constant 8>
            align 64 symtab 0 alias set -1 canonical type 0x2b8492213540
reference_to_this <reference_type 0x2b84938d2150>>
        readonly unsigned DI file XalanDOMString.cpp line 70 col 25 size
<integer_cst 0x2b84920e5ec0 64> unit size <integer_cst 0x2b84920e5ee0 8>
        align 64 context <function_decl 0x2b849282bb00 __base_ctor > arg-type
<pointer_type 0x2b84922280a8>
        chain <parm_decl 0x2b849282cb28 theString type <pointer_type
0x2b849222cbd0>
            used unsigned DI file XalanDOMString.cpp line 69 col 25 size
<integer_cst 0x2b84920e5ec0 64> unit size <integer_cst 0x2b84920e5ee0 8>
            align 64 context <function_decl 0x2b849282bb00 __base_ctor >
arg-type <pointer_type 0x2b849222cbd0> chain <parm_decl 0x2b849282cbb0
theCount>>>
    result <result_decl 0x2b84927fda80 D.5552 type <void_type 0x2b84920f6bd0
void>
        ignored VOID file XalanDOMString.cpp line 80 col 1
        align 8 context <function_decl 0x2b849282bb00 __base_ctor >>>
 Instead of: <function_decl 0x2b8492e2fb00 __comp_ctor 
    type <method_type 0x2b8492830000
        type <void_type 0x2b84920f6bd0 void VOID
            align 8 symtab 0 alias set -1 canonical type 0x2b84920f6bd0
            pointer_to_this <pointer_type 0x2b84920f6c78>>
        QI
        size <integer_cst 0x2b84920f9060 constant 8>
        unit size <integer_cst 0x2b84920f9080 constant 1>
        align 8 symtab 0 alias set -1 canonical type 0x2b8492830000 method
basetype <record_type 0x2b8492213d20 XalanDOMString>
        arg-types <tree_list 0x2b849282e208 value <pointer_type 0x2b8492228000>
            chain <tree_list 0x2b849282e230 value <pointer_type 0x2b849222cbd0>
                chain <tree_list 0x2b849282e258 value <integer_type
0x2b8492213c78 size_type>
                    chain <tree_list 0x2b84920ea618 value <void_type
0x2b84920f6bd0 void>>>>>
        pointer_to_this <pointer_type 0x2b8493574bd0>>
    addressable used public external QI file XalanDOMString.cpp line 68 col 1
align 16 context <record_type 0x2b8492213d20 XalanDOMString>
    arguments <parm_decl 0x2b8492e33088 this
        type <pointer_type 0x2b84922280a8 type <record_type 0x2b8492213d20
XalanDOMString>
            readonly unsigned DI
            size <integer_cst 0x2b84920e5ec0 constant 64>
            unit size <integer_cst 0x2b84920e5ee0 constant 8>
            align 64 symtab 0 alias set -1 canonical type 0x2b8492213540
reference_to_this <reference_type 0x2b84938d2150>>
        readonly used unsigned DI file XalanDOMString.cpp line 70 col 25 size
<integer_cst 0x2b84920e5ec0 64> unit size <integer_cst 0x2b84920e5ee0 8>
        align 64 context <function_decl 0x2b8492e2fb00 __comp_ctor > arg-type
<pointer_type 0x2b84922280a8>
        chain <parm_decl 0x2b8492e33110 theString type <pointer_type
0x2b849222cbd0>
            used unsigned DI file XalanDOMString.cpp line 69 col 25 size
<integer_cst 0x2b84920e5ec0 64> unit size <integer_cst 0x2b84920e5ee0 8>
            align 64 context <function_decl 0x2b8492e2fb00 __comp_ctor >
arg-type <pointer_type 0x2b849222cbd0> chain <parm_decl 0x2b8492e33198
theCount>>>
    result <result_decl 0x2b8492e30380 D.16270 type <void_type 0x2b84920f6bd0
void>
        ignored VOID file XalanDOMString.cpp line 80 col 1
        align 8 context <function_decl 0x2b8492e2fb00 __comp_ctor >>>
problem/1733 @0x2b84923a4a20 (asm:
_ZNK10xalanc_1_814XSLTEngineImpl7problemERKNS_14XalanDOMStringENS_15ProblemListener15eClassificationERKN11xercesc_2_57LocatorEPKNS_9XalanNodeE.13971)
availability:local analyzed body local prevailing_def_ironly finalized
  called by: error/1732 (1.00 per call) (can throw external) warn/254 (0.78 per
call) (can throw external) 
  calls: __cxa_free_exception/2559 __comp_dtor /2539 __comp_dtor /2539
__cxa_throw/2560 (can throw external) __comp_dtor /2539 __comp_dtor /2539
__comp_ctor /1735 _ZN10xalanc_1_814XalanDOMStringC2EPKtj.constprop.15198/778
_ZN10xalanc_1_814XalanDOMStringC2EPKcj.constprop.15237/2562
__cxa_allocate_exception/2563 
  References:  var:theDummy (addr)
var:_ZTIN10xalanc_1_822XSLTProcessorExceptionE (addr) fn:__comp_dtor /257
(addr)
  Refering this function: 
  has 4 outgoing edges for indirect calls.
lto1: internal compiler error: verify_cgraph_node failed
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
make[4]: *** [/tmp/ccQtX8la.ltrans6.ltrans.o] Error 1
lto-wrapper: make returned 2 exit status
/usr/local/bin/ld: lto-wrapper failed
collect2: error: ld returned 1 exit status
specmake[3]: *** [Xalan] Error 1

g++  -O3 -funroll-loops -ffast-math -fwhole-program -flto=jobserver
-fuse-linker-plugin  -DSPEC_CPU_LP64 ...
...
lto1: error: edge points to wrong declaration:
 <function_decl 0x2abd3c105500
_ZNSt6vectorIdSaIdEEC2EmRKdRKS0_.local.405.constprop.15751
    type <method_type 0x2abd3c08f0a8
        type <void_type 0x2abd3bf66bd0 void VOID
            align 8 symtab 0 alias set -1 canonical type 0x2abd3bf66bd0
            pointer_to_this <pointer_type 0x2abd3bf66c78>>
        QI
        size <integer_cst 0x2abd3bf69060 constant 8>
        unit size <integer_cst 0x2abd3bf69080 constant 1>
        align 8 symtab 0 alias set -1 canonical type 0x2abd3c08f0a8 method
basetype <record_type 0x2abd3c083b28 vector>
        arg-types <tree_list 0x2abd3c0900f0 value <pointer_type 0x2abd3c08b0a8>
            chain <tree_list 0x2abd3c090118 value <reference_type
0x2abd3c08b150>
                chain <tree_list 0x2abd3c090140 value <reference_type
0x2abd3c08bdc8>
                    chain <tree_list 0x2abd3bf5a618 value <void_type
0x2abd3bf66bd0 void>>>>>>
    public external autoinline QI defer-output file
/export/gnu/import/svn/gcc-test-spec-lto/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/bits/stl_vector.h
line 289 col 7 align 16 context <record_type 0x2abd3c083b28 vector>
    arguments <parm_decl 0x2abd3bf5c908 this
        type <pointer_type 0x2abd3c08f000 type <record_type 0x2abd3c083b28
vector>
            readonly unsigned DI
            size <integer_cst 0x2abd3bf55ec0 constant 64>
            unit size <integer_cst 0x2abd3bf55ee0 constant 8>
            align 64 symtab 0 alias set -1 canonical type 0x2abd3c083498>
        readonly unsigned DI file
/export/gnu/import/svn/gcc-test-spec-lto/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/bits/stl_vector.h
line 290 col 51 size <integer_cst 0x2abd3bf55ec0 64> unit size <integer_cst
0x2abd3bf55ee0 8>
        align 64 context <function_decl 0x2abd3c07ff00 __base_ctor > arg-type
<pointer_type 0x2abd3c08f000>
        chain <parm_decl 0x2abd3bf5c990 __n type <integer_type 0x2abd3c07af18
size_type>
            used unsigned DI file
/export/gnu/import/svn/gcc-test-spec-lto/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/bits/stl_vector.h
line 289 col 24 size <integer_cst 0x2abd3bf55ec0 64> unit size <integer_cst
0x2abd3bf55ee0 8>
            align 64 context <function_decl 0x2abd3c07ff00 __base_ctor >
arg-type <integer_type 0x2abd3c07af18 size_type> chain <parm_decl
0x2abd3bf5ca18 __value>>>
    result <result_decl 0x2abd3bf5e380 D.2159 type <void_type 0x2abd3bf66bd0
void>
        ignored VOID file
/export/gnu/import/svn/gcc-test-spec-lto/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/bits/stl_vector.h
line 292 col 43
        align 8 context <function_decl 0x2abd3c07ff00 __base_ctor >>>
 Instead of: <function_decl 0x2abd3c105300 __comp_ctor 
    type <method_type 0x2abd3c08b000
        type <void_type 0x2abd3bf66bd0 void VOID
            align 8 symtab 0 alias set -1 canonical type 0x2abd3bf66bd0
            pointer_to_this <pointer_type 0x2abd3bf66c78>>
        QI
        size <integer_cst 0x2abd3bf69060 constant 8>
        unit size <integer_cst 0x2abd3bf69080 constant 1>
        align 8 symtab 0 alias set -1 canonical type 0x2abd3c08b000 method
basetype <record_type 0x2abd3c083b28 vector>
        arg-types <tree_list 0x2abd3c07bbb8 value <pointer_type 0x2abd3c08b0a8>
            chain <tree_list 0x2abd3c07bbe0 value <integer_type 0x2abd3c07af18
size_type>
                chain <tree_list 0x2abd3c07bc08 value <reference_type
0x2abd3c08b150>
                    chain <tree_list 0x2abd3c07bfa0 value <reference_type
0x2abd3c08bdc8>
                        chain <tree_list 0x2abd3bf5a618 value <void_type
0x2abd3bf66bd0 void>>>>>>
        pointer_to_this <pointer_type 0x2abd3c1239d8>>
    addressable used public external autoinline QI defer-output file
/export/gnu/import/svn/gcc-test-spec-lto/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/bits/stl_vector.h
line 289 col 7 align 16 context <record_type 0x2abd3c083b28 vector>
    arguments <parm_decl 0x2abd3c1046e8 this
        type <pointer_type 0x2abd3c08f000 type <record_type 0x2abd3c083b28
vector>
            readonly unsigned DI
            size <integer_cst 0x2abd3bf55ec0 constant 64>
            unit size <integer_cst 0x2abd3bf55ee0 constant 8>
            align 64 symtab 0 alias set -1 canonical type 0x2abd3c083498>
        readonly used unsigned DI file
/export/gnu/import/svn/gcc-test-spec-lto/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/bits/stl_vector.h
line 290 col 51 size <integer_cst 0x2abd3bf55ec0 64> unit size <integer_cst
0x2abd3bf55ee0 8>
        align 64 context <function_decl 0x2abd3c105300 __comp_ctor > arg-type
<pointer_type 0x2abd3c08f000>
        chain <parm_decl 0x2abd3c104770 __n type <integer_type 0x2abd3c07af18
size_type>
            used unsigned DI file
/export/gnu/import/svn/gcc-test-spec-lto/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/bits/stl_vector.h
line 289 col 24 size <integer_cst 0x2abd3bf55ec0 64> unit size <integer_cst
0x2abd3bf55ee0 8>
            align 64 context <function_decl 0x2abd3c105300 __comp_ctor >
arg-type <integer_type 0x2abd3c07af18 size_type> chain <parm_decl
0x2abd3c1047f8 __value>>>
    result <result_decl 0x2abd3c106080 D.3535 type <void_type 0x2abd3bf66bd0
void>
        ignored VOID file
/export/gnu/import/svn/gcc-test-spec-lto/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/bits/stl_vector.h
line 292 col 43
        align 8 context <function_decl 0x2abd3c105300 __comp_ctor >>>
lto1: error: edge points to wrong declaration:
 <function_decl 0x2abd3c105500
_ZNSt6vectorIdSaIdEEC2EmRKdRKS0_.local.405.constprop.15751
    type <method_type 0x2abd3c08f0a8
        type <void_type 0x2abd3bf66bd0 void VOID
            align 8 symtab 0 alias set -1 canonical type 0x2abd3bf66bd0
            pointer_to_this <pointer_type 0x2abd3bf66c78>>
        QI
        size <integer_cst 0x2abd3bf69060 constant 8>
        unit size <integer_cst 0x2abd3bf69080 constant 1>
        align 8 symtab 0 alias set -1 canonical type 0x2abd3c08f0a8 method
basetype <record_type 0x2abd3c083b28 vector>
        arg-types <tree_list 0x2abd3c0900f0 value <pointer_type 0x2abd3c08b0a8>
            chain <tree_list 0x2abd3c090118 value <reference_type
0x2abd3c08b150>
                chain <tree_list 0x2abd3c090140 value <reference_type
0x2abd3c08bdc8>
                    chain <tree_list 0x2abd3bf5a618 value <void_type
0x2abd3bf66bd0 void>>>>>>
    public external autoinline QI defer-output file
/export/gnu/import/svn/gcc-test-spec-lto/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/bits/stl_vector.h
line 289 col 7 align 16 context <record_type 0x2abd3c083b28 vector>
    arguments <parm_decl 0x2abd3bf5c908 this
        type <pointer_type 0x2abd3c08f000 type <record_type 0x2abd3c083b28
vector>
            readonly unsigned DI
            size <integer_cst 0x2abd3bf55ec0 constant 64>
            unit size <integer_cst 0x2abd3bf55ee0 constant 8>
            align 64 symtab 0 alias set -1 canonical type 0x2abd3c083498>
        readonly unsigned DI file
/export/gnu/import/svn/gcc-test-spec-lto/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/bits/stl_vector.h
line 290 col 51 size <integer_cst 0x2abd3bf55ec0 64> unit size <integer_cst
0x2abd3bf55ee0 8>
        align 64 context <function_decl 0x2abd3c07ff00 __base_ctor > arg-type
<pointer_type 0x2abd3c08f000>
        chain <parm_decl 0x2abd3bf5c990 __n type <integer_type 0x2abd3c07af18
size_type>
            used unsigned DI file
/export/gnu/import/svn/gcc-test-spec-lto/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/bits/stl_vector.h
line 289 col 24 size <integer_cst 0x2abd3bf55ec0 64> unit size <integer_cst
0x2abd3bf55ee0 8>
            align 64 context <function_decl 0x2abd3c07ff00 __base_ctor >
arg-type <integer_type 0x2abd3c07af18 size_type> chain <parm_decl
0x2abd3bf5ca18 __value>>>
    result <result_decl 0x2abd3bf5e380 D.2159 type <void_type 0x2abd3bf66bd0
void>
        ignored VOID file
/export/gnu/import/svn/gcc-test-spec-lto/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/bits/stl_vector.h
line 292 col 43
        align 8 context <function_decl 0x2abd3c07ff00 __base_ctor >>>
 Instead of: <function_decl 0x2abd3c105300 __comp_ctor 
    type <method_type 0x2abd3c08b000
        type <void_type 0x2abd3bf66bd0 void VOID
            align 8 symtab 0 alias set -1 canonical type 0x2abd3bf66bd0
            pointer_to_this <pointer_type 0x2abd3bf66c78>>
        QI
        size <integer_cst 0x2abd3bf69060 constant 8>
        unit size <integer_cst 0x2abd3bf69080 constant 1>
        align 8 symtab 0 alias set -1 canonical type 0x2abd3c08b000 method
basetype <record_type 0x2abd3c083b28 vector>
        arg-types <tree_list 0x2abd3c07bbb8 value <pointer_type 0x2abd3c08b0a8>
            chain <tree_list 0x2abd3c07bbe0 value <integer_type 0x2abd3c07af18
size_type>
                chain <tree_list 0x2abd3c07bc08 value <reference_type
0x2abd3c08b150>
                    chain <tree_list 0x2abd3c07bfa0 value <reference_type
0x2abd3c08bdc8>
                        chain <tree_list 0x2abd3bf5a618 value <void_type
0x2abd3bf66bd0 void>>>>>>
        pointer_to_this <pointer_type 0x2abd3c1239d8>>
    addressable used public external autoinline QI defer-output file
/export/gnu/import/svn/gcc-test-spec-lto/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/bits/stl_vector.h
line 289 col 7 align 16 context <record_type 0x2abd3c083b28 vector>
    arguments <parm_decl 0x2abd3c1046e8 this
        type <pointer_type 0x2abd3c08f000 type <record_type 0x2abd3c083b28
vector>
            readonly unsigned DI
            size <integer_cst 0x2abd3bf55ec0 constant 64>
            unit size <integer_cst 0x2abd3bf55ee0 constant 8>
            align 64 symtab 0 alias set -1 canonical type 0x2abd3c083498>
        readonly used unsigned DI file
/export/gnu/import/svn/gcc-test-spec-lto/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/bits/stl_vector.h
line 290 col 51 size <integer_cst 0x2abd3bf55ec0 64> unit size <integer_cst
0x2abd3bf55ee0 8>
        align 64 context <function_decl 0x2abd3c105300 __comp_ctor > arg-type
<pointer_type 0x2abd3c08f000>
        chain <parm_decl 0x2abd3c104770 __n type <integer_type 0x2abd3c07af18
size_type>
            used unsigned DI file
/export/gnu/import/svn/gcc-test-spec-lto/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/bits/stl_vector.h
line 289 col 24 size <integer_cst 0x2abd3bf55ec0 64> unit size <integer_cst
0x2abd3bf55ee0 8>
            align 64 context <function_decl 0x2abd3c105300 __comp_ctor >
arg-type <integer_type 0x2abd3c07af18 size_type> chain <parm_decl
0x2abd3c1047f8 __value>>>
    result <result_decl 0x2abd3c106080 D.3535 type <void_type 0x2abd3bf66bd0
void>
        ignored VOID file
/export/gnu/import/svn/gcc-test-spec-lto/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.0/../../../../include/c++/4.7.0/bits/stl_vector.h
line 292 col 43
        align 8 context <function_decl 0x2abd3c105300 __comp_ctor >>>
compute_coefficients/0 @0x2abd3c1216c0 (asm:
_ZN11Polynomials12Hierarchical20compute_coefficientsEj) availability:local
analyzed reachable_from_other_partition body local prevailing_def_ironly
finalized
  called by: compute_coefficients/0 (0.18 per call) (can throw external)
compute_coefficients/0 (0.07 per call) (can throw external) 
  calls: operator delete/624 operator delete/624 operator delete/624 operator
delete/624 __comp_ctor /625 (0.18 per call) operator new/626 (0.18 per call)
(can throw external) compute_coefficients/0 (0.18 per call) (can throw
external) _ZNSt6vectorIdSaIdEEC2EmRKdRKS0_.local.405.constprop.15750/2
(inlined) (0.07 per call) operator new/626 (0.07 per call) (can throw external)
compute_coefficients/0 (0.07 per call) (can throw external)
_ZNSt6vectorIdSaIdEEC2EmRKdRKS0_.local.405.constprop.15751/627 (0.04 per call)
operator new/626 (0.04 per call) (can throw external)
_ZNSt6vectorIdSaIdEEC2EmRKdRKS0_.local.405.constprop.15751/627 (0.04 per call)
operator new/626 (0.04 per call) (can throw external)
_ZNSt6vectorIPKS_IdSaIdEESaIS3_EE6resizeEmS3_.local.5880.constprop.15644/12
(inlined) (0.29 per call) (can throw external) 
  References:  var:recursive_coefficients (read) var:recursive_coefficients
(read) var:recursive_coefficients (addr) var:recursive_coefficients (read)
var:recursive_coefficients (read) var:recursive_coefficients (read)
var:recursive_coefficients (read)
  Refering this function: 
lto1: internal compiler error: verify_cgraph_node failed
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
make[4]: *** [/tmp/ccPXHXxM.ltrans26.ltrans.o] Error 1
lto-wrapper: make returned 2 exit status
/usr/local/bin/ld: lto-wrapper failed
collect2: error: ld returned 1 exit status
specmake[3]: *** [dealII] Error 1

Revision 176370 is OK.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]