From 5c29d24c6293d8a79973c6b9af181a18961181be Mon Sep 17 00:00:00 2001 From: Dhananjay Deshpande Date: Fri, 30 May 2003 19:26:14 +0000 Subject: [PATCH] crti.asm: Use .h8300hn and .h8300sn for normal mode. * config/h8300/crti.asm: Use .h8300hn and .h8300sn for normal mode. * config/h8300/crtn.asm: Likewise. * config/h8300/lib1funcs.asm: Likewise. * config/h8300/h8300.c (asm_file_start): Likewise. * config/h8300/elf.h (LINK_SPEC): Use h8300hnelf and h8300snelf emulations for normal mode. * config/h8300/h8300.h (LINK_SPEC): Use h8300hn and h8300sn emulations for normal mode. From-SVN: r67250 --- gcc/ChangeLog | 12 ++++++++++++ gcc/config/h8300/crti.asm | 8 ++++++++ gcc/config/h8300/crtn.asm | 8 ++++++++ gcc/config/h8300/elf.h | 2 +- gcc/config/h8300/h8300.c | 10 ++++++++-- gcc/config/h8300/h8300.h | 2 +- gcc/config/h8300/lib1funcs.asm | 8 ++++++++ 7 files changed, 46 insertions(+), 4 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 320cfb66155..36afa305490 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,15 @@ +2003-05-30 Dhananjay Deshpande + + * config/h8300/crti.asm: Use .h8300hn and .h8300sn for normal + mode. + * config/h8300/crtn.asm: Likewise. + * config/h8300/lib1funcs.asm: Likewise. + * config/h8300/h8300.c (asm_file_start): Likewise. + * config/h8300/elf.h (LINK_SPEC): Use h8300hnelf and + h8300snelf emulations for normal mode. + * config/h8300/h8300.h (LINK_SPEC): Use h8300hn and h8300sn + emulations for normal mode. + 2003-05-30 Dhananjay Deshpande * config/h8300/h8300.c (h8300_tiny_constant_address_p): Return diff --git a/gcc/config/h8300/crti.asm b/gcc/config/h8300/crti.asm index 9f28efddaa9..8070a84c600 100644 --- a/gcc/config/h8300/crti.asm +++ b/gcc/config/h8300/crti.asm @@ -38,11 +38,19 @@ Boston, MA 02111-1307, USA. */ such object files. */ #ifdef __H8300H__ +#ifdef __NORMAL_MODE__ + .h8300hn +#else .h8300h #endif +#endif #ifdef __H8300S__ +#ifdef __NORMAL_MODE__ + .h8300sn +#else .h8300s +#endif #endif .section .init diff --git a/gcc/config/h8300/crtn.asm b/gcc/config/h8300/crtn.asm index 5f6f9846f74..5b7a1c05a16 100644 --- a/gcc/config/h8300/crtn.asm +++ b/gcc/config/h8300/crtn.asm @@ -30,11 +30,19 @@ Boston, MA 02111-1307, USA. */ /* See an explanation about .init and .fini in crti.asm. */ #ifdef __H8300H__ +#ifdef __NORMAL_MODE__ + .h8300hn +#else .h8300h #endif +#endif #ifdef __H8300S__ +#ifdef __NORMAL_MODE__ + .h8300sn +#else .h8300s +#endif #endif .section .init rts diff --git a/gcc/config/h8300/elf.h b/gcc/config/h8300/elf.h index bfa4e814394..c306993602a 100644 --- a/gcc/config/h8300/elf.h +++ b/gcc/config/h8300/elf.h @@ -43,4 +43,4 @@ #define JUMP_TABLES_IN_TEXT_SECTION (flag_pic) #undef LINK_SPEC -#define LINK_SPEC "%{mh:-m h8300helf} %{ms:-m h8300self}" +#define LINK_SPEC "%{mh:%{mn:-m h8300hnelf}} %{mh:%{!mn:-m h8300helf}} %{ms:%{mn:-m h8300snelf}} %{ms:%{!mn:-m h8300self}}" diff --git a/gcc/config/h8300/h8300.c b/gcc/config/h8300/h8300.c index 5dfb0e5e119..1639fbfc6b9 100644 --- a/gcc/config/h8300/h8300.c +++ b/gcc/config/h8300/h8300.c @@ -699,9 +699,15 @@ asm_file_start (file) else if (optimize) fprintf (file, "; -O%d\n", optimize); if (TARGET_H8300H) - fprintf (file, "\n\t.h8300h\n"); + if (TARGET_NORMAL_MODE) + fprintf (file, "\n\t.h8300hn\n"); + else + fprintf (file, "\n\t.h8300h\n"); else if (TARGET_H8300S) - fprintf (file, "\n\t.h8300s\n"); + if (TARGET_NORMAL_MODE) + fprintf (file, "\n\t.h8300sn\n"); + else + fprintf (file, "\n\t.h8300s\n"); else fprintf (file, "\n\n"); output_file_directive (file, main_input_filename); diff --git a/gcc/config/h8300/h8300.h b/gcc/config/h8300/h8300.h index f1f118fb93d..f4eafdecbba 100644 --- a/gcc/config/h8300/h8300.h +++ b/gcc/config/h8300/h8300.h @@ -70,7 +70,7 @@ extern const char * const *h8_reg_names; } \ while (0) -#define LINK_SPEC "%{mh:-m h8300h} %{ms:-m h8300s}" +#define LINK_SPEC "%{mh:%{mn:-m h8300hn}} %{mh:%{!mn:-m h8300h}} %{ms:%{mn:-m h8300sn}} %{ms:%{!mn:-m h8300s}}" #define LIB_SPEC "%{mrelax:-relax} %{g:-lg} %{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p}" diff --git a/gcc/config/h8300/lib1funcs.asm b/gcc/config/h8300/lib1funcs.asm index 2f62572f225..dc22e54d60e 100644 --- a/gcc/config/h8300/lib1funcs.asm +++ b/gcc/config/h8300/lib1funcs.asm @@ -96,12 +96,20 @@ Boston, MA 02111-1307, USA. */ #endif #ifdef __H8300H__ +#ifdef __NORMAL_MODE__ + .h8300hn +#else .h8300h #endif +#endif #ifdef __H8300S__ +#ifdef __NORMAL_MODE__ + .h8300sn +#else .h8300s #endif +#endif #ifdef L_cmpsi2 #ifdef __H8300__