PR target/92791
* config/i386/i386.md (movstrict<mode>): Move test for
TARGET_PARTIAL_REG_STALL and not optimizing for size from
expander's condition to the body - FAIL; in that case.
From-SVN: r278989
+2019-12-05 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/92791
+ * config/i386/i386.md (movstrict<mode>): Move test for
+ TARGET_PARTIAL_REG_STALL and not optimizing for size from
+ expander's condition to the body - FAIL; in that case.
+
2019-12-03 Martin Sebor <msebor@redhat.com>
PR middle-end/91582
(define_expand "movstrict<mode>"
[(set (strict_low_part (match_operand:SWI12 0 "register_operand"))
(match_operand:SWI12 1 "general_operand"))]
- "!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)"
+ ""
{
gcc_assert (SUBREG_P (operands[0]));
- if (GET_MODE_CLASS (GET_MODE (SUBREG_REG (operands[0]))) != MODE_INT)
+ if ((TARGET_PARTIAL_REG_STALL && optimize_function_for_speed_p (cfun))
+ || GET_MODE_CLASS (GET_MODE (SUBREG_REG (operands[0]))) != MODE_INT)
FAIL;
})