Excerpts from Segher Boessenkool's message of May 18, 2020 10:19 pm: > Hi! > > On Mon, May 18, 2020 at 04:35:22PM +1000, Michael Ellerman wrote: >> Nicholas Piggin <npig...@gmail.com> writes: >> > Provide an option to build big-endian kernels using the ELF V2 ABI. This >> > works >> > on GCC and clang (since about 2014). it is is not officially supported by >> > the >> > GNU toolchain, but it can give big-endian kernels some useful advantages >> > of >> > the V2 ABI (e.g., less stack usage). > >> This doesn't build with clang: >> >> /tmp/aesp8-ppc-dad624.s: Assembler messages: >> /tmp/aesp8-ppc-dad624.s: Error: .size expression for >> aes_p8_set_encrypt_key does not evaluate to a constant > > What does this assembler code that clang doesn't swallow look like? Is > that valid code? Etc.
The .size directive calculation is .text - .opd because the preprocessor isn't passing -mabi=elfv2 which makes our _GLOBAL function entry macro use the v1 convention. I guess I got the 64-bit vdso wrong as well, it should remain in ELFv1. Thanks, Nick