diff mbox series

[COMMITTED] Turn hybrid mode off, default to ranger-only mode for EVRP.

Message ID 13c60501-2ed4-50c2-17b7-5d5141078a22@redhat.com
State New
Headers show
Series [COMMITTED] Turn hybrid mode off, default to ranger-only mode for EVRP. | expand

Commit Message

Andrew MacLeod July 14, 2021, 4:53 p.m. UTC
With the integration of the relational oracle, Ranger is now pretty much 
at parity in getting all the cases EVRP use to, and runs the testsuite 
cleanly.

This patch turns hybrid mode off, running EVRP in ranger-only mode.  It 
requires a tweak to one test case which was XFAILing before, but now 
passes. This will hopefully be transparent to everyone.

With legacy evrp off, we'll see if anything shows up that I have missed 
in my analysis. Its certainly easy enough to turn back on if need be.  I 
will continue to locally monitor hybrid mode to ensure we don't lose any 
ground.

I have bootstrapped this on 3 arch's :  x86_64,  aarch64,  and 
powerpc64, and all run regression free through the testsuite.

pushed.

Andrew
diff mbox series

Patch

commit 398572c1544d8b7541862401b985ae7e855cb8fb
Author: Andrew MacLeod <amacleod@redhat.com>
Date:   Wed Jul 14 12:47:10 2021 -0400

    Turn hybrid mode off, default to ranger-only mode for EVRP.
    
    Change the default EVRP mode to ranger-only.
    
            gcc/
            * params.opt (param_evrp_mode): Change default.
    
            gcc/testsuite/
            * gcc.dg/pr80776-1.c: Remove xfail.

diff --git a/gcc/params.opt b/gcc/params.opt
index 577cd42c173..92b003e38cb 100644
--- a/gcc/params.opt
+++ b/gcc/params.opt
@@ -131,7 +131,7 @@  Common Joined UInteger Var(param_evrp_sparse_threshold) Init(800) Optimization P
 Maximum number of basic blocks before EVRP uses a sparse cache.
 
 -param=evrp-mode=
-Common Joined Var(param_evrp_mode) Enum(evrp_mode) Init(EVRP_MODE_EVRP_FIRST) Param Optimization
+Common Joined Var(param_evrp_mode) Enum(evrp_mode) Init(EVRP_MODE_RVRP_ONLY) Param Optimization
 --param=evrp-mode=[legacy|ranger|legacy-first|ranger-first|ranger-trace|ranger-debug|trace|debug] Specifies the mode Early VRP should operate in.
 
 Enum
diff --git a/gcc/testsuite/gcc.dg/pr80776-1.c b/gcc/testsuite/gcc.dg/pr80776-1.c
index eca5e805ae2..b9bce62d982 100644
--- a/gcc/testsuite/gcc.dg/pr80776-1.c
+++ b/gcc/testsuite/gcc.dg/pr80776-1.c
@@ -27,5 +27,5 @@  Foo (void)
      Setting these ranges at the definition site, causes VRP to remove the
      unreachable code altogether, leaving the following sprintf unguarded.  This
      causes the bogus warning below.  */
-  sprintf (number, "%d", i); /* { dg-bogus "writing" "" { xfail *-*-* } } */
+  sprintf (number, "%d", i); /* { dg-bogus "writing" "" } */
 }