Skip to content

Commit

Permalink
* config/m68k/m68k.c (m68k_handle_option): Don't handle
Browse files Browse the repository at this point in the history
	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.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172130 138bc75d-0d04-0410-961f-82ee72b054a4
  • Loading branch information
jsm28 committed Apr 7, 2011
1 parent 202bbc0 commit 17e4f17
Show file tree
Hide file tree
Showing 6 changed files with 45 additions and 66 deletions.
20 changes: 20 additions & 0 deletions gcc/ChangeLog
Original file line number Diff line number Diff line change
@@ -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...
Expand Down
27 changes: 0 additions & 27 deletions gcc/config/m68k/m68k.c
Original file line number Diff line number Diff line change
Expand Up @@ -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")
Expand All @@ -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",
Expand Down
9 changes: 3 additions & 6 deletions gcc/config/m68k/m68k.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,19 +30,16 @@ 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
and .arch directives. */

#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} \
Expand Down
22 changes: 11 additions & 11 deletions gcc/config/m68k/m68k.opt
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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
Expand All @@ -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
Expand All @@ -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
Expand Down
31 changes: 9 additions & 22 deletions gcc/config/m68k/t-mlibs
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand All @@ -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)
Expand All @@ -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 :=

Expand All @@ -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
2 changes: 2 additions & 0 deletions gcc/doc/install.texi
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down

0 comments on commit 17e4f17

Please sign in to comment.