https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93565
--- Comment #15 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Wilco Dijkstra <wi...@gcc.gnu.org>: https://gcc.gnu.org/g:5bfc8303ffe2d86e938d45f13cd99a39469dac4f commit r10-6598-g5bfc8303ffe2d86e938d45f13cd99a39469dac4f Author: Wilco Dijkstra <wdijk...@arm.com> Date: Wed Feb 12 18:23:21 2020 +0000 [AArch64] Set ctz rtx_cost (PR93565) Combine sometimes behaves oddly and duplicates ctz to remove an unnecessary sign extension. Avoid this by setting the cost for ctz to be higher than that of a simple ALU instruction. Deepsjeng performance improves by ~0.6%. gcc/ PR rtl-optimization/93565 * config/aarch64/aarch64.c (aarch64_rtx_costs): Add CTZ costs. testsuite/ PR rtl-optimization/93565 * gcc.target/aarch64/pr93565.c: New test.