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 tree-optimization/32461] [4.3 Regression] Segmentation fault in build_classic_dist_vector_1() at tree-data-ref.c:2700



------- Comment #3 from ubizjak at gmail dot com  2007-06-22 18:29 -------
The testcase:

--cut here--
typedef struct
{
  unsigned char exp[256];
}
expbap_t;

void
a52_bit_allocate (expbap_t * expbap)
{
  int i;
  unsigned char *exp;
  exp = expbap->exp;

  int lowcomp;
  do
    {
      if (exp[i + 1] == exp[i] - 2)
        lowcomp = 384;
      else if (lowcomp && (exp[i + 1] > exp[i]))
        lowcomp -= 64;
      i++;
    }
  while ((i < 3) || ((i < 7) && (exp[i] > exp[i - 1])));
}
--cut here--

gcc -O3 -m32:

#0  build_classic_dist_vector_1 (ddr=0xf84eb0, ddr_a=0xf84460, ddr_b=0xf84f50, 
    dist_v=0x2aaaae0aa260, init_b=0x7ffffed24dd7
"\001&#65533;\206&#65533;&#65533;&#65533;*", 
    index_carry=0x7ffffed24dd0) at ../../gcc-svn/trunk/gcc/tree-data-ref.c:2700
#1  0x00000000006c2175 in subscript_dependence_tester (ddr=0xf84eb0, 
    loop_nest=0x2aaaadff86e0) at ../../gcc-svn/trunk/gcc/tree-data-ref.c:2998
#2  0x00000000006c3068 in compute_all_dependences (datarefs=0xf781d0, 
    dependence_relations=0x7ffffed25108, loop_nest=0xf73920, 
    compute_self_and_rr=1 '\001')
    at ../../gcc-svn/trunk/gcc/tree-data-ref.c:3805
#3  0x00000000006c3ebd in compute_data_dependences_for_loop (
    loop=0x2aaaadff86e0, compute_self_and_read_read_dependences=22 '\026', 
    datarefs=0x7ffffed25110, dependence_relations=0x7ffffed25108)
    at ../../gcc-svn/trunk/gcc/tree-data-ref.c:4117
#4  0x0000000000a1d992 in tree_predictive_commoning_loop (loop=0x2aaaadff86e0)
    at ../../gcc-svn/trunk/gcc/tree-predcom.c:2488
#5  0x0000000000a1ee85 in tree_predictive_commoning ()
    at ../../gcc-svn/trunk/gcc/tree-predcom.c:2596
#6  0x0000000000766ee7 in run_tree_predictive_commoning ()
    at ../../gcc-svn/trunk/gcc/tree-ssa-loop.c:184

(gdb) list
2695      for (i = 0; i < DDR_NUM_SUBSCRIPTS (ddr); i++)
2696        {
2697          tree access_fn_a, access_fn_b;
2698          struct subscript *subscript = DDR_SUBSCRIPT (ddr, i);
2699
2700 >>>>     if (chrec_contains_undetermined (SUB_DISTANCE (subscript)))
2701            {
2702              non_affine_dependence_relation (ddr);
2703              return false;
2704            }


-- 

ubizjak at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
          Component|regression                  |tree-optimization
     Ever Confirmed|0                           |1
   GCC host triplet|                            |i686-pc-linux-gnu
 GCC target triplet|                            |i686-pc-linux-gnu
   Last reconfirmed|0000-00-00 00:00:00         |2007-06-22 18:29:05
               date|                            |
            Summary|[4.3 Regression] internal   |[4.3 Regression]
                   |compiler error: Segmentation|Segmentation fault in
                   |fault                       |build_classic_dist_vector_1(
                   |                            |) at tree-data-ref.c:2700


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


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