summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej W. Rozycki <macro@linux-mips.org>2021-01-08 01:50:27 +0000
committerMaciej W. Rozycki <macro@linux-mips.org>2021-01-09 16:30:25 +0000
commitc38bbf5eed1061634df192cf56086adc0410e7d8 (patch)
treea39fab190535edba03ae55b6edc5f8faaa65b2a2
parentbe7e807242b36863a281df4343289b5687edd34e (diff)
downloadgcc-c38bbf5eed1061634df192cf56086adc0410e7d8.tar.gz
VAX: Use a mode with `const_double_zero' expressions
For predictable semantics propagate the mode from operands referred by the FP substitution to the `const_double_zero' expressions used with the associated condition code calculation. Use an iterator to make copies of the FP substitution across the FP modes supported as the substitution now has to match the mode of the operands. gcc/ * config/vax/vax.md (subst_f<cc>): Add mode to operands and `const_double_zero'.
-rw-r--r--gcc/config/vax/vax.md6
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/config/vax/vax.md b/gcc/config/vax/vax.md
index e5ab487c49d..49d3eab8a20 100644
--- a/gcc/config/vax/vax.md
+++ b/gcc/config/vax/vax.md
@@ -79,13 +79,13 @@
(match_dup 1))])
(define_subst "subst_f<cc>"
- [(set (match_operand 0 "")
- (match_operand 1 ""))
+ [(set (match_operand:VAXfp 0 "")
+ (match_operand:VAXfp 1 ""))
(clobber (reg:CC VAX_PSL_REGNUM))]
""
[(set (reg:VAXccnz VAX_PSL_REGNUM)
(compare:VAXccnz (match_dup 1)
- (const_double_zero)))
+ (const_double_zero:VAXfp)))
(set (match_dup 0)
(match_dup 1))])