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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Aug 12, 2020 at 7:42 AM Jean-Philippe Brucker
<jean-philippe@xxxxxxxxxx> 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 <jakov.petrina@xxxxxxxxxx>
> Signed-off-by: Jean-Philippe Brucker <jean-philippe@xxxxxxxxxx>
> ---

LGTM.

Acked-by: Andrii Nakryiko <andriin@xxxxxx>

[...]



[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux