https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69992
--- Comment #1 from acsawdey at gcc dot gnu.org --- At some point the doloop analysis must have changed and as a result declared that the loop might run infinitely if compiled with -m64. This in turn causes SMS to bail out and the test fails. The following patch fixes it on powerpc -m64: Index: gcc/testsuite/gcc.dg/sms-4.c =================================================================== --- gcc/testsuite/gcc.dg/sms-4.c (revision 244540) +++ gcc/testsuite/gcc.dg/sms-4.c (working copy) @@ -12,9 +12,9 @@ __attribute__ ((noinline)) void -foo (int size, int *ap, int *bp, int *cp, int *dstp) +foo (long size, int *ap, int *bp, int *cp, int *dstp) { - unsigned int i, n = size; + unsigned long i, n = size; int changed = 0; for (i = 0; i < n; i++)