diff options
author | sje <sje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-08-04 18:32:37 +0000 |
---|---|---|
committer | sje <sje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-08-04 18:32:37 +0000 |
commit | 3cc9aaf18aefefd170f7f8ec76682a6679dc6da9 (patch) | |
tree | aeb803c62cd134d45b19cbdee16678cff31e4443 /gcc/config/ia64/constraints.md | |
parent | 2008c983ffb7dfdf757812a4e499203f760184c3 (diff) | |
download | gcc-3cc9aaf18aefefd170f7f8ec76682a6679dc6da9.tar.gz |
2010-07-29 Steve Ellcey <sje@cup.hp.com>
PR target/44583
* config/ia64/constraints.md (Z): New.
* config/ia64/predicates.md (fr_reg_or_signed_fp01_operand): New.
(xfreg_or_signed_fp01_operand): New.
* config/ia64/ia64.md (addsf3): Replace fr_reg_or_fp01_operand
with fr_reg_or_signed_fp01_operand and constraint G with Z.
(subsf3): Ditto.
(*maddsf4): Ditto.
(*msubsf4): Ditto.
(adddf3): Ditto.
(adddf3_trunc): Ditto.
(subdf3): Ditto.
(*subdf3_trunc): Ditto.
(*madddf4): Ditto.
(*madddf4_trunc): Ditto.
(*msubdf4): Ditto.
(*msubdf4_trunc): Ditto.
(addxf3): Replace xfreg_or_fp01_operand with
xfreg_or_signed_fp01_operand and constraint G with Z.
(*addxf3_truncsf): Ditto.
(*addxf3_truncdf): Ditto.
(subxf3): Ditto.
(*subxf3_truncsf): Ditto.
(*subxf3_truncdf): Ditto.
(*maddxf4): Ditto.
(*maddxf4_truncsf): Ditto.
(*maddxf4_truncdf): Ditto.
(*msubxf4): Ditto.
(*msubxf4_truncsf): Ditto.
(*msubxf4_truncdf): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@162869 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/ia64/constraints.md')
-rw-r--r-- | gcc/config/ia64/constraints.md | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/config/ia64/constraints.md b/gcc/config/ia64/constraints.md index 5d119131bba..aeb846e6c24 100644 --- a/gcc/config/ia64/constraints.md +++ b/gcc/config/ia64/constraints.md @@ -95,6 +95,13 @@ (and (match_code "const_double") (match_test "op == CONST0_RTX (mode) || op == CONST1_RTX (mode)"))) +(define_constraint "Z" + "1.0 or (0.0 and !flag_signed_zeros)" + (and (match_code "const_double") + (ior (match_test "op == CONST1_RTX (mode)") + (and (match_test "op == CONST0_RTX (mode)") + (match_test "!flag_signed_zeros"))))) + (define_constraint "H" "0.0" (and (match_code "const_double") |