Bug#281993: [patch/hppa] add unwind information to plt fixup routine
Package: glibc
Version: 2.3.2-16
Tags: patch
Please consider including this patch in the next glibc upload, if it is
not picked up from cvs. Not urgent, but will help with gdb users.
thanks
randolph
#! /bin/sh -e
# All lines beginning with `# DP:' are a description of the patch.
# DP: Description: Add unwind information for the plt fixup routine
# DP: Author: Randolph Chung (tausq@debian.org)
# DP: Upstream status: Submitted and accepted on 2004-11-20
# DP: Status Details: Tested with no regressions.
# DP: Date: 2004-11-19
if [ $# -ne 2 ]; then
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
exit 1
fi
case "$1" in
-patch) patch -d "$2" -f --no-backup-if-mismatch -p1 < $0;;
-unpatch) patch -d "$2" -f --no-backup-if-mismatch -R -p1 < $0;;
*)
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
exit 1
esac
exit 0
2004-11-17 Randolph Chung <tausq@debian.org>
* sysdeps/hppa/dl-machine.h (TRAMPOLINE_TEMPLATE): Add unwind
annotations.
--- glibc-2.3.2/sysdeps/hppa/dl-machine.h.orig 2004-11-17 16:57:24.959474368 -0800
+++ glibc-2.3.2/sysdeps/hppa/dl-machine.h 2004-11-17 17:00:22.498484336 -0800
@@ -421,6 +421,9 @@
asm (".globl " #tramp_name "\n" \
" .type " #tramp_name ",@function\n" \
#tramp_name ":\n" \
+ " .proc\n" \
+ " .callinfo frame=64,calls,save_rp\n" \
+ " .entry\n" \
/* Save return pointer */ \
" stw %r2,-20(%sp)\n" \
/* Save argument registers in the call stack frame. */ \
@@ -451,7 +454,8 @@
" bv %r0(%r22)\n" \
/* Return pointer. */ \
" ldw -20(%sp),%r2\n" \
- );
+ " .exit\n" \
+ " .procend\n");
#ifndef PROF
#define ELF_MACHINE_RUNTIME_TRAMPOLINE \
Reply to: