public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/53390] New: ICE: tree check: expected integer_cst, have nop_expr in vect_compute_data_ref_alignmen on 32-bit x86 host
@ 2012-05-17 17:13 gary at intrepid dot com
  2012-05-17 17:14 ` [Bug tree-optimization/53390] " gary at intrepid dot com
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: gary at intrepid dot com @ 2012-05-17 17:13 UTC (permalink / raw)
  To: gcc-bugs

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

             Bug #: 53390
           Summary: ICE: tree check: expected integer_cst, have nop_expr
                    in vect_compute_data_ref_alignmen on 32-bit x86 host
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: gary@intrepid.com
                CC: PHHargrove@lbl.gov
              Host: CentOS 6 x86-32
            Target: x86-32


Built on x86-32 with GCC 4.8 trunk version 187616 (2012-05-16), the attached
test case fails with following internal error (with checks enabled).

test.i: In function ‘foo’:
test.i:10:6: internal compiler error: tree check: expected integer_cst, have
nop_expr in tree_int_cst_sgn, at tree.c:6601

Back trace:

#0  internal_error (gmsgid=0x8f57f68 "tree check: %s, have %s in %s, at %s:%d")
    at gcc/diagnostic.c:955
#1  0x089e6b71 in tree_check_failed (node=0xb7c8a378, 
    file=0x8f57148 "gcc/tree.c", line=6601, 
    function=0x8f5958c "tree_int_cst_sgn")
    at gcc/tree.c:8886
#2  0x089d7c50 in tree_int_cst_sgn (t=0xb7c8a378)
    at gcc/tree.c:6601
#3  0x089d7108 in tree_int_cst_lt (t1=0xb7c8a378, t2=0xb7bec594)
    at gcc/tree.c:6503
#4  0x089d7634 in tree_int_cst_compare (t1=0xb7c8a378, t2=0xb7bec594)
    at gcc/tree.c:6525
#5  0x08e2abda in vect_compute_data_ref_alignment (dr=0x92a3768)
    at gcc/tree-vect-data-refs.c:923
#6  0x08e2ae38 in vect_compute_data_refs_alignment (loop_vinfo=0x92a37e0, 
    bb_vinfo=0x0) at gcc/tree-vect-data-refs.c:976
#7  0x08e2d99f in vect_analyze_data_refs_alignment (loop_vinfo=0x92a37e0, 
    bb_vinfo=0x0)
    at gcc/tree-vect-data-refs.c:2074

(gdb) f 5
#5  0x08e2abda in vect_compute_data_ref_alignment (dr=0x92a3768)
    at gcc/tree-vect-data-refs.c:923
923       if (tree_int_cst_compare (DR_STEP (dr), size_zero_node) < 0)
(gdb) l
918                       && DECL_ALIGN (base) >= TYPE_ALIGN (vectype)));
919
920       /* If this is a backward running DR then first access in the larger
921          vectype actually is N-1 elements before the address in the DR.
922          Adjust misalign accordingly.  */
923       if (tree_int_cst_compare (DR_STEP (dr), size_zero_node) < 0)
924         {
925           tree offset = ssize_int (TYPE_VECTOR_SUBPARTS (vectype) - 1);
926           /* DR_STEP(dr) is the same as -TYPE_SIZE of the scalar type,
927              otherwise we wouldn't be here.  */
(gdb) down
#4  0x089d7634 in tree_int_cst_compare (t1=0xb7c8a378, t2=0xb7bec594)
    at gcc/tree.c:6525
6525      if (tree_int_cst_lt (t1, t2))
(gdb) p t1
$1 = (const_tree) 0xb7c8a378
(gdb) pt
 <nop_expr 0xb7c8a378
    type <integer_type 0xb7bff0c0 ssizetype public SI
        size <integer_cst 0xb7bec55c constant 32>
        unit size <integer_cst 0xb7bec578 constant 4>
        align 32 symtab 0 alias set -1 canonical type 0xb7bff0c0 precision 32
min <integer_cst 0xb7bec620 -2147483648> max <integer_cst 0xb7bec63c
2147483647>>

    arg 0 <mult_expr 0xb7c87a80
        type <integer_type 0xb7bff3c0 unsigned int public unsigned SI size
<integer_cst 0xb7bec55c 32> unit size <integer_cst 0xb7bec578 4>
            align 32 symtab 0 alias set -1 canonical type 0xb7bff3c0 precision
32 min <integer_cst 0xb7bec86c 0> max <integer_cst 0xb7bec850 4294967295>
            pointer_to_this <pointer_type 0xb7c0b300>>

        arg 0 <nop_expr 0xb7c8a348 type <integer_type 0xb7bff3c0 unsigned int>

            arg 0 <ssa_name 0xb7c70d3c type <integer_type 0xb7bff360 int>
                visited var <var_decl 0xb7c81cc0 pretmp.12>def_stmt
pretmp.12_42 = var2;

                version 42>>
        arg 1 <integer_cst 0xb7c7fa64 constant 2>>>

I was unable to cause this to fail on an x86_64 *host* compiling with -m32, but
perhaps needed to try some other configuration options.  The failing compiler
above was built on an x86-32 (CentOS 6) host with --disable-bootstrap and
--enable-checking.


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2012-05-18 12:12 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-05-17 17:13 [Bug tree-optimization/53390] New: ICE: tree check: expected integer_cst, have nop_expr in vect_compute_data_ref_alignmen on 32-bit x86 host gary at intrepid dot com
2012-05-17 17:14 ` [Bug tree-optimization/53390] " gary at intrepid dot com
2012-05-17 18:11 ` gary at intrepid dot com
2012-05-17 23:34 ` hjl.tools at gmail dot com
2012-05-18 11:43 ` [Bug tree-optimization/53390] [4.8 Regression] " rguenth at gcc dot gnu.org
2012-05-18 12:12 ` rguenth at gcc dot gnu.org
2012-05-18 12:13 ` rguenth at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).