On Wed, Dec 9, 2020 at 2:24 PM Seth Forshee <seth.fors...@canonical.com> wrote:
>
> Building the BPF selftests with clang 11, I'm getting the following
> error:
>
>    CLNG-LLC [test_maps] profiler1.o
>  In file included from progs/profiler1.c:6:
>  progs/profiler.inc.h:260:17: error: use of unknown builtin 
> '__builtin_preserve_enum_value' [-Wimplicit-function-declaration]
>                  int cgrp_id = bpf_core_enum_value(enum 
> cgroup_subsys_id___local,
>                                ^
>  
> /home/ubuntu/unstable/tools/testing/selftests/bpf/tools/include/bpf/bpf_core_read.h:179:2:
>  note: expanded from macro 'bpf_core_enum_value'
>          __builtin_preserve_enum_value(*(typeof(enum_type) *)enum_value, 
> BPF_ENUMVAL_VALUE)
>          ^
>  1 error generated.
>  llc: error: llc: <stdin>:1:1: error: expected top-level entity
>  BPF obj compilation failed

Addressed by fb3558127cb6 ("bpf: Fix selftest compilation on clang 11")

>
> I see that test_core_reloc_enumval.c takes precautions around the use of
> __builtin_preserve_enum_value as it is currently only available in clang
> 12 nightlies. Is it possible to do something similar here? Though I see
> that the use of the builtin is not nearly so neatly localized as it is
> in test_core_reloc_enumval.c.
>
> Thanks,
> Seth

Reply via email to