diff -up -r h8300.old/crti.asm h8300/crti.asm --- h8300.old/crti.asm Fri Feb 7 12:18:45 2003 +++ h8300/crti.asm Fri Feb 7 12:19:35 2003 @@ -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 -up -r h8300.old/crtn.asm h8300/crtn.asm --- h8300.old/crtn.asm Fri Feb 7 12:18:45 2003 +++ h8300/crtn.asm Fri Feb 7 12:19:35 2003 @@ -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 -up -r h8300.old/elf.h h8300/elf.h --- h8300.old/elf.h Fri Feb 7 12:18:45 2003 +++ h8300/elf.h Fri Feb 7 12:19:35 2003 @@ -51,4 +51,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 -up -r h8300.old/h8300.c h8300/h8300.c --- h8300.old/h8300.c Fri Feb 7 12:18:45 2003 +++ h8300/h8300.c Fri Feb 7 12:19:35 2003 @@ -698,9 +698,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 -up -r h8300.old/h8300.h h8300/h8300.h --- h8300.old/h8300.h Fri Feb 7 12:18:45 2003 +++ h8300/h8300.h Fri Feb 7 12:19:35 2003 @@ -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 -up -r h8300.old/lib1funcs.asm h8300/lib1funcs.asm --- h8300.old/lib1funcs.asm Fri Feb 7 12:18:45 2003 +++ h8300/lib1funcs.asm Fri Feb 7 12:19:35 2003 @@ -96,11 +96,19 @@ 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