aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSegher Boessenkool <segher@kernel.crashing.org>2019-03-01 18:44:15 +0100
committerSegher Boessenkool <segher@gcc.gnu.org>2019-03-01 18:44:15 +0100
commit75e2b35dd0456a148805eae3e7c0e55c6336c263 (patch)
treec8f6e563c5115bf3e56e8a24a4a2e360c5e9d231
parent5055060066723e409519376c8e571e51cff1eb30 (diff)
downloadgcc-75e2b35dd0456a148805eae3e7c0e55c6336c263.zip
gcc-75e2b35dd0456a148805eae3e7c0e55c6336c263.tar.gz
gcc-75e2b35dd0456a148805eae3e7c0e55c6336c263.tar.bz2
rs6000: Add -mdejagnu-cpu=
This adds an option -mdejagnu-cpu=. This option simply overrides what is given in -mcpu=. The reason for this is that with older versions of DejaGnu the value given in the RUNTESTFLAGS will override the value a testcase wants to have. * config/rs6000/rs6000.c (rs6000_option_override_internal): If rs6000_dejagnu_cpu_index is set, use that to override rs6000_cpu_index. * config/rs6000/rs6000.opt (mdejagnu-cpu=): New option. From-SVN: r269322
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/rs6000/rs6000.c3
-rw-r--r--gcc/config/rs6000/rs6000.opt7
3 files changed, 16 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7c73196..d198b3b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2019-03-01 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/rs6000.c (rs6000_option_override_internal): If
+ rs6000_dejagnu_cpu_index is set, use that to override rs6000_cpu_index.
+ * config/rs6000/rs6000.opt (mdejagnu-cpu=): New option.
+
2019-03-01 Alexander Monakov <amonakov@ispras.ru>
PR rtl-optimization/85899
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index b1249bc..b489bef 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -3869,6 +3869,9 @@ rs6000_option_override_internal (bool global_init_p)
/* Don't override by the processor default if given explicitly. */
set_masks &= ~rs6000_isa_flags_explicit;
+ if (global_init_p && rs6000_dejagnu_cpu_index >= 0)
+ rs6000_cpu_index = rs6000_dejagnu_cpu_index;
+
/* Process the -mcpu=<xxx> and -mtune=<xxx> argument. If the user changed
the cpu in a target attribute or pragma, but did not specify a tuning
option, use the cpu for the tuning option rather than the option specified
diff --git a/gcc/config/rs6000/rs6000.opt b/gcc/config/rs6000/rs6000.opt
index 2e90bf3..f4b5c91 100644
--- a/gcc/config/rs6000/rs6000.opt
+++ b/gcc/config/rs6000/rs6000.opt
@@ -385,6 +385,13 @@ mtune=
Target RejectNegative Joined Var(rs6000_tune_index) Init(-1) Enum(rs6000_cpu_opt_value) Save
-mtune= Schedule code for given CPU.
+; Only for use in the testsuite. This simply overrides -mcpu=. With older
+; versions of Dejagnu the command line arguments you set in RUNTESTFLAGS
+; override those set in the testcases; with this option, the testcase will
+; always win.
+mdejagnu-cpu=
+Target Undocumented RejectNegative Joined Var(rs6000_dejagnu_cpu_index) Init(-1) Enum(rs6000_cpu_opt_value) Save
+
mtraceback=
Target RejectNegative Joined Enum(rs6000_traceback_type) Var(rs6000_traceback)
-mtraceback=[full,part,no] Select type of traceback table.