Hi Thomas,
On Sun, Jan 04, 2026 at 11:14:13PM +0100, Thomas Weißschuh wrote:
Since LLVM commit 39e30508a7f6 ("[Driver][Sparc] Default to -mcpu=v9 for 32-bit Linux/sparc64 (#109278)"), clang defaults to -mcpu=v9 for 32-bit SPARC builds. -mcpu=v9 generates instructions which are not recognized by qemu-sparc and qemu-system-sparc. Instead qemu-sparc32plus and qemu-system-sparc64 with a 64-bit kernel and CONFIG_COMPAT are needed.
Rework the test setup so that -mcpu=v9 also works correctly.
Hmmm doesn't this mean that we're now unable to emit proper sparc32 instructions with this compiler ? I don't know which CPUs the kernel still supports, but if it still supports these old SS-5, maybe we should instead pass the correct -mcpu to clang so that it emits the expected instructions, otherwise we're just hiding the regressing by upgrading the test machine beyond what the kernel supports ? Of course if they're no longer supported that's different, but I'm still seeing traces of SparcStation5 in the code so I don't know what to think about this.
Thanks, Willy