diff options
author | Ulrich Drepper <drepper@redhat.com> | 2003-03-29 19:20:17 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2003-03-29 19:20:17 +0000 |
commit | 266227abcba4f70af3a2f4cbc34384ee498a3a50 (patch) | |
tree | c804c3f252d5bd356c5fd538dacadf4c720e1646 /sysdeps/ia64/dl-machine.h | |
parent | d8592d04fab67a5a553bd9fc5573f234897bc0af (diff) | |
download | glibc-266227abcba4f70af3a2f4cbc34384ee498a3a50.zip glibc-266227abcba4f70af3a2f4cbc34384ee498a3a50.tar.gz glibc-266227abcba4f70af3a2f4cbc34384ee498a3a50.tar.bz2 |
Update.
2003-03-27 David Mosberger <davidm@hpl.hp.com>
* sysdeps/ia64/dl-machine.h (RTLD_START): Wrap ".save rp, r0"
directive into empty .prologue region to ensure that call-chain
is terminated even for the first instruction.
* sysdeps/ia64/elf/start.S (_start): Use ".save rp, r0" idiom
to terminate call-chain right from the get-go.
* sysdeps/unix/sysv/linux/ia64/fork.S (fork): Remove unnecessary
stop bit between compare & branch.
Diffstat (limited to 'sysdeps/ia64/dl-machine.h')
-rw-r--r-- | sysdeps/ia64/dl-machine.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/sysdeps/ia64/dl-machine.h b/sysdeps/ia64/dl-machine.h index be09ae8..d3cc0ca 100644 --- a/sysdeps/ia64/dl-machine.h +++ b/sysdeps/ia64/dl-machine.h @@ -301,8 +301,10 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) "_start:\n" \ "0: { .mii\n" \ " .prologue\n" \ -" .save ar.pfs, r32\n" \ " .save rp, r0\n" \ +" .body\n" \ +" .prologue\n" \ +" .save ar.pfs, r32\n" \ " alloc loc0 = ar.pfs, 0, 3, 4, 0\n" \ " .body\n" \ " mov r2 = ip\n" \ @@ -332,8 +334,10 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) " .proc _dl_start_user#\n" \ "_dl_start_user:\n" \ " .prologue\n" \ -" .save ar.pfs, r32\n" \ " .save rp, r0\n" \ +" .body\n" \ +" .prologue\n" \ +" .save ar.pfs, r32\n" \ " .body\n" \ " { .mii\n" \ " /* Save the pointer to the user entry point fptr in loc2. */\n" \ |