On Sun, Sep 16, 2012 at 06:03:24AM +0800, Dehao Chen wrote: > The dwarf4 specification says: > > If the value of the DW_AT_high_pc is of class address, it is the > relocated address of the first location past the last instruction > associated with the entity; if it is of class constant, the value is > an unsigned integer offset which when added to the low PC gives the > address of the first location past the last instruction associated > with the entity. > > However, I'm not sure how to tell how the DW_AT_high_pc's class is > represented...
You look at the form in which the attribute is encoded. If it is DW_FORM_addr then it is of class address, otherwise (DW_FORM_data1, DW_FORM_data2, DW_FORM_data4, DW_FORM_data8, DW_FORM_sdata or DW_FORM_udata) it is of class constant. Cheers, Mark