From a01a33a2dde5c0a69563431f3057621a2e74c62a Mon Sep 17 00:00:00 2001 From: Daniel Cederman Date: Mon, 28 Sep 2015 05:30:31 +0000 Subject: [PATCH] Make muser-mode the default for LEON3 2015-09-28 Daniel Cederman Make muser-mode the default for LEON3 The muser-mode flag causes the CASA instruction for LEON3 to use the user mode ASI. This is the correct behavior for almost all LEON3 targets. For this reason it makes sense to make user mode the default. gcc/ * config/sparc/sparc.opt: Rename mask from USER_MODE to SV_MODE and make it inverse to change default * config/sparc/sync.md: Only use supervisor ASI for CASA when in supervisor mode * doc/invoke.texi: Document change of default From-SVN: r228184 --- gcc/ChangeLog | 8 ++++++++ gcc/config/sparc/sparc.opt | 4 ++-- gcc/config/sparc/sync.md | 6 +++--- gcc/doc/invoke.texi | 4 ++-- 4 files changed, 15 insertions(+), 7 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6eb3032aeef..7fb87ea2cb9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2015-09-28 Daniel Cederman + + * config/sparc/sparc.opt: Rename mask from USER_MODE to SV_MODE + and make it inverse to change default + * config/sparc/sync.md: Only use supervisor ASI for CASA when in + supervisor mode + * doc/invoke.texi: Document change of default + 2015-09-28 Daniel Cederman * config/sparc/sparc.c (sparc_function_value_regno_p): Do not return diff --git a/gcc/config/sparc/sparc.opt b/gcc/config/sparc/sparc.opt index 93d24a69be3..85bf0bdb493 100644 --- a/gcc/config/sparc/sparc.opt +++ b/gcc/config/sparc/sparc.opt @@ -114,8 +114,8 @@ Target Optimize tail call instructions in assembler and linker muser-mode -Target Report Mask(USER_MODE) -Do not generate code that can only run in supervisor mode +Target Report InverseMask(SV_MODE) +Do not generate code that can only run in supervisor mode (default) mcpu= Target RejectNegative Joined Var(sparc_cpu_and_features) Enum(sparc_processor_type) Init(PROCESSOR_V7) diff --git a/gcc/config/sparc/sync.md b/gcc/config/sparc/sync.md index 7d00b1080b4..2fabff5f67f 100644 --- a/gcc/config/sparc/sync.md +++ b/gcc/config/sparc/sync.md @@ -222,10 +222,10 @@ UNSPECV_CAS))] "TARGET_LEON3" { - if (TARGET_USER_MODE) - return "casa\t%1 0xa, %2, %0"; /* ASI for user data space. */ - else + if (TARGET_SV_MODE) return "casa\t%1 0xb, %2, %0"; /* ASI for supervisor data space. */ + else + return "casa\t%1 0xa, %2, %0"; /* ASI for user data space. */ } [(set_attr "type" "multi")]) diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 407eb8e8fa1..50cc52010ff 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -21299,8 +21299,8 @@ in a performance loss, especially for floating-point code. @opindex muser-mode @opindex mno-user-mode Do not generate code that can only run in supervisor mode. This is relevant -only for the @code{casa} instruction emitted for the LEON3 processor. The -default is @option{-mno-user-mode}. +only for the @code{casa} instruction emitted for the LEON3 processor. This +is the default. @item -mno-faster-structs @itemx -mfaster-structs -- 2.30.2