From 5660a59ba1878d745c337965333e55694d5ce15c Mon Sep 17 00:00:00 2001 From: "hp.com!davidm" Date: Wed, 26 Feb 2003 08:33:57 +0000 Subject: [PATCH] (_U_dyn_info_list): Mark it as .hidden so we can do a @gprel() reloc against it. (.info): Use @gprel() reloc instead of @segrel() reloc for _U_dyn_info_list. The latter doesn't work because the unwind-info is in a different segment. (ia64_init): Clear unw.r0. (Logical change 1.55) --- src/ia64/global-ia64.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/ia64/global-ia64.c b/src/ia64/global-ia64.c index 5389786b..312bf9ba 100644 --- a/src/ia64/global-ia64.c +++ b/src/ia64/global-ia64.c @@ -107,12 +107,13 @@ unw_dyn_info_list_t _U_dyn_info_list; entry covers address range [0-0) and is therefore guaranteed to be the first in the unwind-table. */ asm ( +" .hidden _U_dyn_info_list\n" " .section \".IA_64.unwind_info\", \"a\"\n" ".info: data8 (1<<48) | 1\n" /* v1, length==1 (8-byte word) */ " data8 0\n" /* 8 empty .prologue directives (nops) */ " data8 0\n" /* personality routine (ignored) */ " string \"dyn-list\"\n" /* lsda */ -" data8 @segrel(_U_dyn_info_list)\n" +" data8 @gprel(_U_dyn_info_list)\n" " .previous\n" " .section \".IA_64.unwind\", \"a\"\n" @@ -147,6 +148,7 @@ ia64_init (void) mempool_init (&unw.labeled_state_pool, sizeof (struct ia64_labeled_state), 0); + unw.r0 = 0; unw.f0.raw.bits[0] = 0; unw.f0.raw.bits[1] = 0;