summary refs log tree commit diff
path: root/ports/ChangeLog.ia64
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2013-03-10 11:49:29 +0000
committerMike Frysinger <vapier@gentoo.org>2013-03-12 06:00:05 -0400
commitc5abd7ce01539dc5224f7533c9d1048900992317 (patch)
treecca3fe48d201c7078fd530f55913ce9ce01eec83 /ports/ChangeLog.ia64
parentb7845b638818f32401070f00a61d3b42595ab223 (diff)
downloadglibc-c5abd7ce01539dc5224f7533c9d1048900992317.tar.gz
glibc-c5abd7ce01539dc5224f7533c9d1048900992317.tar.xz
glibc-c5abd7ce01539dc5224f7533c9d1048900992317.zip
ia64: fix strict aliasing warnings with func descriptors
Function pointers on ia64 are like parisc -- they're plabels.  While
the parisc port enjoys a gcc builtin for extracting the address here,
ia64 has no such luck.

Casting & dereferencing in one go triggers a strict aliasing warning.
Use a union to fix that.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'ports/ChangeLog.ia64')
-rw-r--r--ports/ChangeLog.ia6412
1 files changed, 12 insertions, 0 deletions
diff --git a/ports/ChangeLog.ia64 b/ports/ChangeLog.ia64
index c0cf5c9dc6..82ae703593 100644
--- a/ports/ChangeLog.ia64
+++ b/ports/ChangeLog.ia64
@@ -1,3 +1,15 @@
+2013-03-12  Mike Frysinger  <vapier@gentoo.org>
+
+	* sysdeps/ia64/dl-fptr.h (ELF_PTR_TO_FDESC): New definition.
+	* sysdeps/ia64/dl-machine.h (elf_machine_runtime_setup): Change
+	struct fdesc * casts to use new ELF_PTR_TO_FDESC helper.
+	* sysdeps/ia64/entry.h: Include link.h and dl-fptr.h.
+	(ENTRY_POINT): Change cast to use new ELF_PTR_TO_FDESC helper.
+	* sysdeps/unix/sysv/linux/ia64/makecontext.c: Include link.h and
+	dl-fptr.h.
+	(struct fdesc): Remove structure, now redundant.
+	(makecontext): Change casts to use new ELF_PTR_TO_FDESC helper.
+
 2013-03-11  Andreas Jaeger  <aj@suse.de>
 
 	* sysdeps/unix/sysv/linux/ia64/bits/mman.h: Remove all defines