[Bug middle-end/38347] New: [4.4 Regression] gfortran.dg/alloc_comp_constructor_1.f90 ICE with -O2 -fdefault-integer-8

dominiq at lps dot ens dot fr gcc-bugzilla@gcc.gnu.org
Mon Dec 1 13:47:00 GMT 2008


On powerpc-apple-darwin9 at revision 142300, compiling
gfortran.dg/alloc_comp_constructor_1.f90 with -O2 -fdefault-integer-8 gives and
ICE:

[karma] dominiq/test% gfc -O2 -fdefault-integer-8
/opt/gcc/gcc-4.4-work/gcc/testsuite/gfortran.dg/alloc_comp_constructor_1.f90  
/opt/gcc/gcc-4.4-work/gcc/testsuite/gfortran.dg/alloc_comp_constructor_1.f90:
In function 'test_constructor':
/opt/gcc/gcc-4.4-work/gcc/testsuite/gfortran.dg/alloc_comp_constructor_1.f90:9:
internal compiler error: in operand_subword, at emit-rtl.c:1364

I don't see this ICE on i686-apple-darwin9. Note that
alloc_comp_constructor_1.f90 gives other failures related to pr38324. 

The backtrace before the ICE gives:

#0  operand_subword (op=0x40f09410, offset=0, validate_address=1,
mode=VOIDmode) at ../../gcc-4.4-work/gcc/emit-rtl.c:1361
#1  0x002b8118 in operand_subword_force (op=0x40f09410, offset=0,
mode=VOIDmode) at ../../gcc-4.4-work/gcc/emit-rtl.c:1407
#2  0x0027849c in do_jump_by_parts_zero_rtx (mode=<value temporarily
unavailable, due to optimizations>, op0=0x40f09410, if_false_label=0x41d6df30,
if_true_label=0x0) at ../../gcc-4.4-work/gcc/dojump.c:678
#3  0x0027aba0 in do_jump (exp=0x40f09410, if_false_label=0x0,
if_true_label=0x41d6df30) at ../../gcc-4.4-work/gcc/dojump.c:307
#4  0x00208ce0 in expand_gimple_basic_block (bb=0x41c00040) at
../../gcc-4.4-work/gcc/cfgexpand.c:1665
#5  0x00209534 in gimple_expand_cfg () at
../../gcc-4.4-work/gcc/cfgexpand.c:2377
#6  0x0044cc18 in execute_one_pass (pass=0x904ea0) at
../../gcc-4.4-work/gcc/passes.c:1279
#7  0x0044ceb8 in execute_pass_list (pass=0x41cc3e80) at
../../gcc-4.4-work/gcc/passes.c:1328
#8  0x00587394 in tree_rest_of_compilation (fndecl=0x40f56600) at
../../gcc-4.4-work/gcc/tree-optimize.c:418
#9  0x007257c4 in cgraph_expand_function (node=0x40f07900) at
../../gcc-4.4-work/gcc/cgraphunit.c:1047
#10 0x00727cac in cgraph_expand_all_functions [inlined] () at
../../gcc-4.4-work/gcc/cgraphunit.c:1106
#11 cgraph_optimize () at ../../gcc-4.4-work/gcc/cgraphunit.c:1311
#12 0x000976a0 in gfc_be_parse_file (set_yydebug=<value temporarily
unavailable, due to optimizations>) at
../../gcc-4.4-work/gcc/fortran/f95-lang.c:240
#13 0x0051d3d8 in compile_file [inlined] () at
../../gcc-4.4-work/gcc/toplev.c:968
#14 toplev_main (argc=<value temporarily unavailable, due to optimizations>,
argv=<value temporarily unavailable, due to optimizations>) at
../../gcc-4.4-work/gcc/toplev.c:2191
#15 0x00001908 in start ()
(gdb) p *op
$1 = {
  code = CONST_INT, 
  mode = VOIDmode, 
  jump = 0, 
  call = 0, 
  unchanging = 0, 
  volatil = 0, 
  in_struct = 0, 
  used = 0, 
  frame_related = 0, 
  return_val = 0, 
  u = {
    fld = {{
        rt_int = 0, 
        rt_uint = 0, 
        rt_str = 0x0, 
        rt_rtx = 0x0, 
        rt_rtvec = 0x0, 
        rt_type = VOIDmode, 
        rt_addr_diff_vec_flags = {
          min_align = 0, 
          base_after_vec = 0, 
          min_after_vec = 0, 
          max_after_vec = 0, 
          min_after_base = 0, 
          max_after_base = 0, 
          offset_unsigned = 0, 
          scale = 0
        }, 
        rt_cselib = 0x0, 
        rt_bit = 0x0, 
        rt_tree = 0x0, 
        rt_bb = 0x0, 
        rt_mem = 0x0, 
        rt_reg = 0x0, 
        rt_constant = 0x0
      }}, 
    hwint = {1}, 
    block_sym = {
      fld = {{
          rt_int = 0, 
          rt_uint = 0, 
          rt_str = 0x0, 
          rt_rtx = 0x0, 
          rt_rtvec = 0x0, 
          rt_type = VOIDmode, 
          rt_addr_diff_vec_flags = {
            min_align = 0, 
            base_after_vec = 0, 
            min_after_vec = 0, 
            max_after_vec = 0, 
            min_after_base = 0, 
            max_after_base = 0, 
            offset_unsigned = 0, 
            scale = 0
          }, 
          rt_cselib = 0x0, 
          rt_bit = 0x0, 
          rt_tree = 0x0, 
          rt_bb = 0x0, 
          rt_mem = 0x0, 
          rt_reg = 0x0, 
          rt_constant = 0x0
        }, {
          rt_int = 1, 
          rt_uint = 1, 
          rt_str = 0x1 <Address 0x1 out of bounds>, 
          rt_rtx = 0x1, 
          rt_rtvec = 0x1, 
          rt_type = BLKmode, 
          rt_addr_diff_vec_flags = {
            min_align = 0, 
            base_after_vec = 0, 
            min_after_vec = 0, 
            max_after_vec = 0, 
            min_after_base = 0, 
            max_after_base = 0, 
            offset_unsigned = 0, 
            scale = 0
          }, 
          rt_cselib = 0x1, 
          rt_bit = 0x1, 
          rt_tree = 0x1, 
          rt_bb = 0x1, 
          rt_mem = 0x1, 
          rt_reg = 0x1, 
          rt_constant = 0x1
        }, {
          rt_int = -1347440721, 
          rt_uint = 2947526575, 
          rt_str = 0xafafafaf <Address 0xafafafaf out of bounds>, 
          rt_rtx = 0xafafafaf, 
          rt_rtvec = 0xafafafaf, 
          rt_type = 2947526575, 
          rt_addr_diff_vec_flags = {
            min_align = 175, 
            base_after_vec = 1, 
            min_after_vec = 0, 
            max_after_vec = 1, 
            min_after_base = 0, 
            max_after_base = 1, 
            offset_unsigned = 1, 
            scale = 175
          }, 
          rt_cselib = 0xafafafaf, 
          rt_bit = 0xafafafaf, 
          rt_tree = 0xafafafaf, 
          rt_bb = 0xafafafaf, 
          rt_mem = 0xafafafaf, 
          rt_reg = 0xafafafaf, 
          rt_constant = 0xafafafaf
        }}, 
      block = 0x1b0000, 
      offset = 2
    }, 
    rv = {
      cl = 0, 
      decimal = 0, 
      sign = 0, 
      signalling = 0, 
      canonical = 0, 
      uexp = 0, 
      sig = {1, 2947526575, 1769472, 0, 2}
    }, 
    fv = {
      data = {
        low = 1, 
        high = -5787213829991890944
      }, 
      mode = 0
    }
  }
}


-- 
           Summary: [4.4 Regression]
                    gfortran.dg/alloc_comp_constructor_1.f90 ICE with -O2 -
                    fdefault-integer-8
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: dominiq at lps dot ens dot fr
 GCC build triplet: powerpc-apple-darwin9
  GCC host triplet: powerpc-apple-darwin9
GCC target triplet: powerpc-apple-darwin9


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



More information about the Gcc-bugs mailing list