gcc.dg/sms-3.c and gcc.dg/sms-6.c fail on powerpc when -fsched-pressure is 
used. The -fsched-pressure option changes the value returned by 
rs6000_issue_rate which in turn affects the computed initiation interval in the 
SMS code and leads to failure to modulo schedule the single loop in sms-3.c and 
1 of the 3 loops in sms-6.c. This patch adds that option for powerpc and is a 
precursor to a patch I'll submit shortly that enables -fsched-pressure by 
default for the rs6000 port.

I have verified the updated tests pass both before and after my patch to enable 
-fsched-pressure is applied. Ok for trunk?

-Pat


testsuite/ChangeLog:
2016-12-20  Pat Haugen  <pthau...@us.ibm.com>

        * gcc.dg/sms-3.c: Add -fno-sched-pressure for powerpc.
        * gcc.dg/sms-6.c: Likewise.
Index: gcc.dg/sms-3.c
===================================================================
--- gcc.dg/sms-3.c	(revision 243651)
+++ gcc.dg/sms-3.c	(working copy)
@@ -1,5 +1,6 @@
 /* { dg-do run } */
 /* { dg-options "-O2 -fmodulo-sched -funroll-loops -fdump-rtl-sms --param sms-min-sc=1 -fmodulo-sched-allow-regmoves" } */
+/* { dg-options "-O2 -fmodulo-sched -funroll-loops -fdump-rtl-sms --param sms-min-sc=1 -fmodulo-sched-allow-regmoves -fno-sched-pressure" { target powerpc*-*-* } } */
 
 extern void abort (void);
 
Index: gcc.dg/sms-6.c
===================================================================
--- gcc.dg/sms-6.c	(revision 243651)
+++ gcc.dg/sms-6.c	(working copy)
@@ -1,7 +1,7 @@
 /* { dg-do run } */
 /* { dg-require-effective-target size32plus } */
 /* { dg-options "-O2 -fmodulo-sched -fdump-rtl-sms --param sms-min-sc=1" } */
-/* { dg-options "-O2 -fmodulo-sched -fdump-rtl-sms --param sms-min-sc=1 -fmodulo-sched-allow-regmoves" { target powerpc*-*-* } } */
+/* { dg-options "-O2 -fmodulo-sched -fdump-rtl-sms --param sms-min-sc=1 -fmodulo-sched-allow-regmoves -fno-sched-pressure" { target powerpc*-*-* } } */
 
 extern void abort (void);
 

Reply via email to