[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-bugs-dist
Subject:    [valgrind] [Bug 356044] Dwarf line info reader misinterprets is_stmt register
From:       Philippe Waroquiers via KDE Bugzilla <bugzilla_noreply () kde ! org>
Date:       2015-12-03 21:56:19
Message-ID: bug-356044-17878-ivN2ju8j8e () http ! bugs ! kde ! org/
[Download RAW message or body]

https://bugs.kde.org/show_bug.cgi?id=356044

--- Comment #7 from Philippe Waroquiers <philippe.waroquiers@skynet.be> ---
(In reply to Ivo Raisr from comment #6)
> Created attachment 95828 [details]
> proposed patch
> 
> Adjacent DiLoc entries are now merged if they refer to the same line. This
> should give an improvement in terms of memory used.

Yes, results are good. With the patch, the memory  used is now similar to the
trunk.
Just one question: the merging is done when adding a new entry in the loctab
(i.e. in addLoc function). That is good to avoid uselessly growing the loctab 
during insertion.

I am wondering however if this merges all what can be merged.
Maybe it would be useful to also merge adjacent entries in canonicaliseLoctab
(after having sorted on addr) ?
This is of course only useful if there are non successive addLoc calls for
mergeable entries.

Otherwise, small style remark for the storage.c patch: I think (most of) the
code
splits the too long lines before the &&, not after.
so this
+      if ((previous->lineno == loc->lineno) &&
+          (previous->addr + previous->size == loc->addr)) {
should be
+      if ((previous->lineno == loc->lineno)
+          && (previous->addr + previous->size == loc->addr)) {

-- 
You are receiving this mail because:
You are watching all bug changes.
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic