summary refs log tree commit diff
path: root/sysdeps/x86_64
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/x86_64')
-rw-r--r--sysdeps/x86_64/elf/start.S7
1 files changed, 6 insertions, 1 deletions
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