https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119910
Bug ID: 119910 Summary: [15 regression] Commit 'combine: Allow 2->2 combinations...' causes regression in Snappy workload for -mcpu=neoverse-v2 Product: gcc Version: 15.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: jschmitz at gcc dot gnu.org CC: rsandifo at gcc dot gnu.org Target Milestone: --- Target: aarch64 Created attachment 61177 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=61177&action=edit Script to reproduce snappy regression The commit 'combine: Allow 2->2 combinations, but with a tweak [PR116398]' (https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=4d7a634f6d41029811cdcbd5f7282b5b07890094) causes changes in performance for the Snappy workload for -mcpu=neoverse-v2, including some regressions. In the attachment is a script to reproduce the regressions. It builds GCC from commits 546f28f83ce and 4d7a634f6d4 and runs Snappy with -O3 -Wl,-z,muldefs -lm -mcpu=neoverse-v2. Use it like this: parentdir=<path/to/gcc_src/parentdir> ./snappy_script.sh As of today, we observed the following runtime changes (values are percentages; positive values mean that running Snappy from commit 4d7a634f6d4 has longer runtime than from commit 546f28f83ce): BM_UFlat/5/1 -2.39362 BM_UValidate/5/2 2.85714 BM_UValidate/6/2 2.04461 BM_UValidate/10/2 -2.79503 BM_UValidate/11/2 -5.4321 BM_UIOVecSource/0/1 18.0723 BM_UIOVecSource/5/1 5.10949 BM_UIOVecSource/10/1 8.59951 BM_UIOVecSource/11/1 2.39044 BM_UIOVecSink/3 2.22222 BM_UFlatSink/7/1 3.22581 BM_UFlatSink/7/2 3.85164 BM_ZFlat/0/1 19.0184 BM_ZFlat/3/1 -2.08333 BM_ZFlat/3/2 -2.51799 BM_ZFlat/5/1 4.41176 BM_ZFlat/10/1 9.02256 BM_ZFlat/11/1 2.39044 In the past, we have also seen regressions in several of the UValidate tests.