On Mon, Feb 18, 2013 at 9:21 PM, Steven Bosscher wrote:
> On Sat, Feb 16, 2013 at 1:55 AM, Vladimir Makarov wrote:
>> The branch was merged with trunk @ r196091.
>>
>> Successfully bootstrapped on x86-64.
>>
>> Committed as rev. 196099.
>
> Hello Vlad,
>
> It looks like this broke bootstrap on ia64 and
>
> /home/stevenb/lra_powerpc64_autotester/lra-branch/libgfortran/generated/pow_i8_i4.c:
> In function 'pow_i8_i4':
> /home/stevenb/lra_powerpc64_autotester/lra-branch/libgfortran/generated/pow_i8_i4.c:75:1:
> internal compiler error: in check_rtl, at lra.c:2009

This is:
$ ./xgcc --version
xgcc (GCC) 4.8.0 20130215 (experimental) [lra revision 196115]
...
$ cat t.c
typedef int int32_t __attribute__ ((__mode__ (__SI__)));
typedef int int64_t __attribute__ ((__mode__ (__DI__)));
typedef unsigned int uint32_t __attribute__ ((__mode__ (__SI__)));

int64_t pow_i8_i4 (int64_t a, int32_t b);

int64_t
pow_i8_i4 (int64_t a, int32_t b)
{
  int64_t pow, x;
  int32_t n;
  uint32_t u;

  n = b;
  x = a;
  pow = 1;
  if (n != 0)
    {
      if (n < 0)
        {
          if (x == 1)
            return 1;
          if (x == -1)
            return (n & 1) ? -1 : 1;
          return (x == 0) ? 1 / x : 0;
        }
      else
        u = n;
      for (;;)
        {
          if (u & 1)
            pow *= x;
          u >>= 1;
          if (u)
            x *= x;
          else
            break;
        }
    }
  return pow;
}
$ ./cc1 -quiet -O2 -m32 t.c
t.c: In function 'pow_i8_i4':
t.c:41:1: internal compiler error: in check_rtl, at lra.c:2009
 }
 ^
0x106aa15b check_rtl
        ../../lra-branch/gcc/lra.c:2009
0x106ab387 lra(_IO_FILE*)
        ../../lra-branch/gcc/lra.c:2374
0x1063542b do_reload
        ../../lra-branch/gcc/ira.c:4619
0x106357df rest_of_handle_reload
        ../../lra-branch/gcc/ira.c:4731
Please submit a full bug report,

Ciao!
Steven

Reply via email to