https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80706
--- Comment #5 from Uroš Bizjak <ubizjak at gmail dot com> --- --cut here-- diff --git a/gcc/config/i386/sync.md b/gcc/config/i386/sync.md index 20d46fe..d509be5 100644 --- a/gcc/config/i386/sync.md +++ b/gcc/config/i386/sync.md @@ -222,7 +222,8 @@ "!TARGET_64BIT && peep2_reg_dead_p (2, operands[0]) && rtx_equal_p (operands[4], adjust_address_nv (operands[2], DFmode, 0))" - [(set (match_dup 3) (match_dup 5))] + [(set (match_dup 3) (match_dup 5)) + (set (match_dup 4) (match_dup 3))] "operands[5] = gen_lowpart (DFmode, operands[1]);") (define_peephole2 @@ -235,7 +236,8 @@ "!TARGET_64BIT && peep2_reg_dead_p (2, operands[0]) && rtx_equal_p (operands[4], adjust_address_nv (operands[2], DFmode, 0))" - [(set (match_dup 3) (match_dup 5))] + [(set (match_dup 3) (match_dup 5)) + (set (match_dup 4) (match_dup 3))] "operands[5] = gen_lowpart (DFmode, operands[1]);") (define_expand "atomic_store<mode>" --cut here-- Jakub, does the above patch fix the failure?