https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112919
--- Comment #22 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by LuluCheng <chengl...@gcc.gnu.org>: https://gcc.gnu.org/g:8f0ff6b998748f3581e0f06e3108193866b1209d commit r14-9824-g8f0ff6b998748f3581e0f06e3108193866b1209d Author: Lulu Cheng <chengl...@loongson.cn> Date: Tue Apr 2 14:29:08 2024 +0800 LoongArch: Set default alignment for functions jumps and loops [PR112919]. Xi Ruoyao set the alignment rules under LA464 in commit r14-1839, but the macro ASM_OUTPUT_ALIGN_WITH_NOP was removed in R14-4674, which affected the alignment rules. So I set different aligns on LA464 and LA664 again to test the performance of spec2006, and modify the alignment based on the test results. gcc/ChangeLog: PR target/112919 * config/loongarch/loongarch-def.cc (la664_align): Newly defined function that sets alignment rules under the LA664 microarchitecture. * config/loongarch/loongarch-opts.cc (loongarch_target_option_override): If not optimizing for size, set the default alignment to what the target wants. * config/loongarch/loongarch-tune.h (struct loongarch_align): Add new member variables jump and loop.