summaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorDavid Edelsohn <edelsohn@gnu.org>2005-05-09 22:04:48 +0000
committerDavid Edelsohn <dje@gcc.gnu.org>2005-05-09 18:04:48 -0400
commit4a6ac6a5e6107c301a771ab2398ba3c3ae7ff946 (patch)
treebdbdc4824c9cdf8da2284977083d6063edbcc66a /gcc/config
parentc87e6352ed5daad3c13f0ca4056b07de910daf12 (diff)
downloadgcc-4a6ac6a5e6107c301a771ab2398ba3c3ae7ff946.tar.gz
re PR target/21477 (adddi3 becomes external reference rather than instruction on powerpc64)
PR target/21477 * config/rs6000/rs6000.md (add_op2): New. (add<mode>3): Use it. From-SVN: r99475
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/rs6000/rs6000.md5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md
index 0c8abb10f29..c627daf2d77 100644
--- a/gcc/config/rs6000/rs6000.md
+++ b/gcc/config/rs6000/rs6000.md
@@ -1006,10 +1006,13 @@
;; Fixed-point arithmetic insns.
+(define_mode_attr add_op2 [(SI "reg_or_arith_cint_operand")
+ (DI "reg_or_add_cint64_operand")])
+
(define_expand "add<mode>3"
[(set (match_operand:SDI 0 "gpc_reg_operand" "")
(plus:SDI (match_operand:SDI 1 "gpc_reg_operand" "")
- (match_operand:SDI 2 "reg_or_arith_cint_operand" "")))]
+ (match_operand:SDI 2 "<add_op2>" "")))]
""
"
{