aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/h8300
diff options
context:
space:
mode:
authorDhananjay Deshpande <dhananjayd@kpitcummins.com>2003-05-30 19:26:14 +0000
committerKazu Hirata <kazu@gcc.gnu.org>2003-05-30 19:26:14 +0000
commit5c29d24c6293d8a79973c6b9af181a18961181be (patch)
treec3cce820d8a9ffcc9b3955555e4d8d313ade1092 /gcc/config/h8300
parenta75e5191508f79f96ab6cdb9dd5e6e54e411d509 (diff)
downloadgcc-5c29d24c6293d8a79973c6b9af181a18961181be.zip
gcc-5c29d24c6293d8a79973c6b9af181a18961181be.tar.gz
gcc-5c29d24c6293d8a79973c6b9af181a18961181be.tar.bz2
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
Diffstat (limited to 'gcc/config/h8300')
-rw-r--r--gcc/config/h8300/crti.asm8
-rw-r--r--gcc/config/h8300/crtn.asm8
-rw-r--r--gcc/config/h8300/elf.h2
-rw-r--r--gcc/config/h8300/h8300.c10
-rw-r--r--gcc/config/h8300/h8300.h2
-rw-r--r--gcc/config/h8300/lib1funcs.asm8
6 files changed, 34 insertions, 4 deletions
diff --git a/gcc/config/h8300/crti.asm b/gcc/config/h8300/crti.asm
index 9f28efd..8070a84 100644
--- a/gcc/config/h8300/crti.asm
+++ b/gcc/config/h8300/crti.asm
@@ -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
diff --git a/gcc/config/h8300/crtn.asm b/gcc/config/h8300/crtn.asm
index 5f6f984..5b7a1c0 100644
--- a/gcc/config/h8300/crtn.asm
+++ b/gcc/config/h8300/crtn.asm
@@ -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
diff --git a/gcc/config/h8300/elf.h b/gcc/config/h8300/elf.h
index bfa4e81..c306993 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 5dfb0e5..1639fbf 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 f1f118f..f4eafde 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 2f62572..dc22e54 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__