summaryrefslogtreecommitdiffstats
path: root/contrib/binutils/libiberty/floatformat.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/binutils/libiberty/floatformat.c')
-rw-r--r--contrib/binutils/libiberty/floatformat.c54
1 files changed, 46 insertions, 8 deletions
diff --git a/contrib/binutils/libiberty/floatformat.c b/contrib/binutils/libiberty/floatformat.c
index 3cb78f5..b5d0121 100644
--- a/contrib/binutils/libiberty/floatformat.c
+++ b/contrib/binutils/libiberty/floatformat.c
@@ -66,7 +66,7 @@ const struct floatformat floatformat_ieee_double_littlebyte_bigword =
{
floatformat_littlebyte_bigword, 64, 0, 1, 11, 1023, 2047, 12, 52,
floatformat_intbit_no,
- "floatformat_ieee_double_little"
+ "floatformat_ieee_double_littlebyte_bigword"
};
const struct floatformat floatformat_i387_ext =
@@ -91,17 +91,17 @@ const struct floatformat floatformat_i960_ext =
};
const struct floatformat floatformat_m88110_ext =
{
-#ifdef HARRIS_FLOAT_FORMAT
+ floatformat_big, 80, 0, 1, 15, 0x3fff, 0x7fff, 16, 64,
+ floatformat_intbit_yes,
+ "floatformat_m88110_ext"
+};
+const struct floatformat floatformat_m88110_harris_ext =
+{
/* Harris uses raw format 128 bytes long, but the number is just an ieee
double, and the last 64 bits are wasted. */
floatformat_big,128, 0, 1, 11, 0x3ff, 0x7ff, 12, 52,
floatformat_intbit_no,
- "floatformat_m88110_ext(harris)"
-#else
- floatformat_big, 80, 0, 1, 15, 0x3fff, 0x7fff, 16, 64,
- floatformat_intbit_yes,
- "floatformat_m88110_ext"
-#endif /* HARRIS_FLOAT_FORMAT */
+ "floatformat_m88110_ext_harris"
};
const struct floatformat floatformat_arm_ext =
{
@@ -110,6 +110,44 @@ const struct floatformat floatformat_arm_ext =
floatformat_intbit_yes,
"floatformat_arm_ext"
};
+const struct floatformat floatformat_arm_ext_big =
+{
+ /* Bits 1 to 16 are unused. */
+ floatformat_big, 96, 0, 17, 15, 0x3fff, 0x7fff, 32, 64,
+ floatformat_intbit_yes,
+ "floatformat_arm_ext_big"
+};
+const struct floatformat floatformat_arm_ext_littlebyte_bigword =
+{
+ /* Bits 1 to 16 are unused. */
+ floatformat_littlebyte_bigword, 96, 0, 17, 15, 0x3fff, 0x7fff, 32, 64,
+ floatformat_intbit_yes,
+ "floatformat_arm_ext_littlebyte_bigword"
+};
+const struct floatformat floatformat_ia64_spill_big =
+{
+ floatformat_big, 128, 0, 1, 17, 65535, 0x1ffff, 18, 64,
+ floatformat_intbit_yes,
+ "floatformat_ia64_spill_big"
+};
+const struct floatformat floatformat_ia64_spill_little =
+{
+ floatformat_little, 128, 0, 1, 17, 65535, 0x1ffff, 18, 64,
+ floatformat_intbit_yes,
+ "floatformat_ia64_spill_little"
+};
+const struct floatformat floatformat_ia64_quad_big =
+{
+ floatformat_big, 128, 0, 1, 15, 16383, 0x7fff, 16, 112,
+ floatformat_intbit_no,
+ "floatformat_ia64_quad_big"
+};
+const struct floatformat floatformat_ia64_quad_little =
+{
+ floatformat_little, 128, 0, 1, 15, 16383, 0x7fff, 16, 112,
+ floatformat_intbit_no,
+ "floatformat_ia64_quad_little"
+};
static unsigned long get_field PARAMS ((unsigned char *,
enum floatformat_byteorders,
OpenPOWER on IntegriCloud