https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115526
--- Comment #20 from Maciej W. Rozycki <macro at orcam dot me.uk> --- Created attachment 58687 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=58687&action=edit Test case modified to use scan-assembler-times instead (In reply to Uroš Bizjak from comment #17) > (In reply to Uroš Bizjak from comment #16) > > > Can you please test this slightly cleaned up testcase? > > Just put it in gcc/testsuite/gcc.target/alpha and do: > > make -k check-gcc RUNTESTFLASG=alpha.exp=pr115526.c Thank you for the detailed instructions, however I've been doing this stuff for decades now. I may not have been the most prolific contributor to the GNU toolchain, however I started back in 1998 and my very first patch was actually for the Alpha/Linux target. Anyway, I have verified your proposed test case and the results are as follows: FAIL: gcc.target/alpha/pr115526.c (test for excess errors) Excess errors: /tmp/ccQEE4xV.s:144: Error: duplicate !tlsgd!6 with pristine GCC 15 master and: PASS: gcc.target/alpha/pr115526.c (test for excess errors) with either your fix applied or with commit a291237b628f ("Remove simple ranges from trailing zero bitmasks.") reverted (trivially tweaked to cleanly apply). Alternatively `Bfree' could be marked `static' and a compilation only test used with { scan-assembler-times "!tlsgd!" 1 } to qualify to pass, to avoid relying on the assembler, as with the diff attached, which also works here. But I guess your test case as posted is good enough too.