aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEdmar Wienskoski <edmar@freescale.com>2010-06-09 00:15:46 +0000
committerAlan Modra <amodra@gcc.gnu.org>2010-06-09 09:45:46 +0930
commit2cc0672a02363b0d94e2fdcebe22e84bc346b166 (patch)
tree9ef2ffdf0391e0b55f436725d7da7c2ffb00fd9a
parentf1c3bf869c225208f9b987dec37de6f4ff256ba2 (diff)
downloadgcc-2cc0672a02363b0d94e2fdcebe22e84bc346b166.zip
gcc-2cc0672a02363b0d94e2fdcebe22e84bc346b166.tar.gz
gcc-2cc0672a02363b0d94e2fdcebe22e84bc346b166.tar.bz2
re PR target/44067 (internal compiler error: in rs6000_split_multireg_move, at config/rs6000/rs6000.c:16713)
PR target/44067 * config/rs6000/rs6000.md (DIFD): Do not split dpfp values for e500v2 target. From-SVN: r160449
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/rs6000/rs6000.md3
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index dc3390c..87a6c57 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2010-06-09 Edmar Wienskoski <edmar@freescale.com>
+
+ PR target/44067
+ * config/rs6000/rs6000.md (DIFD): Do not split dpfp values for
+ e500v2 target.
+
2010-06-09 Joern Rennecke <joern.rennecke@embecosm.com>
PR plugins/44459:
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md
index 3106648..9cfa74f 100644
--- a/gcc/config/rs6000/rs6000.md
+++ b/gcc/config/rs6000/rs6000.md
@@ -218,7 +218,8 @@
(TD "TARGET_DFP")])
; These modes do not fit in integer registers in 32-bit mode.
-(define_mode_iterator DIFD [DI DF DD])
+; but on e500v2, the gpr are 64 bit registers
+(define_mode_iterator DIFD [DI (DF "!TARGET_E500_DOUBLE") DD])
;; Iterator for reciprocal estimate instructions
(define_mode_iterator RECIPF [SF DF V4SF V2DF])