diff options
-rw-r--r-- | lto-plugin/ChangeLog | 6 | ||||
-rw-r--r-- | lto-plugin/lto-plugin.c | 4 |
2 files changed, 8 insertions, 2 deletions
diff --git a/lto-plugin/ChangeLog b/lto-plugin/ChangeLog index d802828f0e5..4b1200289ed 100644 --- a/lto-plugin/ChangeLog +++ b/lto-plugin/ChangeLog @@ -1,3 +1,9 @@ +2011-01-12 Richard Guenther <rguenther@suse.de> + + PR lto/47264 + * lto-plugin.c (parse_table_entry): Use memcpy to access + unaligned fields. + 2010-12-20 Dave Korn <dave.korn.cygwin@gmail.com> * Makefile.am (AM_LIBTOOLFLAGS): Define, adding disable-static tag. diff --git a/lto-plugin/lto-plugin.c b/lto-plugin/lto-plugin.c index ab18f4c6d9c..2f422a3dd70 100644 --- a/lto-plugin/lto-plugin.c +++ b/lto-plugin/lto-plugin.c @@ -249,10 +249,10 @@ parse_table_entry (char *p, struct ld_plugin_symbol *entry, entry->visibility = translate_visibility[t]; p++; - entry->size = *(uint64_t *) p; + memcpy (&entry->size, p, sizeof (uint64_t)); p += 8; - aux->slot = *(uint32_t *) p; + memcpy (&aux->slot, p, sizeof (uint32_t)); p += 4; entry->resolution = LDPR_UNKNOWN; |