[PATCH] D50495: [DebugInfo] Do not generate duplicated label debug info if it has been processed.

Hsiangkai Wang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 13 03:17:27 PDT 2018


HsiangKai added a comment.

In https://reviews.llvm.org/D50495#1193599, @vext01 wrote:

> Hi HsiangKai,
>
> Thanks for looking into this.
>
> I've applied this diff to my LLVM clone (again, just before you DILabel codegen stuff was reverted) and rebuilt, but I can still see 0x0 `low_pc`s in the resulting label.
>
>   $ ls -al `which clang`
>   lrwxrwxrwx 1 vext01 vext01 7 Aug  1 16:16 /home/vext01/research/llvm/inst.debug/bin/clang -> clang-7
>   $ ls -al `which clang-7`
>   -rwxr-xr-x 1 vext01 vext01 2102557136 Aug  9 10:54 /home/vext01/research/llvm/inst.debug/bin/clan
>   $ clang -O0 -g example.ll -o example.o
>   warning: overriding the module target triple with x86_64-unknown-linux-gnu [-Woverride-module]
>   1 warning generated.
>   $ dwarfdump example.o
>   ...
>   < 2><0x00000041>      DW_TAG_label
>                           DW_AT_name                  XXXYYYZZZ
>                           DW_AT_decl_file             0x00000001 ./main.xxx
>                           DW_AT_decl_line             0x00000001
>                           DW_AT_low_pc                0x00000000
>   ...
>
>
> Do you have this change in a svn or git branch somewhere? There was some fuzz applying the diff, which might be the cause.


After syncing with vext01 by private messages, the difference is caused by FastISel. By default, X86 uses FastISel under -O0. I prepared a patch for FastISel in https://reviews.llvm.org/D50622.


Repository:
  rL LLVM

https://reviews.llvm.org/D50495





More information about the llvm-commits mailing list