http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54471
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Target|hppa*-*-* (32-bit) | Status|WAITING |NEW Host|hppa*-*-* (32-bit) | Build|hppa*-*-* (32-bit) | --- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-11-21 13:36:56 UTC --- Reproduced with extern void abort (void); __attribute__ ((noinline)) unsigned __int128 foo (__int128 ixi, unsigned ctr) { unsigned __int128 irslt = 1; __int128 ix = ixi; for (; ctr; ctr--) { irslt *= ix; ix *= ix; } if (irslt != 14348907) abort (); return irslt; } int main () { unsigned __int128 res; res = foo (3, 4); return 0; } on x86_64-linux at -O2, seems to be a VRP bug.