This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH] Export dfp sw layer functions to the back ends
- From: Andreas Krebbel <krebbel1 at de dot ibm dot com>
- To: gcc-patches at gcc dot gnu dot org
- Date: Fri, 16 Mar 2007 13:35:55 +0100
- Subject: [PATCH] Export dfp sw layer functions to the back ends
Hi,
the attached patch makes the dfp software layer functions available
to the back ends.
Bootstrapped on s390x.
OK for mainline?
Bye,
-Andreas-
2007-03-16 Andreas Krebbel <krebbel1@de.ibm.com>
* genemit.c (main): Print include statement for dfp.h.
* dfp.h (decimal_real_arithmetic): Hide prototype if enum tree_code
is not available.
Index: gcc/genemit.c
===================================================================
*** gcc/genemit.c.orig 2007-03-14 15:22:47.000000000 +0100
--- gcc/genemit.c 2007-03-14 15:22:50.000000000 +0100
*************** from the machine description file `md'.
*** 845,850 ****
--- 845,851 ----
printf ("#include \"expr.h\"\n");
printf ("#include \"optabs.h\"\n");
printf ("#include \"real.h\"\n");
+ printf ("#include \"dfp.h\"\n");
printf ("#include \"flags.h\"\n");
printf ("#include \"output.h\"\n");
printf ("#include \"insn-config.h\"\n");
Index: gcc/dfp.h
===================================================================
*** gcc/dfp.h.orig 2007-03-14 15:22:47.000000000 +0100
--- gcc/dfp.h 2007-03-14 15:22:50.000000000 +0100
*************** void decimal_round_for_format (const str
*** 38,47 ****
void decimal_real_convert (REAL_VALUE_TYPE *, enum machine_mode, const REAL_VALUE_TYPE *);
void decimal_real_to_decimal (char *, const REAL_VALUE_TYPE *, size_t, size_t, int);
void decimal_do_fix_trunc (REAL_VALUE_TYPE *, const REAL_VALUE_TYPE *);
- bool decimal_real_arithmetic (REAL_VALUE_TYPE *, enum tree_code, const REAL_VALUE_TYPE *,
- const REAL_VALUE_TYPE *);
void decimal_real_maxval (REAL_VALUE_TYPE *, int, enum machine_mode);
void decimal_real_to_integer2 (HOST_WIDE_INT *, HOST_WIDE_INT *, const REAL_VALUE_TYPE *);
HOST_WIDE_INT decimal_real_to_integer (const REAL_VALUE_TYPE *);
#endif /* GCC_DFP_H */
--- 38,50 ----
void decimal_real_convert (REAL_VALUE_TYPE *, enum machine_mode, const REAL_VALUE_TYPE *);
void decimal_real_to_decimal (char *, const REAL_VALUE_TYPE *, size_t, size_t, int);
void decimal_do_fix_trunc (REAL_VALUE_TYPE *, const REAL_VALUE_TYPE *);
void decimal_real_maxval (REAL_VALUE_TYPE *, int, enum machine_mode);
void decimal_real_to_integer2 (HOST_WIDE_INT *, HOST_WIDE_INT *, const REAL_VALUE_TYPE *);
HOST_WIDE_INT decimal_real_to_integer (const REAL_VALUE_TYPE *);
+ #ifdef TREE_CODE
+ bool decimal_real_arithmetic (REAL_VALUE_TYPE *, enum tree_code, const REAL_VALUE_TYPE *,
+ const REAL_VALUE_TYPE *);
+ #endif
+
#endif /* GCC_DFP_H */