https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109549
--- Comment #17 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Kong Lingling <kongl...@gcc.gnu.org>: https://gcc.gnu.org/g:d826f7945609046f922732b138fb90795d5b1985 commit r15-313-gd826f7945609046f922732b138fb90795d5b1985 Author: konglin1 <lingling.k...@intel.com> Date: Wed May 8 15:46:10 2024 +0800 x86: Fix cmov cost model issue [PR109549] (if_then_else:SI (eq (reg:CCZ 17 flags) (const_int 0 [0])) (reg/v:SI 101 [ e ]) (reg:SI 102)) The cost is 8 for the rtx, the cost for (eq (reg:CCZ 17 flags) (const_int 0 [0])) is 4, but this is just an operator do not need to compute it's cost in cmov. gcc/ChangeLog: PR target/109549 * config/i386/i386.cc (ix86_rtx_costs): The XEXP (x, 0) for cmov is an operator do not need to compute cost. gcc/testsuite/ChangeLog: * gcc.target/i386/cmov6.c: Fixed.