[GOOGLE] Emit linkage_name when built with -gmlt and for abstract decls

Dehao Chen dehao@google.com
Fri May 30 22:23:00 GMT 2014


As we are pushing AutoFDO patch upstream, is this patch OK for trunk?

Thanks,
Dehao

On Mon, Aug 19, 2013 at 1:32 PM, Dehao Chen <dehao@google.com> wrote:
> After rerunning test, this will fail one gcc regression test. So I
> updated the patch to make sure all test will pass:
>
> Index: gcc/dwarf2out.c
> ===================================================================
> --- gcc/dwarf2out.c (revision 201850)
> +++ gcc/dwarf2out.c (working copy)
> @@ -16545,10 +16545,9 @@ add_src_coords_attributes (dw_die_ref die, tree de
>  static void
>  add_linkage_name (dw_die_ref die, tree decl)
>  {
> -  if (debug_info_level > DINFO_LEVEL_TERSE
> +  if (debug_info_level > DINFO_LEVEL_NONE
>        && (TREE_CODE (decl) == FUNCTION_DECL || TREE_CODE (decl) == VAR_DECL)
>        && TREE_PUBLIC (decl)
> -      && !DECL_ABSTRACT (decl)
>        && !(TREE_CODE (decl) == VAR_DECL && DECL_REGISTER (decl))
>        && die->die_tag != DW_TAG_member)
>      {
> Index: gcc/testsuite/g++.dg/debug/dwarf2/cdtor-1.C
> ===================================================================
> --- gcc/testsuite/g++.dg/debug/dwarf2/cdtor-1.C (revision 201850)
> +++ gcc/testsuite/g++.dg/debug/dwarf2/cdtor-1.C (working copy)
> @@ -14,4 +14,4 @@ main()
>    K k;
>  }
>
> -// { dg-final {scan-assembler-times " DW_AT_\[MIPS_\]*linkage_name" 2 } }
> +// { dg-final {scan-assembler-times " DW_AT_\[MIPS_\]*linkage_name" 4 } }
>
> On Mon, Aug 19, 2013 at 9:22 AM, Cary Coutant <ccoutant@google.com> wrote:
>>> This patch emits linkage_name at -gmlt. It also make sure abstract
>>> decls' linkage_names are emitted so that inlined functions can also
>>> find linkage name.
>>>
>>> Bootstrapped and passed regression test.
>>>
>>> OK for google branches?
>>
>> OK.
>>
>> -cary



More information about the Gcc-patches mailing list