about summary refs log tree commit diff
path: root/sysdeps/i386/dl-trampoline.S
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2007-08-24 02:58:08 +0000
committerUlrich Drepper <drepper@redhat.com>2007-08-24 02:58:08 +0000
commit73e3ff07a3354d6c095e2945560755c8bc0a4387 (patch)
tree8111b1f4695205d356d463b6e4bd47226d767b5d /sysdeps/i386/dl-trampoline.S
parent62e1b1f5644f5a0d913b91e7cc1bca4c6c32cf43 (diff)
downloadglibc-73e3ff07a3354d6c095e2945560755c8bc0a4387.tar.gz
glibc-73e3ff07a3354d6c095e2945560755c8bc0a4387.tar.xz
glibc-73e3ff07a3354d6c095e2945560755c8bc0a4387.zip
[BZ #3924]
	* sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Correctly
	align for function call in case pltexit has to be called later.
Diffstat (limited to 'sysdeps/i386/dl-trampoline.S')
-rw-r--r--sysdeps/i386/dl-trampoline.S3
1 files changed, 2 insertions, 1 deletions
diff --git a/sysdeps/i386/dl-trampoline.S b/sysdeps/i386/dl-trampoline.S
index 5856a2f8a0..af9eaf6d56 100644
--- a/sysdeps/i386/dl-trampoline.S
+++ b/sysdeps/i386/dl-trampoline.S
@@ -111,9 +111,10 @@ _dl_runtime_profile:
 	cfi_rel_offset (esi, 0)
 	leal 44(%esp), %esi
 	movl %ebx, %ecx
+	orl $4, %ebx		# Increase frame size if necessary to align
+				# stack for the function call
 	movl %esp, %edi
 	subl %ebx, %edi
-	andl $0xfffffff0, %edi	# Align stack
 	movl %esp, %ebx
 	cfi_def_cfa_register (ebx)
 	movl %edi, %esp