aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDoug Evans <dje@gnu.org>1993-04-26 11:52:51 +0000
committerDoug Evans <dje@gnu.org>1993-04-26 11:52:51 +0000
commit0cd02cbbfb635002ecd371f79243933fc34b1f47 (patch)
treeb8c6b868b21919c5c71a4034eebb92270046664c /gcc
parent33d9bef5abfde175c943db1d2c1a3172c0ba21e4 (diff)
downloadgcc-0cd02cbbfb635002ecd371f79243933fc34b1f47.zip
gcc-0cd02cbbfb635002ecd371f79243933fc34b1f47.tar.gz
gcc-0cd02cbbfb635002ecd371f79243933fc34b1f47.tar.bz2
(ASM_OUTPUT_LONG_DOUBLE): New macro.
From-SVN: r4234
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/sparc/sparc.h11
-rw-r--r--gcc/config/sparc/sysv4.h13
2 files changed, 24 insertions, 0 deletions
diff --git a/gcc/config/sparc/sparc.h b/gcc/config/sparc/sparc.h
index 0322d5c..b5a4346 100644
--- a/gcc/config/sparc/sparc.h
+++ b/gcc/config/sparc/sparc.h
@@ -1629,6 +1629,17 @@ extern struct rtx_def *legitimize_pic_address ();
fprintf (FILE, "\t.single 0r%.9g\n", VALUE); \
}
+/* This is how to output an assembler line defining a `long double'
+ constant. */
+
+#define ASM_OUTPUT_LONG_DOUBLE(FILE,VALUE) \
+ { \
+ long t[4]; \
+ REAL_VALUE_TO_TARGET_LONG_DOUBLE ((VALUE), t); \
+ fprintf (FILE, "\t%s\t0x%lx\n\t%s\t0x%lx\n\t%s\t0x%lx\n\t%s\t0x%lx\n", \
+ ASM_LONG, t[0], ASM_LONG, t[1], ASM_LONG, t[2], ASM_LONG, t[3]); \
+ }
+
/* This is how to output an assembler line defining an `int' constant. */
#define ASM_OUTPUT_INT(FILE,VALUE) \
diff --git a/gcc/config/sparc/sysv4.h b/gcc/config/sparc/sysv4.h
index 6759ae3..f36fd35 100644
--- a/gcc/config/sparc/sysv4.h
+++ b/gcc/config/sparc/sysv4.h
@@ -184,3 +184,16 @@ do { long value[2]; \
#endif /* word order matches */
#endif /* HOST_FLOAT_FORMAT == TARGET_FLOAT_FORMAT */
+
+/* This is how to output an assembler line defining a `long double'
+ constant. */
+
+#undef ASM_OUTPUT_LONG_DOUBLE
+#define ASM_OUTPUT_LONG_DOUBLE(FILE,VALUE) \
+do { long value[4]; \
+ REAL_VALUE_TO_TARGET_LONG_DOUBLE ((VALUE), value); \
+ fprintf((FILE), "\t.long\t0x%x\n", value[0]); \
+ fprintf((FILE), "\t.long\t0x%x\n", value[1]); \
+ fprintf((FILE), "\t.long\t0x%x\n", value[2]); \
+ fprintf((FILE), "\t.long\t0x%x\n", value[3]); \
+ } while (0)