diff options
author | Stephane Carrez <stcarrez@nerim.fr> | 2003-01-15 23:50:41 +0100 |
---|---|---|
committer | Stephane Carrez <ciceron@gcc.gnu.org> | 2003-01-15 23:50:41 +0100 |
commit | f077f1693bd11aee4daeb9bc9720f1f96161de46 (patch) | |
tree | 12c38b19c0fe8b1b2bebc77e0833956cc4ad0fe7 /gcc/config/m68hc11/m68hc12.h | |
parent | 09d096a8d7f2822f73cb60fae6748df3e76b2835 (diff) | |
download | gcc-f077f1693bd11aee4daeb9bc9720f1f96161de46.zip gcc-f077f1693bd11aee4daeb9bc9720f1f96161de46.tar.gz gcc-f077f1693bd11aee4daeb9bc9720f1f96161de46.tar.bz2 |
m68hc11.h (ASM_SPEC): Handle -m68hcs12...
* config/m68hc11/m68hc11.h (ASM_SPEC): Handle -m68hcs12; Pass -mshort
and -mshort-double to the assembler to specify the ABI.
(LINK_SPEC): Likewise.
(CPP_SPEC): Pass HCS12 specific define.
(MASK_M68S12): New define.
(TARGET_M68S12): Likewise.
(TARGET_SWITCHES): New options -m68hcs12 and -m68S12.
(TARGET_VERSION): Update.
* config/m68hc11/m68hc12.h (CPP_SPEC): Pass HCS12 specific define.
(LINK_SPEC): Update.
(ASM_SPEC): Update.
* config/m68hc11/m68hc11.c (m68hc11_asm_file_start): Update.
* doc/invoke.texi (M68hc1x Options): Document -m68hcs12.
From-SVN: r61358
Diffstat (limited to 'gcc/config/m68hc11/m68hc12.h')
-rw-r--r-- | gcc/config/m68hc11/m68hc12.h | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/gcc/config/m68hc11/m68hc12.h b/gcc/config/m68hc11/m68hc12.h index a9f09dd..498763e 100644 --- a/gcc/config/m68hc11/m68hc12.h +++ b/gcc/config/m68hc11/m68hc12.h @@ -1,6 +1,6 @@ /* Definitions of target machine for GNU compiler, for m68hc12. - Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc. - Contributed by Stephane Carrez (stcarrez@worldnet.fr). + Copyright (C) 1999, 2000, 2001, 2003 Free Software Foundation, Inc. + Contributed by Stephane Carrez (stcarrez@nerim.fr). This file is part of GNU CC. @@ -20,19 +20,26 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Compile and assemble for a 68hc12 unless there is a -m68hc11 option. */ -#define ASM_SPEC "%{m68hc11:-m68hc11}%{!m68hc11:-m68hc12}" +#define ASM_SPEC \ +"%{m68hc11:-m68hc11}" \ +"%{m68hcs12:-m68hcs12}" \ +"%{!m68hc11:%{!m68hcs12:-m68hc12}}" #define LIB_SPEC "" #define CC1_SPEC "" /* We need to tell the linker the target elf format. Just pass an emulation option. This can be overridden by -Wl option of gcc. */ -#define LINK_SPEC "%{m68hc11:-m m68hc11elf}%{!m68hc11:-m m68hc12elf}" +#define LINK_SPEC \ +"%{m68hc11:-m m68hc11elf}" \ +"%{m68hcs12:-m m68hc12elf}" \ +"%{!m68hc11:%{!m68hcs12:-m m68hc11elf}} %{mrelax:-relax}" #define CPP_SPEC \ "%{mshort:-D__HAVE_SHORT_INT__ -D__INT__=16}\ %{!mshort:-D__INT__=32}\ %{m68hc11:-Dmc6811 -DMC6811 -Dmc68hc11}\ - %{!m68hc11:-Dmc6812 -DMC6812 -Dmc68hc12}\ + %{!m68hc11:%{!m68hc12:-Dmc6812 -DMC6812 -Dmc68hc12}}\ + %{m68hcs12:-Dmc6812 -DMC6812 -Dmc68hcs12}\ %{fshort-double:-D__HAVE_SHORT_DOUBLE__}" /* Default target_flags if no switches specified. */ |