[llvm-commits] [llvm] r162657 - in /llvm/trunk: include/llvm/DebugInfo/DIContext.h lib/DebugInfo/DIContext.cpp lib/DebugInfo/DWARFContext.cpp lib/DebugInfo/DWARFContext.h lib/DebugInfo/DWARFDebugRangeList.cpp lib/DebugInfo/DWARFDebugRangeList.h t
NAKAMURA Takumi
geek4civic at gmail.com
Mon Aug 27 03:14:00 PDT 2012
2012/8/27 Alexey Samsonov <samsonov at google.com>:
> Author: samsonov
> Date: Mon Aug 27 02:17:47 2012
> New Revision: 162657
>
> URL: http://llvm.org/viewvc/llvm-project?rev=162657&view=rev
> Log:
> Add basic support for .debug_ranges section to LLVM's DebugInfo library.
> This section (introduced in DWARF-3) is used to define instruction address
> ranges for functions that are not contiguous and can't be described
> by low_pc/high_pc attributes (this is the usual case for inlined subroutines).
> The patch is the first step to support fetching complete inlining info from DWARF.
>
> Reviewed by Benjamin Kramer.
>
> Added:
> llvm/trunk/lib/DebugInfo/DWARFDebugRangeList.cpp
> llvm/trunk/lib/DebugInfo/DWARFDebugRangeList.h
> Modified:
> llvm/trunk/include/llvm/DebugInfo/DIContext.h
> llvm/trunk/lib/DebugInfo/DIContext.cpp
> llvm/trunk/lib/DebugInfo/DWARFContext.cpp
> llvm/trunk/lib/DebugInfo/DWARFContext.h
> llvm/trunk/test/DebugInfo/dwarfdump-test.test
> llvm/trunk/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
(snip)
> +void DWARFDebugRangeList::dump(raw_ostream &OS) const {
> + for (int i = 0, n = Entries.size(); i != n; ++i) {
> + const char *format_str = (AddressSize == 4) ? "%08x %08x %08x\n"
> + : "%08x %016x %016x\n";
> + OS << format(format_str, Offset, Entries[i].StartAddress,
> + Entries[i].EndAddress);
> + }
> + OS << format("%08x <End of list>\n", Offset);
> +}
It was i686-unsafe. Fixed in r162665.
...Takumi
More information about the llvm-commits
mailing list