* config/h8300/crti.asm: Use .h8300hn and .h8300sn for normal
authorkazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 30 May 2003 19:26:14 +0000 (19:26 +0000)
committerkazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 30 May 2003 19:26:14 +0000 (19:26 +0000)
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@67250 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/h8300/crti.asm
gcc/config/h8300/crtn.asm
gcc/config/h8300/elf.h
gcc/config/h8300/h8300.c
gcc/config/h8300/h8300.h
gcc/config/h8300/lib1funcs.asm

index 320cfb6..36afa30 100644 (file)
@@ -1,5 +1,17 @@
 2003-05-30  Dhananjay Deshpande  <dhananjayd@kpitcummins.com>
 
+       * 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  <dhananjayd@kpitcummins.com>
+
        * config/h8300/h8300.c (h8300_tiny_constant_address_p): Return
        true if TARGET_NORMAL_MODE.
 
index 9f28efd..8070a84 100644 (file)
@@ -38,12 +38,20 @@ 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
         .global  __init
index 5f6f984..5b7a1c0 100644 (file)
@@ -30,12 +30,20 @@ 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
 
index bfa4e81..c306993 100644 (file)
@@ -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}}"
index 5dfb0e5..1639fbf 100644 (file)
@@ -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);
index f1f118f..f4eafde 100644 (file)
@@ -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}"
 
index 2f62572..dc22e54 100644 (file)
@@ -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__