https://gcc.gnu.org/g:a58d770fa1d17ead3c38417b299cce3f19f392db
commit r16-2786-ga58d770fa1d17ead3c38417b299cce3f19f392db Author: H.J. Lu <hjl.to...@gmail.com> Date: Fri Aug 1 08:34:49 2025 -0700 x86: Update *one_cmplqi_ext<mode>_1 After commit 965564eafb721f8000013a3112f1bba8d8fae32b Author: Richard Sandiford <richard.sandif...@arm.com> 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<mode>_1 to support the new pattern. PR target/121306 * config/i386/i386.md (*one_cmplqi_ext<mode>_1): Updated to support the new pattern. Signed-off-by: H.J. Lu <hjl.to...@gmail.com> Diff: --- gcc/config/i386/i386.md | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index a50475bdaf4c..a9d1948e4410 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")])