aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/nds32
diff options
context:
space:
mode:
authorjasonwucj <jasonwucj@138bc75d-0d04-0410-961f-82ee72b054a4>2015-01-13 05:22:25 +0000
committerjasonwucj <jasonwucj@138bc75d-0d04-0410-961f-82ee72b054a4>2015-01-13 05:22:25 +0000
commitd1bacc44d5821cffb4952f338b7d99c4e21eca91 (patch)
tree78110f41849c2119b10ae05feb3287548c3ee148 /gcc/config/nds32
parentda2e70a9ce3679a777391dc426b6454106483f60 (diff)
[NDS32] Remove -mgp-direct/-mno-gp-direct options.
gcc/ * common/config/nds32/nds32-common.c (TARGET_DEFAULT_TARGET_FLAGS): Remove MASK_GP_DIRECT flag. * config/nds32/nds32.h (MULTILIB_DEFAULTS): Have -mcmodel=medium as one of the multilib default options. * config/nds32/nds32.opt (mgp-direct): Remove. * config/nds32/t-mlibs (MULTILIB_OPTIONS): Use -mcmodel instead of -mgp-direct. We also remove unnecessary -mlittle-endian/-mbig-endian. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219510 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/nds32')
-rw-r--r--gcc/config/nds32/nds32.h19
-rw-r--r--gcc/config/nds32/nds32.opt4
-rw-r--r--gcc/config/nds32/t-mlibs14
3 files changed, 13 insertions, 24 deletions
diff --git a/gcc/config/nds32/nds32.h b/gcc/config/nds32/nds32.h
index 7c38f7f7b35..d9a55adff48 100644
--- a/gcc/config/nds32/nds32.h
+++ b/gcc/config/nds32/nds32.h
@@ -391,17 +391,22 @@ enum nds32_builtins
#define ENDFILE_SPEC \
" %{!mno-ctor-dtor:crtend1.o%s}"
-/* The TARGET_BIG_ENDIAN_DEFAULT is defined if we configure gcc
- with --target=nds32be-* setting.
- Check gcc/config.gcc for more information.
- In addition, currently we only have elf toolchain,
- where mgp-direct is always the default. */
+/* The TARGET_BIG_ENDIAN_DEFAULT is defined if we
+ configure gcc with --target=nds32be-* setting.
+ Check gcc/config.gcc for more information. */
#ifdef TARGET_BIG_ENDIAN_DEFAULT
-#define MULTILIB_DEFAULTS { "mbig-endian", "mgp-direct" }
+# define NDS32_ENDIAN_DEFAULT "mbig-endian"
#else
-#define MULTILIB_DEFAULTS { "mlittle-endian", "mgp-direct" }
+# define NDS32_ENDIAN_DEFAULT "mlittle-endian"
#endif
+/* Currently we only have elf toolchain,
+ where -mcmodel=medium is always the default. */
+#define NDS32_CMODEL_DEFAULT "mcmodel=medium"
+
+#define MULTILIB_DEFAULTS \
+ { NDS32_ENDIAN_DEFAULT, NDS32_CMODEL_DEFAULT }
+
/* Run-time Target Specification. */
diff --git a/gcc/config/nds32/nds32.opt b/gcc/config/nds32/nds32.opt
index 346c9c073f1..fa8a6cea6fa 100644
--- a/gcc/config/nds32/nds32.opt
+++ b/gcc/config/nds32/nds32.opt
@@ -53,10 +53,6 @@ m16-bit
Target Report Mask(16_BIT)
Generate 16-bit instructions.
-mgp-direct
-Target Report Mask(GP_DIRECT)
-Generate GP base instructions directly.
-
misr-vector-size=
Target RejectNegative Joined UInteger Var(nds32_isr_vector_size) Init(NDS32_DEFAULT_ISR_VECTOR_SIZE)
Specify the size of each interrupt vector, which must be 4 or 16.
diff --git a/gcc/config/nds32/t-mlibs b/gcc/config/nds32/t-mlibs
index dd70205e123..d9e5ba4b952 100644
--- a/gcc/config/nds32/t-mlibs
+++ b/gcc/config/nds32/t-mlibs
@@ -18,21 +18,9 @@
# along with GCC; see the file COPYING3. If not see
# <http://www.gnu.org/licenses/>.
-# We need to build following multilibs combinations:
-#
-# 1. <None multilibs>
-# 2. -mlittle-endian
-# 3. -mbig-endian
-# 4. -mgp-direct
-# 5. -mno-gp-direct
-# 6. -mlittle-endian -mgp-direct
-# 7. -mlittle-endian -mno-gp-direct
-# 8. -mbig-endian -mgp-direct
-# 9. -mbig-endian -mno-gp-direct
-#
# We also define a macro MULTILIB_DEFAULTS in nds32.h that tells the
# driver program which options are defaults for this target and thus
# do not need to be handled specially.
-MULTILIB_OPTIONS = mlittle-endian/mbig-endian mgp-direct/mno-gp-direct
+MULTILIB_OPTIONS = mcmodel=small/mcmodel=medium/mcmodel=large
# ------------------------------------------------------------------------