summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2013-10-04 12:48:51 +0930
committerAlan Modra <amodra@gmail.com>2013-10-04 12:51:11 +0930
commit4cb81307b3771672864fa3a7498bd39c13267a00 (patch)
tree800315fa619bcf77cb3148cccf6845fb83a9bbda
parentf8e3e9f31bfd71641418897228fa1732170b69cc (diff)
Use stdint.h types in union unaligned.
* sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Use stdint types in rather than __attribute__((mode())). * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise.
-rw-r--r--ChangeLog6
-rw-r--r--sysdeps/powerpc/powerpc32/dl-machine.c4
-rw-r--r--sysdeps/powerpc/powerpc64/dl-machine.h8
3 files changed, 12 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 52bfa8ac7f..0280837858 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,12 @@
2013-10-04 Alan Modra <amodra@gmail.com>
* sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
+ Use stdint types in rather than __attribute__((mode())).
+ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
Correct handling of unaligned relocs for little-endian.
* sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise.
diff --git a/sysdeps/powerpc/powerpc32/dl-machine.c b/sysdeps/powerpc/powerpc32/dl-machine.c
index f81899a0ac..aba3618561 100644
--- a/sysdeps/powerpc/powerpc32/dl-machine.c
+++ b/sysdeps/powerpc/powerpc32/dl-machine.c
@@ -418,8 +418,8 @@ __process_machine_rela (struct link_map *map,
{
union unaligned
{
- unsigned u2 __attribute__ ((mode (HI)));
- unsigned u4 __attribute__ ((mode (SI)));
+ uint16_t u2;
+ uint32_t u4;
} __attribute__((__packed__));
switch (rinfo)
diff --git a/sysdeps/powerpc/powerpc64/dl-machine.h b/sysdeps/powerpc/powerpc64/dl-machine.h
index b69a1ce06f..18cf15738a 100644
--- a/sysdeps/powerpc/powerpc64/dl-machine.h
+++ b/sysdeps/powerpc/powerpc64/dl-machine.h
@@ -563,10 +563,10 @@ elf_machine_rela (struct link_map *map,
const Elf64_Sym *const refsym = sym;
union unaligned
{
- unsigned u2 __attribute__ ((mode (HI)));
- unsigned u4 __attribute__ ((mode (SI)));
- unsigned u8 __attribute__ ((mode (DI)));
- } __attribute__((__packed__));
+ uint16_t u2;
+ uint32_t u4;
+ uint64_t u8;
+ } __attribute__ ((__packed__));
if (r_type == R_PPC64_RELATIVE)
{