From: H.J. Lu Date: Fri, 1 Aug 2025 15:34:49 +0000 (-0700) Subject: x86: Update *one_cmplqi_ext_1 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a58d770fa1d17ead3c38417b299cce3f19f392db;p=thirdparty%2Fgcc.git x86: Update *one_cmplqi_ext_1 After commit 965564eafb721f8000013a3112f1bba8d8fae32b Author: Richard Sandiford Date: Tue Jul 29 15:58:34 2025 +0100 simplify-rtx: Simplify subregs of logic ops combine generates (set (zero_extract:SI (reg/v:SI 101 [ a ]) (const_int 8 [0x8]) (const_int 8 [0x8])) (not:SI (sign_extract:SI (reg:SI 107 [ b ]) (const_int 8 [0x8]) (const_int 8 [0x8])))) instead of (set (zero_extract:SI (reg/v:SI 101 [ a ]) (const_int 8 [0x8]) (const_int 8 [0x8])) (subreg:SI (not:QI (subreg:QI (sign_extract:SI (reg:SI 107 [ b ]) (const_int 8 [0x8]) (const_int 8 [0x8])) 0)) 0)) Update *one_cmplqi_ext_1 to support the new pattern. PR target/121306 * config/i386/i386.md (*one_cmplqi_ext_1): Updated to support the new pattern. Signed-off-by: H.J. Lu --- diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index a50475bdaf4..a9d1948e441 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -15351,13 +15351,11 @@ (match_operand 0 "int248_register_operand" "+Q,&Q") (const_int 8) (const_int 8)) - (subreg:SWI248 - (not:QI - (subreg:QI - (match_operator:SWI248 2 "extract_operator" - [(match_operand 1 "int248_register_operand" "0,!Q") - (const_int 8) - (const_int 8)]) 0)) 0))] + (not:SWI248 + (match_operator:SWI248 2 "extract_operator" + [(match_operand 1 "int248_register_operand" "0,!Q") + (const_int 8) + (const_int 8)])))] "" "@ not{b}\t%h0 @@ -15370,11 +15368,8 @@ (match_dup 1) (const_int 8) (const_int 8))) (set (zero_extract:SWI248 (match_dup 0) (const_int 8) (const_int 8)) - (subreg:SWI248 - (not:QI - (subreg:QI - (match_op_dup 2 - [(match_dup 0) (const_int 8) (const_int 8)]) 0)) 0))] + (not:SWI248 + (match_op_dup 2 [(match_dup 0) (const_int 8) (const_int 8)])))] "" [(set_attr "type" "negnot") (set_attr "mode" "QI")])