Re: [PATCH 2/3] powerpc: fix build errors

Nicholas Piggin
2022-02-24T02:55:03Z

Excerpts from Anders Roxell's message of February 23, 2022 11:58 pm:
> Building tinyconfig with gcc (Debian 11.2.0-16) and assembler (Debian
> 2.37.90.20220207) the following build error shows up:
>
> {standard input}: Assembler messages:
> {standard input}:1190: Error: unrecognized opcode: `stbcix'
> {standard input}:1433: Error: unrecognized opcode: `lwzcix'
> {standard input}:1453: Error: unrecognized opcode: `stbcix'
> {standard input}:1460: Error: unrecognized opcode: `stwcix'
> {standard input}:1596: Error: unrecognized opcode: `stbcix'
> ...
>
> Rework to add assembler directives [1] around the instruction. Going
> through the them one by one shows that the changes should be safe. Like
> __get_user_atomic_128_aligned() is only called in p9_hmi_special_emu(),
> which according to the name is specific to power9. And __raw_rm_read*()
> are only called in things that are powernv or book3s_hv specific.
>
> [1] https://sourceware.org/binutils/docs/as/PowerPC_002dPseudo.html#PowerPC_002dPseudo

Thanks for doing this. There is a recent patch committed to binutils to work
around this compiler bug.

https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=cebc89b9328

Not sure on the outlook for GCC fix. Either way unfortunately we have
toolchains in the wild now that will explode, so we might have to take
your patches for the time being.

Thanks,
Nick