From: Maciej W. Rozycki Date: Fri, 8 Jan 2021 01:50:27 +0000 (+0000) Subject: VAX: Use a mode with `const_double_zero' expressions X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c38bbf5eed1061634df192cf56086adc0410e7d8;p=gcc.git 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): Add mode to operands and `const_double_zero'. --- 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" - [(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))])