summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2000-10-26 23:05:17 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2000-10-26 23:05:17 +0000
commit76581d4542fec2e87c36e1967652eec7791c49e4 (patch)
treedb3b5fdfd74db042c5aed48d10546b6e519d7e73 /gcc
parent2a54a903bba4a00bb57380c3959bc9277f93d462 (diff)
downloadgcc-76581d4542fec2e87c36e1967652eec7791c49e4.tar.gz
* ia64.h (PREFERRED_RELOAD_CLASS): Force floating point constants
into memory. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@37075 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/ia64/ia64.h1
2 files changed, 6 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 4bac913cb00..eb7254354d6 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2000-10-26 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * ia64.h (PREFERRED_RELOAD_CLASS): Force floating point constants
+ into memory.
+
2000-10-26 Nathan Sidwell <nathan@codesourcery.com>
* tree.c (make_node, case 't'): Set alignment to that of
diff --git a/gcc/config/ia64/ia64.h b/gcc/config/ia64/ia64.h
index 6f13d8cbd57..9fd78f8317b 100644
--- a/gcc/config/ia64/ia64.h
+++ b/gcc/config/ia64/ia64.h
@@ -1021,6 +1021,7 @@ enum reg_class
#define PREFERRED_RELOAD_CLASS(X, CLASS) \
(CLASS == FR_REGS && GET_CODE (X) == MEM && MEM_VOLATILE_P (X) ? NO_REGS \
+ : CLASS == FR_REGS && GET_CODE (X) == CONST_DOUBLE ? NO_REGS \
: GET_RTX_CLASS (GET_CODE (X)) != 'o' && CLASS > GR_AND_FR_REGS ? NO_REGS \
: CLASS)