------- Comment #1 from pinskia at gcc dot gnu dot org  2006-10-13 03:19 -------
C testcase:
void f(int *n, int *m)
{
  int i;
  int ubound0;
  int ubound1;
  int stride2;
  int offset3;
  int size4;
  int j;
  int ubound5;
  int size6;
  int D919;
  __SIZE_TYPE__ D920;
  int D921;
  unsigned int D922;
  __SIZE_TYPE__ D923;
  unsigned int D924;

  ubound0 = *m;
  stride2 = ubound0;
  ubound1 = *n;
  size4 = stride2 * ubound1;
  D922 = size4 - 1;
  int (*abc)[D922];
  abc = _gfortran_internal_malloc (size4 * 4);
  offset3 = ~stride2;
  ubound5 = *n;
  size6 = ubound5;
  D919 = size6 - 1;
  int (*xsd)[D919];
  xsd = _gfortran_internal_malloc (size6 * 4);
  i = 1;

  if (i <= 2)
    {
      while (1)
        {
          {
            _Bool D918;

            j = 1;
            if (j <= 3)
              {
                while (1)
                  {
                    {
                      _Bool D917;

                      if (i != j)
                        {
                          if (__builtin_expect (ubound0 <= 0, 0))
                            {
                              __builtin_abort ();
                            }
                          else
                            {
                              (void) 0;
                            }
                          if (__builtin_expect (ubound1 <= 0, 0))
                            {
                              __builtin_abort ();
                            }
                          else
                            {
                              (void) 0;
                            }
                          (*abc)[stride2 + offset3 + 1] = 0;
                        }
                      else
                        {
                          {
                            int D916;

                            if (__builtin_expect (ubound0 <= 0, 0))
                              {
                                __builtin_abort ();
                              }
                            else
                              {
                                (void) 0;
                              }
                            D916 = j;
                            if (__builtin_expect (D916 <= 0, 0))
                              {
                                __builtin_abort ();
                              }
                            else
                              {
                                (void) 0;
                              }
                            if (__builtin_expect (D916 > ubound1, 0))
                              {
                                __builtin_abort ();
                              }
                            else
                              {
                                (void) 0;
                              }
                            if (__builtin_expect (ubound5 <= 0, 0))
                              {
                                __builtin_abort ();
                              }
                            else
                              {
                                (void) 0;
                              }
                            (*abc)[D916 * stride2 + offset3 + 1] = (*xsd)[0];
                          }
                        }
                      D917 = j == 3;
                      j = j + 1;
                      if (D917) break; else (void) 0;
                    }
                  }
              }
            else
              {
                (void) 0;
              }
          //  L4:;
            D918 = i == 2;
            i = i + 1;
            if (D918) break; else (void) 0;
          }
        }
    }
  else
    {
      (void) 0;
    }
//L2:;
  _gfortran_internal_free ((void *) xsd);
  _gfortran_internal_free ((void *) abc);

}


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|normal                      |critical
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
      Known to fail|                            |4.2.0
      Known to work|                            |4.1.2
   Last reconfirmed|0000-00-00 00:00:00         |2006-10-13 03:19:26
               date|                            |
            Summary|VRP ICE in compare_names    |[4.2 Regression] VRP ICE in
                   |                            |compare_names
   Target Milestone|---                         |4.2.0


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

Reply via email to