[llvm-commits] PATCH: DebugInfo lib: fix instruction address lookup in line table

Alexey Samsonov samsonov at google.com
Mon Aug 6 05:00:05 PDT 2012


On Mon, Aug 6, 2012 at 2:50 PM, Benjamin Kramer <benny.kra at gmail.com> wrote:

>
> On 06.08.2012, at 10:39, Alexey Samsonov <samsonov at google.com> wrote:
>
> > Benjamin,
> >
> > Could you take a look at this? (or redirect me to someone else for
> review).
>
> Sorry, for the delay, been crazy busy over the last weeks.
>
> This looks good to me. I'm a bit worried because the lookup code was taken
> pretty much 1:1 from lldb (see
> source/Plugins/SymbolFile/DWARF/DWARFDebugLine.cpp). Does it have the same
> bugs?
>

Yeah, I took a look at LLDB code, but it doesn't seem to have this bug:
instead of storing parsed line table rows in a vector it passes them as an
argument to callback, and can't search in this table.


>
> - Ben
>
> >
> > On Wed, Jul 25, 2012 at 9:15 PM, Alexey Samsonov <samsonov at google.com>
> wrote:
> > Could you please take a look?
> >
> > (re-attaching the patch just in case)
> >
> > On Fri, Jul 20, 2012 at 4:35 PM, Alexey Samsonov <samsonov at google.com>
> wrote:
> > Hi!
> >
> > This patch fixes the representation of debug line table in DebugInfo
> LLVM library. Instead of just collection of rows, debug line table for
> compilation unit is now
> > treated as the number of row ranges, describing sequences [1]. The
> sequences are not always listed in the order of increasing address, so
> > the previously used std::lower_bound() sometimes produced wrong results.
> Now the instruction address lookup consists of two stages: finding the
> > correct sequence, and searching for address in range of rows for this
> sequence.
> >
> > [1] dwarfstd: "Sequence - A series of contiguous target machine
> instructions. One compilation unit may emit multiple sequences
> > (that is, not all instructions within a compilation unit are assumed to
> be contiguous)"
> >
> > Code review: http://codereview.appspot.com/6423064/
> >
> > --
> > Alexey Samsonov, MSK
> >
> >
> >
> >
> > --
> > Alexey Samsonov, MSK
> >
>
>


-- 
Alexey Samsonov, MSK
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20120806/f67e2ee3/attachment.html>


More information about the llvm-commits mailing list