https://llvm.org/bugs/show_bug.cgi?id=25463

            Bug ID: 25463
           Summary: Inlined callsite does not have discriminator emitted
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: DebugInfo
          Assignee: [email protected]
          Reporter: [email protected]
                CC: [email protected]
    Classification: Unclassified

We need to have discriminator emitted for the inlined callsites to attribute
profiles correctly to inlined instances.

# cat a.cc
void abc();
void xyz();

static void bar() { abc(); }
static void baz() { xyz(); }

void foo(int i) {
  bar(); baz();
}
# g++ -g -O2 a.cc -c
# objdump --dwarf=info a.o|grep -B 6 AT_GNU_discriminator
 <2><94>: Abbrev Number: 7 (DW_TAG_inlined_subroutine)
    <95>   DW_AT_abstract_origin: <0x35>    
    <99>   DW_AT_low_pc      : 0xd    
    <a1>   DW_AT_high_pc     : 0x5    
    <a9>   DW_AT_call_file   : 1    
    <aa>   DW_AT_call_line   : 8    
    <ab>   DW_AT_GNU_discriminator: 1    
# clang++ -g -O2 a.cc -c
# objdump --dwarf=info a.o|grep -B 6 AT_GNU_discriminator

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to