aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Kratochvil <jan.kratochvil@redhat.com>2012-03-16 20:49:23 +0100
committerAndreas Jaeger <aj@suse.de>2012-03-16 20:49:23 +0100
commit6a1bd2a100c958d30bbfe8c9b8f9071d24b7c3f4 (patch)
tree422f8cf4c7c40f525cbe484eb0b334c249bed2ca
parent10a803e0a2ed04ba1f5e7931121acbb0f8383e9b (diff)
downloadglibc-6a1bd2a100c958d30bbfe8c9b8f9071d24b7c3f4.tar
glibc-6a1bd2a100c958d30bbfe8c9b8f9071d24b7c3f4.tar.gz
glibc-6a1bd2a100c958d30bbfe8c9b8f9071d24b7c3f4.tar.bz2
glibc-6a1bd2a100c958d30bbfe8c9b8f9071d24b7c3f4.zip
* sysdeps/x86_64/elf/start.S: Include <sysdep.h>.
(_start): Add cfi_startproc, cfi_undefined for rip and cfi_endproc.
-rw-r--r--ChangeLog5
-rw-r--r--sysdeps/x86_64/elf/start.S7
2 files changed, 11 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 76a04fed01..05c3bfee9a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2012-03-16 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * sysdeps/x86_64/elf/start.S: Include <sysdep.h>.
+ (_start): Add cfi_startproc, cfi_undefined for rip and cfi_endproc.
+
2012-03-16 Roland McGrath <roland@hack.frob.com>
* aclocal.m4 (LIBC_PRECONFIGURE): New macro.
diff --git a/sysdeps/x86_64/elf/start.S b/sysdeps/x86_64/elf/start.S
index 68d61e234a..5e01d21179 100644
--- a/sysdeps/x86_64/elf/start.S
+++ b/sysdeps/x86_64/elf/start.S
@@ -1,5 +1,5 @@
/* Startup code compliant to the ELF x86-64 ABI.
- Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
+ Copyright (C) 2001-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Andreas Jaeger <aj@suse.de>, 2001.
@@ -53,12 +53,16 @@
NULL
*/
+#include <sysdep.h>
#include "bp-sym.h"
.text
.globl _start
.type _start,@function
_start:
+ cfi_startproc
+ /* Clearing frame pointer is insufficient, use CFI. */
+ cfi_undefined (rip)
/* Clear the frame pointer. The ABI suggests this be done, to mark
the outermost frame obviously. */
xorl %ebp, %ebp
@@ -113,6 +117,7 @@ _start:
#endif
hlt /* Crash if somehow `exit' does return. */
+ cfi_endproc
/* Define a symbol for the first piece of initialized data. */
.data