aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/ia64/ia64.md6
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c0a5305..79d622e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2000-08-29 Richard Henderson <rth@cygnus.com>
+ * config/ia64/ia64.md (muldi3): Use grfr_register_operand
+ for the inputs.
+
+2000-08-29 Richard Henderson <rth@cygnus.com>
+
* reload.c (push_secondary_reload): Allow class == reload_class
if we're using a reload_in/out pattern.
diff --git a/gcc/config/ia64/ia64.md b/gcc/config/ia64/ia64.md
index 6bbf992..59bbb0c 100644
--- a/gcc/config/ia64/ia64.md
+++ b/gcc/config/ia64/ia64.md
@@ -1509,10 +1509,12 @@
"sub %0 = %2, %1, 1"
[(set_attr "type" "A")])
+;; ??? Use grfr instead of fr because of virtual register elimination
+;; and silly test cases multiplying by the frame pointer.
(define_insn "muldi3"
[(set (match_operand:DI 0 "fr_register_operand" "=f")
- (mult:DI (match_operand:DI 1 "fr_register_operand" "f")
- (match_operand:DI 2 "fr_register_operand" "f")))]
+ (mult:DI (match_operand:DI 1 "grfr_register_operand" "f")
+ (match_operand:DI 2 "grfr_register_operand" "f")))]
""
"xma.l %0 = %1, %2, f0%B0"
[(set_attr "type" "F")])