aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Metcalf <cmetcalf@tilera.com>2012-05-11 18:08:03 -0400
committerChris Metcalf <cmetcalf@tilera.com>2012-05-14 15:46:13 -0400
commit024bb7b4a22e62faf932a7b9f071322716727d2d (patch)
treed43149708f179665e73c4c3910518fa613f5a3f9
parent8daa704ea4c8936eb033317bf2d20d82b3226553 (diff)
downloadglibc-024bb7b4a22e62faf932a7b9f071322716727d2d.tar.xz
glibc-024bb7b4a22e62faf932a7b9f071322716727d2d.zip
tile: fix bug in CFI definitions for clone.S
We were missing a critical cfi_def_cfa_offset call in .Lthread_start which caused backtracing to get badly confused for threads.
-rw-r--r--ChangeLog.tile4
-rw-r--r--sysdeps/unix/sysv/linux/tile/nptl/clone.S3
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog.tile b/ChangeLog.tile
index f2eb35a7f9..ae048ddd34 100644
--- a/ChangeLog.tile
+++ b/ChangeLog.tile
@@ -1,5 +1,9 @@
2012-05-12 Chris Metcalf <cmetcalf@tilera.com>
+ * sysdeps/unix/sysv/linux/tile/nptl/clone.S: Add missing CFI.
+
+2012-05-12 Chris Metcalf <cmetcalf@tilera.com>
+
* sysdeps/tile/tls-macros.h: Fix buggy TLS_GD, etc., macros.
2012-05-12 Chris Metcalf <cmetcalf@tilera.com>
diff --git a/sysdeps/unix/sysv/linux/tile/nptl/clone.S b/sysdeps/unix/sysv/linux/tile/nptl/clone.S
index eaa2fd65a5..de4fa136d3 100644
--- a/sysdeps/unix/sysv/linux/tile/nptl/clone.S
+++ b/sysdeps/unix/sysv/linux/tile/nptl/clone.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2011 Free Software Foundation, Inc.
+/* Copyright (C) 2011-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Chris Metcalf <cmetcalf@tilera.com>, 2011.
@@ -167,6 +167,7 @@ ENTRY (__clone)
in getpid(). Otherwise (if CLONE_VM isn't set), it's a
fork-like clone, and we go ahead and write the cached values
from the true system pid (retrieved via __NR_getpid syscall). */
+ cfi_def_cfa_offset (FRAME_SIZE)
#ifdef __tilegx__
{
moveli r0, hw1_last(CLONE_VM)