Em Fri, Feb 05, 2021 at 04:23:59PM +0100, Sedat Dilek escreveu: > On Fri, Feb 5, 2021 at 3:41 PM Sedat Dilek <sedat.dilek@xxxxxxxxx> wrote: > > > > On Fri, Feb 5, 2021 at 3:37 PM Sedat Dilek <sedat.dilek@xxxxxxxxx> wrote: > > > > > > Hi, > > > > > > when building with pahole v1.20 and binutils v2.35.2 plus Clang > > > v12.0.0-rc1 and DWARF-v5 I see: > > > ... > > > + info BTF .btf.vmlinux.bin.o > > > + [ != silent_ ] > > > + printf %-7s %s\n BTF .btf.vmlinux.bin.o > > > BTF .btf.vmlinux.bin.o > > > + LLVM_OBJCOPY=/opt/binutils/bin/objcopy /opt/pahole/bin/pahole -J > > > .tmp_vmlinux.btf > > > [115] INT DW_ATE_unsigned_1 Error emitting BTF type > > > Encountered error while encoding BTF. > > > > Grepping the pahole sources: > > > > $ git grep DW_ATE > > dwarf_loader.c: bt->is_bool = encoding == DW_ATE_boolean; > > dwarf_loader.c: bt->is_signed = encoding == DW_ATE_signed; > > > > Missing DW_ATE_unsigned encoding? > > > > Checked the LLVM sources: > > clang/lib/CodeGen/CGDebugInfo.cpp: Encoding = > llvm::dwarf::DW_ATE_unsigned_char; > clang/lib/CodeGen/CGDebugInfo.cpp: Encoding = llvm::dwarf::DW_ATE_unsigned; > clang/lib/CodeGen/CGDebugInfo.cpp: Encoding = > llvm::dwarf::DW_ATE_unsigned_fixed; > clang/lib/CodeGen/CGDebugInfo.cpp: > ? llvm::dwarf::DW_ATE_unsigned > ... > lld/test/wasm/debuginfo.test:CHECK-NEXT: DW_AT_encoding > (DW_ATE_unsigned) > > So, I will switch from GNU ld.bfd v2.35.2 to LLD-12. Thanks for the research, probably your conclusion is correct, can you go the next step and add that part and check if the end result is the expected one? - Arnaldo