ramosian-glider / memory-sanitizer

Automatically exported from code.google.com/p/memory-sanitizer
0 stars 0 forks source link

Incorrect origin propagation for unaligned load/store #52

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
__sanitizer_unaligned_loadXX simply loads origin at (((uptr)p) & ~3UL).
This is wrong in the following case:

shadow [00 00 00 00] [00 ff ff ff]
origin [    A      ] [     B     ]

Unaligned load at offset 2, size 4, would return shadow [00 00 00 ff], origin 
A, which does not make sense. It must return origin B.

Original issue reported on code.google.com by euge...@google.com on 1 Apr 2014 at 12:56

GoogleCodeExporter commented 9 years ago
r205412.

Original comment by euge...@google.com on 2 Apr 2014 at 11:13

GoogleCodeExporter commented 9 years ago
Adding Project:MemorySanitizer as part of GitHub migration.

Original comment by gli...@google.com on 30 Jul 2015 at 9:22