summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoraldyh <aldyh@138bc75d-0d04-0410-961f-82ee72b054a4>2001-09-27 21:48:25 +0000
committeraldyh <aldyh@138bc75d-0d04-0410-961f-82ee72b054a4>2001-09-27 21:48:25 +0000
commitf544797c672041b9b982a3dcf897b53d1aee995c (patch)
treeaffcea06bdef0c93fcb283e050371de2c7f84f2f
parent997fdf4ae03fc53ec3f494542e4009aae0d1039c (diff)
downloadgcc-f544797c672041b9b982a3dcf897b53d1aee995c.tar.gz
(FUNCTION_VALUE): Change hardcoded 33 and 3 to macros.
LIBCALL_VALUE: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45849 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/rs6000/rs6000.h10
2 files changed, 12 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cc5d46d8966..6491a8194bf 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2001-09-27 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.h (FUNCTION_VALUE): Change hardcoded 33 and 3
+ to macros.
+ (LIBCALL_VALUE): Likewise.
+
2001-09-27 Neil Booth <neil@daikokuya.demon.co.uk>
* cpphash.h: Update comment.
diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h
index a1103a7b01f..3e8780da69a 100644
--- a/gcc/config/rs6000/rs6000.h
+++ b/gcc/config/rs6000/rs6000.h
@@ -1292,14 +1292,16 @@ typedef struct rs6000_stack {
&& TYPE_PRECISION (VALTYPE) < BITS_PER_WORD) \
|| POINTER_TYPE_P (VALTYPE) \
? word_mode : TYPE_MODE (VALTYPE), \
- TREE_CODE (VALTYPE) == REAL_TYPE && TARGET_HARD_FLOAT ? 33 : 3)
+ TREE_CODE (VALTYPE) == REAL_TYPE && TARGET_HARD_FLOAT \
+ ? FP_ARG_RETURN : GP_ARG_RETURN)
/* Define how to find the value returned by a library function
assuming the value has mode MODE. */
-#define LIBCALL_VALUE(MODE) \
- gen_rtx_REG (MODE, (GET_MODE_CLASS (MODE) == MODE_FLOAT \
- && TARGET_HARD_FLOAT ? 33 : 3))
+#define LIBCALL_VALUE(MODE) \
+ gen_rtx_REG (MODE, (GET_MODE_CLASS (MODE) == MODE_FLOAT \
+ && TARGET_HARD_FLOAT \
+ ? FP_ARG_RETURN : GP_ARG_RETURN))
/* The definition of this macro implies that there are cases where
a scalar value cannot be returned in registers.