pkgsrc-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: mariadb106-client fails to build on NetBSD 10 aarch64
mlelstv%serpens.de@localhost (Michael van Elst) writes:
> gdt%lexort.com@localhost (Greg Troxel) writes:
>
>>/tmp//cc11LXZf.s:43: Error: selected processor does not support `bti j'
>
>>BTI seems to be present on some aarch64 processors and not others, or
>>perhaps only does something on some.
>
> It's from the "Control Flow Integrity" feature that AFAIK was introduced
> in armv8.5-a. Older aarch64 processors treat the instruction as a NOP.
So it's ok for a program to end up with this instruction, in that it
will reliably either work or be a nop.
>>Reading the code, the bti instruction memonically is useed on gcc >=3D 9.1
>>and a hand-assembled opcode is used otherwise. I locally patched that
>>to gcc > 10, so it would use the opcode. That allowed the build to
>>continute. Replacing the package and rebooting, mariadb still works.
>
> It's the assembler that has problems with that instruction, not the compiler.
>
> On the other hand, binutils-2.34 (that we use with netbsd-10) was released
> after binutils got support for armv8.5-a, no idea why it fails.
How should we patch mariadb? Would it be reasonable to just always use
the hex opcode?
It is building on Darwin 23.6.0/aarch64 with clang, per BT, but there
are no NetBSD aarch64 builds.
Home |
Main Index |
Thread Index |
Old Index