[PR debug/42896] introduce value uids to stabilize value compares

Alexandre Oliva aoliva@redhat.com
Sat Jan 30 10:19:00 GMT 2010


There may be multiple values with the same hash number, so we resorted
to comparing them by pointers, which causes instability that results in
different debug information when the heap is randomized in the kernel.

This patch introduces uids in values (no size change on 64-bit hosts),
using them instead of hashes for compares.  I had this as part of a
larger patch that introduced bitmaps of decls and values, that's why
var-tracking keeps them in non-overlapping ranges.

I could readily duplicate the problem without this patch, and I couldn't
duplicate it any more after the patch.  Regstrapped on x86_64-linux-gnu.
Ok to install?

-------------- next part --------------
A non-text attachment was scrubbed...
Name: vta-value-uids-pr42896.patch
Type: text/x-diff
Size: 18323 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20100130/8358c3d6/attachment.bin>
-------------- next part --------------

-- 
Alexandre Oliva, freedom fighter    http://FSFLA.org/~lxoliva/
You must be the change you wish to see in the world. -- Gandhi
Be Free! -- http://FSFLA.org/   FSF Latin America board member
Free Software Evangelist      Red Hat Brazil Compiler Engineer


More information about the Gcc-patches mailing list