r205999 - Debug info: (Bugfix) Make sure artificial functions like _GLOBAL__I_a
Adrian Prantl
aprantl at apple.com
Fri Apr 11 16:53:20 PDT 2014
On Apr 11, 2014, at 3:27 PM, Eric Christopher <echristo at gmail.com> wrote:
> On Fri, Apr 11, 2014 at 3:26 PM, Adrian Prantl <aprantl at apple.com> wrote:
>>
>> On Apr 11, 2014, at 3:24 PM, Eric Christopher <echristo at gmail.com> wrote:
>>
>>> So from looking at this it doesn't appear that we have any address
>>> range or location information for _GLOBAL__I_a anymore which is
>>> exactly what I was worried about:
>>>
>>> 0x000000d0: DW_TAG_subprogram [13]
>>> DW_AT_MIPS_linkage_name [DW_FORM_strp] (
>>> .debug_str[0x00000099] = "_GLOBAL__I_a")
>>> DW_AT_artificial [DW_FORM_flag_present] (true)
>>> DW_AT_accessibility [DW_FORM_data1] (0x01)
>>>
>>> versus before:
>>>
>>> 0x000000d0: DW_TAG_subprogram [13]
>>> DW_AT_MIPS_linkage_name [DW_FORM_strp] (
>>> .debug_str[0x00000099] = "_GLOBAL__I_a")
>>> DW_AT_decl_file [DW_FORM_data1] (0x03)
>>> DW_AT_decl_line [DW_FORM_data1] (0x66)
>>> DW_AT_artificial [DW_FORM_flag_present] (true)
>>> DW_AT_accessibility [DW_FORM_data1] (0x01)
>>> DW_AT_low_pc [DW_FORM_addr] (0x0000000000000020)
>>> DW_AT_high_pc [DW_FORM_data4] (0x0000000b)
>>> DW_AT_frame_base [DW_FORM_exprloc] (<0x1> 56 )
>>>
>>> Now we don't have any note that this code belongs to this compile
>>> unit, etc. I think this part is incorrect. We should have scope and
>>> line information for this - even if it's line 0 etc. (Though I think
>>> the location of the variable would be a better one).
>>>
>>
>> Interesting! That was unintentional. I'll fix that.
>>
>
> Thanks!
Fixed in CFE r206088.
0x000000e5: TAG_subprogram [13]
AT_MIPS_linkage_name( "_GLOBAL__I_a" )
AT_artificial( 0x01 )
AT_accessibility( DW_ACCESS_public )
AT_low_pc( 0x00000000000003e0 )
AT_high_pc( 0x00000000000003eb )
AT_frame_base( rbp )
-- adrian
More information about the cfe-commits
mailing list