================ @@ -35,6 +35,15 @@ static const char *BTFKindStr[] = { #include "llvm/DebugInfo/BTF/BTF.def" }; +static const DIType *tryRemoveAtomicType(const DIType *Ty) { ---------------- eddyz87 wrote:
I meant that it seems that `tryRemoveAtomicType` is missing from `BTFTypeTypeTag::completeType`, e.g. the following example drops type tag: ``` $ cat test5.c int _Atomic __attribute__((btf_type_tag("foo"))) *root; $ clang -c --target=bpf -g test5.c -O2 -o test5.o && bpftool btf dump file test5.o [1] PTR '(anon)' type_id=2 [2] INT 'int' size=4 bits_offset=0 nr_bits=32 encoding=SIGNED [3] VAR 'root' type_id=1, linkage=global [4] DATASEC '.bss' size=0 vlen=1 type_id=3 offset=0 size=8 (VAR 'root') ``` As far as I understand, expected output is: ``` [1] TYPE_TAG 'foo' type_id=3 [2] PTR '(anon)' type_id=1 [3] INT 'int' size=4 bits_offset=0 nr_bits=32 encoding=SIGNED [4] VAR 'root' type_id=2, linkage=global [5] DATASEC '.bss' size=0 vlen=1 type_id=4 offset=0 size=8 (VAR 'root') ``` https://github.com/llvm/llvm-project/pull/107343 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits