aboutsummaryrefslogtreecommitdiff
path: root/libcpp
diff options
context:
space:
mode:
authorYunQiang Su <syq@gcc.gnu.org>2024-06-18 17:03:51 +0800
committerYunQiang Su <syq@gcc.gnu.org>2024-06-21 10:53:26 +0800
commit7b67ec4b50ae523a1e1be410644abb627daa9590 (patch)
treed192f7386aefb8605530da8b8c84ff9bce458fcb /libcpp
parent52c112800d9f44457c4832309a48c00945811313 (diff)
downloadgcc-7b67ec4b50ae523a1e1be410644abb627daa9590.zip
gcc-7b67ec4b50ae523a1e1be410644abb627daa9590.tar.gz
gcc-7b67ec4b50ae523a1e1be410644abb627daa9590.tar.bz2
MIPS: Set condmove cost to SET(REG, REG)
On most uarch, the cost condmove is same as other noraml integer, and it should be COSTS_N_INSNS(1). In GCC12 or previous, the condmove is always enabled, and from GCC13, we start to compare the cost. The generic rtx_cost give the result of COSTS_N_INSN(2). Let's define it to COSTS_N_INSN(1) in mips_rtx_costs. gcc * config/mips/mips.cc(mips_rtx_costs): Set condmove cost. * config/mips/mips.md(mov<GPR:mode>_on_<MOVECC:mode>, mov<GPR:mode>_on_<MOVECC:mode>_mips16e2, mov<GPR:mode>_on_<GPR2:mode>_ne mov<GPR:mode>_on_<GPR2:mode>_ne_mips16e2): Define name by remove starting *, so that we can use CODE_FOR_. gcc/testsuite * gcc.target/mips/movcc-2.c: Add k?100:1000 test.
Diffstat (limited to 'libcpp')
0 files changed, 0 insertions, 0 deletions