aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2011-04-07 22:25:55 +0100
committerJoseph Myers <jsm28@gcc.gnu.org>2011-04-07 22:25:55 +0100
commit39e7722bbfdce2277b92dd8d0df62399051c7c7a (patch)
tree54e91f95deb915d04884b63b9de838d1fb05a93c /gcc
parentcf103ca449e8f5e38f42b107b3271b18c73c59a5 (diff)
downloadgcc-39e7722bbfdce2277b92dd8d0df62399051c7c7a.zip
gcc-39e7722bbfdce2277b92dd8d0df62399051c7c7a.tar.gz
gcc-39e7722bbfdce2277b92dd8d0df62399051c7c7a.tar.bz2
m68k.c (m68k_handle_option): Don't handle OPT_m68000...
* config/m68k/m68k.c (m68k_handle_option): Don't handle OPT_m68000, OPT_mc68000, OPT_m68010, OPT_m68020, OPT_mc68020, OPT_m68030, OPT_m68040, OPT_m68060, OPT_m68302, OPT_m68332 and OPT_mcpu32. * config/m68k/m68k.h (OPTION_DEFAULT_SPECS, ASM_CPU_SPEC): Don't handle -mc68000, -m68000, -m68302, -m68010, -mc68020, -m68020, -m68030, -m68040, -m68060, -mcpu32 and -m68332. * config/m68k/m68k.opt (m68000, m68010, m68020, m68030, m68040, m68060, m68302, m68332, mc68000, mc68020, mcpu32): Use Alias. * config/m68k/t-mlibs (CANONICALIZE_OPTIONS): Remove. (MULTILIB_OPTIONS): Don't use $(CANONICALIZE_OPTIONS). (MULTILIB_MATCHES): Map -march= options to corresponding -mcpu= options. Don't map other m68k options manually. Don't handle old-style options as canonical. (MULTILIB_EXCEPTIONS): Don't use $(CANONICALIZE_OPTIONS). * doc/install.texi (m68k-*-*): Document binutils version requirement. From-SVN: r172130
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog20
-rw-r--r--gcc/config/m68k/m68k.c27
-rw-r--r--gcc/config/m68k/m68k.h9
-rw-r--r--gcc/config/m68k/m68k.opt22
-rw-r--r--gcc/config/m68k/t-mlibs31
-rw-r--r--gcc/doc/install.texi2
6 files changed, 45 insertions, 66 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2c18085..f54b864 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,23 @@
+2011-04-07 Joseph Myers <joseph@codesourcery.com>
+
+ * config/m68k/m68k.c (m68k_handle_option): Don't handle
+ OPT_m68000, OPT_mc68000, OPT_m68010, OPT_m68020, OPT_mc68020,
+ OPT_m68030, OPT_m68040, OPT_m68060, OPT_m68302, OPT_m68332 and
+ OPT_mcpu32.
+ * config/m68k/m68k.h (OPTION_DEFAULT_SPECS, ASM_CPU_SPEC): Don't
+ handle -mc68000, -m68000, -m68302, -m68010, -mc68020, -m68020,
+ -m68030, -m68040, -m68060, -mcpu32 and -m68332.
+ * config/m68k/m68k.opt (m68000, m68010, m68020, m68030, m68040,
+ m68060, m68302, m68332, mc68000, mc68020, mcpu32): Use Alias.
+ * config/m68k/t-mlibs (CANONICALIZE_OPTIONS): Remove.
+ (MULTILIB_OPTIONS): Don't use $(CANONICALIZE_OPTIONS).
+ (MULTILIB_MATCHES): Map -march= options to corresponding -mcpu=
+ options. Don't map other m68k options manually. Don't handle
+ old-style options as canonical.
+ (MULTILIB_EXCEPTIONS): Don't use $(CANONICALIZE_OPTIONS).
+ * doc/install.texi (m68k-*-*): Document binutils version
+ requirement.
+
2011-04-07 Eric Botcazou <ebotcazou@adacore.com>
* basic-block.h (force_nonfallthru): Move to...
diff --git a/gcc/config/m68k/m68k.c b/gcc/config/m68k/m68k.c
index 654b681..3953d01 100644
--- a/gcc/config/m68k/m68k.c
+++ b/gcc/config/m68k/m68k.c
@@ -499,17 +499,6 @@ m68k_handle_option (struct gcc_options *opts, struct gcc_options *opts_set,
case OPT_mtune_:
return m68k_find_selection (&m68k_tune_entry, all_microarchs, arg);
- case OPT_m68000:
- case OPT_mc68000:
- return m68k_find_selection (&m68k_cpu_entry, all_devices, "68000");
-
- case OPT_m68010:
- return m68k_find_selection (&m68k_cpu_entry, all_devices, "68010");
-
- case OPT_m68020:
- case OPT_mc68020:
- return m68k_find_selection (&m68k_cpu_entry, all_devices, "68020");
-
case OPT_m68020_40:
return (m68k_find_selection (&m68k_tune_entry, all_microarchs,
"68020-40")
@@ -520,22 +509,6 @@ m68k_handle_option (struct gcc_options *opts, struct gcc_options *opts_set,
"68020-60")
&& m68k_find_selection (&m68k_cpu_entry, all_devices, "68020"));
- case OPT_m68030:
- return m68k_find_selection (&m68k_cpu_entry, all_devices, "68030");
-
- case OPT_m68040:
- return m68k_find_selection (&m68k_cpu_entry, all_devices, "68040");
-
- case OPT_m68060:
- return m68k_find_selection (&m68k_cpu_entry, all_devices, "68060");
-
- case OPT_m68302:
- return m68k_find_selection (&m68k_cpu_entry, all_devices, "68302");
-
- case OPT_m68332:
- case OPT_mcpu32:
- return m68k_find_selection (&m68k_cpu_entry, all_devices, "68332");
-
case OPT_mshared_library_id_:
if (value > MAX_LIBRARY_ID)
error ("-mshared-library-id=%s is not between 0 and %d",
diff --git a/gcc/config/m68k/m68k.h b/gcc/config/m68k/m68k.h
index d2805f3..d853d78 100644
--- a/gcc/config/m68k/m68k.h
+++ b/gcc/config/m68k/m68k.h
@@ -30,9 +30,8 @@ along with GCC; see the file COPYING3. If not see
/* Handle --with-cpu default option from configure script. */
#define OPTION_DEFAULT_SPECS \
- { "cpu", "%{!mc68000:%{!m68000:%{!m68302:%{!m68010:%{!mc68020:%{!m68020:\
-%{!m68030:%{!m68040:%{!m68020-40:%{!m68020-60:%{!m68060:%{!mcpu32:%{!m68332:\
-%{!mcpu=*:%{!march=*:-%(VALUE)}}}}}}}}}}}}}}}" },
+ { "cpu", "%{!m68020-40:%{!m68020-60:\
+%{!mcpu=*:%{!march=*:-%(VALUE)}}}}" },
/* Pass flags to gas indicating which type of processor we have. This
can be simplified when we can rely on the assembler supporting .cpu
@@ -40,9 +39,7 @@ along with GCC; see the file COPYING3. If not see
#define ASM_CPU_SPEC "\
%{m68851}%{mno-68851} %{m68881}%{mno-68881} %{msoft-float:-mno-float} \
-%{m68000}%{m68302}%{mc68000}%{m68010}%{m68020}%{mc68020}%{m68030}\
-%{m68040}%{m68020-40:-m68040}%{m68020-60:-m68040}\
-%{m68060}%{mcpu32}%{m68332}\
+%{m68020-40:-m68040}%{m68020-60:-m68040}\
%{mcpu=*:-mcpu=%*}%{march=*:-march=%*}\
"
#define ASM_PCREL_SPEC "%{fPIC|fpic|mpcrel:--pcrel} \
diff --git a/gcc/config/m68k/m68k.opt b/gcc/config/m68k/m68k.opt
index d1a5e11..2f0a63e 100644
--- a/gcc/config/m68k/m68k.opt
+++ b/gcc/config/m68k/m68k.opt
@@ -40,15 +40,15 @@ Target RejectNegative Alias(mcpu=, 5407)
Generate code for a 5407
m68000
-Target RejectNegative
+Target RejectNegative Alias(mcpu=, 68000)
Generate code for a 68000
m68010
-Target RejectNegative
+Target RejectNegative Alias(mcpu=, 68010)
Generate code for a 68010
m68020
-Target RejectNegative
+Target RejectNegative Alias(mcpu=, 68020)
Generate code for a 68020
m68020-40
@@ -60,23 +60,23 @@ Target RejectNegative
Generate code for a 68060, without any new instructions
m68030
-Target RejectNegative
+Target RejectNegative Alias(mcpu=, 68030)
Generate code for a 68030
m68040
-Target RejectNegative
+Target RejectNegative Alias(mcpu=, 68040)
Generate code for a 68040
m68060
-Target RejectNegative
+Target RejectNegative Alias(mcpu=, 68060)
Generate code for a 68060
m68302
-Target RejectNegative
+Target RejectNegative Alias(mcpu=, 68302)
Generate code for a 68302
m68332
-Target RejectNegative
+Target RejectNegative Alias(mcpu=, 68332)
Generate code for a 68332
; Has no effect on gcc
@@ -101,11 +101,11 @@ Target Report Mask(BITFIELD)
Use the bit-field instructions
mc68000
-Target RejectNegative
+Target RejectNegative Alias(mcpu=, 68000)
Generate code for a 68000
mc68020
-Target RejectNegative
+Target RejectNegative Alias(mcpu=, 68020)
Generate code for a 68020
mcfv4e
@@ -117,7 +117,7 @@ Target RejectNegative Joined
Specify the target CPU
mcpu32
-Target RejectNegative
+Target RejectNegative Alias(mcpu=, 68332)
Generate code for a cpu32
mdiv
diff --git a/gcc/config/m68k/t-mlibs b/gcc/config/m68k/t-mlibs
index 00fee73..11df31f 100644
--- a/gcc/config/m68k/t-mlibs
+++ b/gcc/config/m68k/t-mlibs
@@ -45,15 +45,9 @@ ifeq ($(filter m$(M68K_MLIB_DEFAULT),$(M68K_MLIB_CPUS)),)
$(error Error default cpu '$(target_cpu_default)' is not in multilib set '$(M68K_MLIB_CPUS)')
endif
-# Sed arguments that convert mcpu=* arguments into canonical forms.
-# We want to use the legacy m68* options instead of the new -mcpu=68*
-# options when compiling multilibs because the former are recognised
-# by older binutils.
-CANONICALIZE_OPTIONS = -e 's|mcpu=68|m68|g' -e 's|mcpu=cpu32|mcpu32|g'
-
MULTILIB_DIRNAMES := $(filter-out m$(M68K_MLIB_DEFAULT),$(M68K_MLIB_CPUS))
MULTILIB_OPTIONS := $(shell echo $(MULTILIB_DIRNAMES:m%=mcpu=%) \
- | sed -e 's| |/|g' $(CANONICALIZE_OPTIONS))
+ | sed -e 's| |/|g' )
# Add subtarget specific options & dirs.
MULTILIB_DIRNAMES += $(M68K_MLIB_DIRNAMES)
@@ -62,14 +56,13 @@ MULTILIB_OPTIONS += $(M68K_MLIB_OPTIONS)
MULTILIB_MATCHES :=
ifneq ($(M68K_ARCH),cf)
-# Map the new-style options to the legacy m68k ones.
-MULTILIB_MATCHES += m68000=mcpu?68000 m68000=march?68000 m68000=mc68000 \
- m68000=m68302 \
- m68020=mcpu?68020 m68020=march?68020 m68020=mc68020 \
- m68030=mcpu?68030 m68030=march?68030 \
- m68040=mcpu?68040 m68040=march?68040 \
- m68060=mcpu?68060 m68060=march?68060 \
- mcpu32=mcpu?cpu32 mcpu32=march?cpu32 mcpu32=m68332
+# Map -march=* options to the representative -mcpu=* option.
+MULTILIB_MATCHES += mcpu?68000=march?68000 \
+ mcpu?68020=march?68020 \
+ mcpu?68030=march?68030 \
+ mcpu?68040=march?68040 \
+ mcpu?68060=march?68060 \
+ mcpu?cpu32=march?cpu32
endif
ifneq ($(M68K_ARCH),m68k)
@@ -82,9 +75,7 @@ endif
MULTILIB_MATCHES += \
$(call M68K_AWK, \
(CPU_NAME != MLIB) $(M68K_MLIB_CPU), \
- (match(MLIB, "^68") || MLIB == "cpu32" \
- ? "m"MLIB"=mcpu?"CPU_NAME \
- : "mcpu?"MLIB"=mcpu?"CPU_NAME))
+ ("mcpu?"MLIB"=mcpu?"CPU_NAME))
MULTILIB_EXCEPTIONS :=
@@ -102,9 +93,5 @@ endif
MULTILIB_EXCEPTIONS := \
$(patsubst mcpu=$(M68K_MLIB_DEFAULT)/%,%,$(MULTILIB_EXCEPTIONS))
-# Convert all options to canonical form.
-MULTILIB_EXCEPTIONS := $(shell echo $(MULTILIB_EXCEPTIONS) | \
- sed $(CANONICALIZE_OPTIONS))
-
LIBGCC = stmp-multilib
INSTALL_LIBGCC = install-multilib
diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index d8a6a59..dfadb9d 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -3773,6 +3773,8 @@ be a @option{-mcpu} argument or one of the following values:
@samp{m68000}, @samp{m68010}, @samp{m68020}, @samp{m68030},
@samp{m68040}, @samp{m68060}, @samp{m68020-40} and @samp{m68020-60}.
+GCC requires at least binutils version 2.17 on these targets.
+
@html
<hr />
@end html