aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/flag-types.h11
-rw-r--r--gcc/gimple-range-cache.cc3
-rw-r--r--gcc/gimple-range-trace.h3
-rw-r--r--gcc/params.opt11
4 files changed, 16 insertions, 12 deletions
diff --git a/gcc/flag-types.h b/gcc/flag-types.h
index e43d1de..4fb1cb4 100644
--- a/gcc/flag-types.h
+++ b/gcc/flag-types.h
@@ -444,14 +444,15 @@ enum parloops_schedule_type
/* EVRP mode. */
enum evrp_mode
{
- EVRP_MODE_EVRP_FIRST = 0,
+ EVRP_MODE_RVRP_ONLY = 0,
EVRP_MODE_EVRP_ONLY = 1,
- EVRP_MODE_RVRP_ONLY = 2,
+ EVRP_MODE_EVRP_FIRST = 2,
EVRP_MODE_RVRP_FIRST = 3,
EVRP_MODE_TRACE = 4,
- EVRP_MODE_DEBUG = 8 | EVRP_MODE_TRACE,
- EVRP_MODE_RVRP_TRACE = EVRP_MODE_RVRP_ONLY | EVRP_MODE_TRACE,
- EVRP_MODE_RVRP_DEBUG = EVRP_MODE_RVRP_ONLY | EVRP_MODE_DEBUG
+ EVRP_MODE_CACHE = (8 | EVRP_MODE_TRACE),
+ EVRP_MODE_GORI = 16,
+ EVRP_MODE_TRACE_GORI = (EVRP_MODE_TRACE | EVRP_MODE_GORI),
+ EVRP_MODE_DEBUG = (EVRP_MODE_GORI | EVRP_MODE_CACHE)
};
/* Modes of OpenACC 'kernels' constructs handling. */
diff --git a/gcc/gimple-range-cache.cc b/gcc/gimple-range-cache.cc
index 91541f1..4138d05 100644
--- a/gcc/gimple-range-cache.cc
+++ b/gcc/gimple-range-cache.cc
@@ -30,6 +30,9 @@ along with GCC; see the file COPYING3. If not see
#include "gimple-range.h"
#include "tree-cfg.h"
+#define DEBUG_RANGE_CACHE (dump_file && (param_evrp_mode & EVRP_MODE_CACHE) \
+ == EVRP_MODE_CACHE)
+
// During contructor, allocate the vector of ssa_names.
non_null_ref::non_null_ref ()
diff --git a/gcc/gimple-range-trace.h b/gcc/gimple-range-trace.h
index 6f89fcc..d2d1a8b 100644
--- a/gcc/gimple-range-trace.h
+++ b/gcc/gimple-range-trace.h
@@ -58,7 +58,4 @@ range_tracer::header (const char *str)
return do_header (str);
return 0;
}
-
-#define DEBUG_RANGE_CACHE (dump_file && (param_evrp_mode & EVRP_MODE_DEBUG))
-
#endif // GCC_GIMPLE_RANGE_TRACE_H
diff --git a/gcc/params.opt b/gcc/params.opt
index 92b003e..f926488 100644
--- a/gcc/params.opt
+++ b/gcc/params.opt
@@ -132,7 +132,7 @@ 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_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.
+--param=evrp-mode=[legacy|ranger|legacy-first|ranger-first|trace|gori|cache|tracegori|debug] Specifies the mode Early VRP should operate in.
Enum
Name(evrp_mode) Type(enum evrp_mode) UnknownError(unknown evrp mode %qs)
@@ -150,13 +150,16 @@ EnumValue
Enum(evrp_mode) String(ranger-first) Value(EVRP_MODE_RVRP_FIRST)
EnumValue
-Enum(evrp_mode) String(ranger-trace) Value(EVRP_MODE_RVRP_TRACE)
+Enum(evrp_mode) String(trace) Value(EVRP_MODE_TRACE)
EnumValue
-Enum(evrp_mode) String(ranger-debug) Value(EVRP_MODE_RVRP_DEBUG)
+Enum(evrp_mode) String(cache) Value(EVRP_MODE_CACHE)
EnumValue
-Enum(evrp_mode) String(trace) Value(EVRP_MODE_TRACE)
+Enum(evrp_mode) String(gori) Value(EVRP_MODE_GORI)
+
+EnumValue
+Enum(evrp_mode) String(tracegori) Value(EVRP_MODE_TRACE_GORI)
EnumValue
Enum(evrp_mode) String(debug) Value(EVRP_MODE_DEBUG)