[PATCH v3] powerpc/64: Option to use ELF V2 ABI for big-endian kernels
Nicholas Piggin
npiggin at gmail.com
Thu May 21 12:23:47 AEST 2020
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 <npiggin at 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
More information about the Linuxppc-dev
mailing list