aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDale Johannesen <dalej@apple.com>2001-11-16 01:06:37 +0000
committerDale Johannesen <dalej@gcc.gnu.org>2001-11-16 01:06:37 +0000
commit9f1a9740d4be2ced310548d845ac1d5d9a5d1fa5 (patch)
treebce7216a27b6675aa194bbf7601d250445da6541 /gcc
parenta06ef755a376209a3c757786b3931671b72fc771 (diff)
downloadgcc-9f1a9740d4be2ced310548d845ac1d5d9a5d1fa5.zip
gcc-9f1a9740d4be2ced310548d845ac1d5d9a5d1fa5.tar.gz
gcc-9f1a9740d4be2ced310548d845ac1d5d9a5d1fa5.tar.bz2
darwin.h (SELECT_RTX_SECTION): Force address initializers into 'const' section
* config/darwin.h (SELECT_RTX_SECTION): Force address initializers into 'const' section * config/rs6000/rs6000.c (rs6000_emit_cmove): Fix mode of if_then_else to match result, not operands From-SVN: r47076
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/darwin.h6
-rw-r--r--gcc/config/rs6000/rs6000.c2
3 files changed, 13 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index dfe54f5..06cb24e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2001-11-15 Dale Johannesen <dalej@apple.com>
+
+ * config/darwin.h (SELECT_RTX_SECTION): Force address
+ initializers into 'const' section
+ * config/rs6000/rs6000.c (rs6000_emit_cmove): Fix mode of
+ if_then_else to match result, not operands
+
Thu Nov 15 17:57:48 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* alias.c (nonoverlapping_memrefs): Use REGNO_PTR_FRAME_P.
diff --git a/gcc/config/darwin.h b/gcc/config/darwin.h
index 2b1826d..cfa2bd5 100644
--- a/gcc/config/darwin.h
+++ b/gcc/config/darwin.h
@@ -647,13 +647,17 @@ static void alias_section (name, alias) \
} \
while (0)
+/* This can be called with address expressions as "rtx".
+ They must go in "const". */
#undef SELECT_RTX_SECTION
#define SELECT_RTX_SECTION(mode, rtx, align) \
do \
{ \
if (GET_MODE_SIZE (mode) == 8) \
literal8_section (); \
- else if (GET_MODE_SIZE (mode) == 4) \
+ else if (GET_MODE_SIZE (mode) == 4 \
+ && (GET_CODE (rtx) == CONST_INT \
+ || GET_CODE (rtx) == CONST_DOUBLE)) \
literal4_section (); \
else \
const_section (); \
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index c51ed4e..186692d 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -5805,7 +5805,7 @@ rs6000_emit_cmove (dest, op, true_cond, false_cond)
}
emit_insn (gen_rtx_SET (VOIDmode, dest,
- gen_rtx_IF_THEN_ELSE (mode,
+ gen_rtx_IF_THEN_ELSE (GET_MODE (dest),
gen_rtx_GE (VOIDmode,
op0, op1),
true_cond, false_cond)));