From 42be70d43174c6a6e80fbd25276d4eb04c6e5adf Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sun, 15 Oct 2000 02:17:30 +0000 Subject: Update. 2000-10-28 Jes Sorensen * sysdeps/unix/sysv/linux/ia64/Versions: Export ioperm, iopl, inb, inw, inl, _inb, _inw, _inl, outb, outw, outl, _outb, _outw, _outl. Reported by Bill Nottingham. 2000-04-06 Andreas Schwab * sysdeps/ia64/dl-machine.h (TRAMPOLINE_TEMPLATE): Save and restore register r8 for functions that return a structure. 2000-10-12 Jakub Jelinek * math/libm-test.inc (M_PI_6l, M_E2l, M_E3l, M_2_SQRT_PIl, M_SQRT_PIl): Increase precision. (cbrt_test): If cbrt is not implemented, don't test it. Add L suffix to double constants in results which differ from their L suffixed counterparts. (exp10_test, fmod_test, frexp_test, hypot_test, sqrt_test): Likewise. * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update. 2000-10-11 Jakub Jelinek * inet/rexec.c (rexec_af): Convert rport to host order before passing it to snprintf. 2000-10-14 Ulrich Drepper * sysdeps/gnu/netinet/tcp.h: Use u_intXX_t types instead of uintXX_t since this is what defines and we include this header. Reported by Bernhard Rosenkraenzer . * intl/localealias.c (read_alias_file): Update string pointers in map[] if realloc() changed the values. Patch by Jakub Jelinek . * manual/stdio.texi: Update printf extension documentation after z became a valid modifier. Patch by Joseph S. Myers . * timezone/africa: Update from tzcode2000g and tzdata2000g. * timezone/asia: Likewise. * timezone/australasia: Likewise. * timezone/backward: Likewise. * timezone/europe: Likewise. * timezone/iso3166.tab: Likewise. * timezone/northamerica: Likewise. * timezone/southamerica: Likewise. * timezone/zone.tab: Likewise. --- sysdeps/ia64/dl-machine.h | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'sysdeps/ia64') diff --git a/sysdeps/ia64/dl-machine.h b/sysdeps/ia64/dl-machine.h index 1c37b24b4b..5c4870dc9b 100644 --- a/sysdeps/ia64/dl-machine.h +++ b/sysdeps/ia64/dl-machine.h @@ -163,7 +163,7 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) .proc " #tramp_name "# " #tramp_name ": { .mmi - alloc loc0 = ar.pfs, 8, 2, 3, 0 + alloc loc0 = ar.pfs, 8, 3, 3, 0 adds r2 = -144, r12 adds r3 = -128, r12 } @@ -173,6 +173,11 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) mov out2 = b0 /* needed by fixup_profile */ ;; } + { .mfb + mov loc2 = r8 /* preserve struct value register */ + nop.f 0 + nop.b 0 + } { .mmi stf.spill [r2] = f8, 32 stf.spill [r3] = f9, 32 @@ -226,11 +231,15 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) adds r12 = 160, r12 ;; } + { .mii + ld8 gp = [ret0] + mov r8 = loc2 /* restore struct value register */ + ;; + } /* An alloc is needed for the break system call to work. We don't care about the old value of the pfs register. */ { .mmb alloc r2 = ar.pfs, 0, 0, 8, 0 - ld8 gp = [ret0] br.sptk.many b6 ;; } -- cgit 1.4.1