>> Isn't this something that should be expressed in DWARF with >> DW_AT_ranges? See DWARF4, section 2.17, >> >> Does GCC generate such ranges? > > GCC does generate these ranges. However, according to Cary many tools > do not rely on dwarf info for locating the corresponding function > name, they just look at the symbols to identify what function an > address resides in. Nor would we want tools such as objdump and > profilers to rely on dwarf for locating the function names as this > would not work for binaries that were generated without -g options or > had their debug info stripped.
Yes, while the information needed is in the DWARF info, I don't think it's a good idea to depend on having debug info in all binaries. It's quite common to need to symbolize binaries that don't have debug info, and without a symbol such as Sri and Teresa are proposing, the result will be not just an address that didn't get symbolized, but an address that gets symbolized incorrectly (in a way that will often be quite misleading). -cary