Thread (3 messages) 3 messages, 3 authors, 2020-08-13

Re: [PATCH bpf v2] libbpf: Handle GCC built-in types for Arm NEON

From: Andrii Nakryiko <hidden>
Date: 2020-08-12 17:35:52
Also in: bpf

On Wed, Aug 12, 2020 at 7:42 AM Jean-Philippe Brucker
[off-list ref] wrote:
When building Arm NEON (SIMD) code from lib/raid6/neon.uc, GCC emits
DWARF information using a base type "__Poly8_t", which is internal to
GCC and not recognized by Clang. This causes build failures when
building with Clang a vmlinux.h generated from an arm64 kernel that was
built with GCC.

        vmlinux.h:47284:9: error: unknown type name '__Poly8_t'
        typedef __Poly8_t poly8x16_t[16];
                ^~~~~~~~~

The polyX_t types are defined as unsigned integers in the "Arm C
Language Extension" document (101028_Q220_00_en). Emit typedefs based on
standard integer types for the GCC internal types, similar to those
emitted by Clang.

Including linux/kernel.h to use ARRAY_SIZE() incidentally redefined
max(), causing a build bug due to different types, hence the seemingly
unrelated change.

Reported-by: Jakov Petrina <redacted>
Signed-off-by: Jean-Philippe Brucker <redacted>
---
LGTM.

Acked-by: Andrii Nakryiko <redacted>

[...]

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help