Re: openbios fails to build with gcc-16 (powerpc code)
Michael Tokarev <[email protected]>
| Newsgroups | org.nongnu.qemu-devel |
|---|---|
| Message-ID | <[email protected]> |
On 8/6/26 15:23, Michael Tokarev wrote: > On 8/6/26 12:56, Michael Tokarev wrote: >> Hi! >> >> Since debian switch from gcc-15 to gcc-16, qemu fails to build openbios-powerpc: >> >> powerpc-linux-gnu-gcc -m32 -mcpu=604 ...\ >> roms/openbios/arch/ppc/qemu/start.S >> >> roms/openbios/arch/ppc/qemu/start.S:292: Error: unrecognized opcode: `clrldi' >> roms/openbios/arch/ppc/qemu/start.S:293: Error: unrecognized opcode: `mtmsrd' >> roms/openbios/arch/ppc/qemu/start.S:178: Error: unrecognized opcode: `std' >> [a lot of other similar errors] >> >> I know nothing about powerpc assembler. Google tells me mtmsrd is a 64bit-only >> instruction which can't be used in 32bit mode (which is in effect here). >> >> It feels like start.S uses the wrong assembly? I wonder how it worked before.. > > The issue boils down to missing -many option to as when using gcc-16. > With gcc-15, as is being run with > -a32 -mppc -many -mbig > but gcc-16 omits -many: > -a32 -mppc -mbig > Explicitly adding -Wa,-many lets the build to proceed. This seems to be a debian bug or gcc bug which is fixed in a later version (unfortunately searching for the term "many" isn't giving good results) -- https://bugs.debian.org/1143807 /mjt