From ac135a731d319ec86562f7ff4a42453df3078836 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Wed, 21 Jun 2017 22:02:00 +0200 Subject: [PATCH] re PR target/81151 (-Wmaybe-uninitialized in insn-emit.c) PR target/81151 * config/i386/sse.md (round2): Renumber match_dup and operands indexes to avoid gap between operands and match_dups. From-SVN: r249469 --- gcc/ChangeLog | 6 ++++++ gcc/config/i386/sse.md | 14 +++++++------- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ea97b0badff..d40f0c8c324 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2017-06-21 Jakub Jelinek + + PR target/81151 + * config/i386/sse.md (round2): Renumber match_dup and + operands indexes to avoid gap between operands and match_dups. + 2017-06-21 Andrew Pinski * config/aarch64/aarch64-cost-tables.h (thunderx_extra_costs): diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md index 29a039d5b36..f61ae2bb927 100644 --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -15638,13 +15638,13 @@ (set_attr "mode" "")]) (define_expand "round2" - [(set (match_dup 4) + [(set (match_dup 3) (plus:VF (match_operand:VF 1 "register_operand") - (match_dup 3))) + (match_dup 2))) (set (match_operand:VF 0 "register_operand") (unspec:VF - [(match_dup 4) (match_dup 5)] + [(match_dup 3) (match_dup 4)] UNSPEC_ROUND))] "TARGET_ROUND && !flag_trapping_math" { @@ -15664,11 +15664,11 @@ vec_half = ix86_build_const_vector (mode, true, half); vec_half = force_reg (mode, vec_half); - operands[3] = gen_reg_rtx (mode); - emit_insn (gen_copysign3 (operands[3], vec_half, operands[1])); + operands[2] = gen_reg_rtx (mode); + emit_insn (gen_copysign3 (operands[2], vec_half, operands[1])); - operands[4] = gen_reg_rtx (mode); - operands[5] = GEN_INT (ROUND_TRUNC); + operands[3] = gen_reg_rtx (mode); + operands[4] = GEN_INT (ROUND_TRUNC); }) (define_expand "round2_sfix" -- 2.30.2