diff options
author | David S. Miller <davem@davemloft.net> | 2012-10-05 21:22:41 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-10-05 21:22:41 -0700 |
commit | f07621646892e079b4d1eec1b02e5ab03b578a5e (patch) | |
tree | f07d3d9497e288fc7913fdee732598ccff638728 /nptl | |
parent | 3baddb72a4181e05d0d279a6b345635641e13a18 (diff) | |
download | glibc-f07621646892e079b4d1eec1b02e5ab03b578a5e.tar.gz glibc-f07621646892e079b4d1eec1b02e5ab03b578a5e.tar.xz glibc-f07621646892e079b4d1eec1b02e5ab03b578a5e.zip |
Correct libthreadb register access for 64-bit sparc.
[BZ #14568] * sysdeps/sparc/tls.h (DB_THREAD_SELF_INCLUDE): Delete. (DB_THREAD_SELF): Use constants for the register offsets. Correct the case of a 64-bit debugger with a 32-bit inferior.
Diffstat (limited to 'nptl')
-rw-r--r-- | nptl/ChangeLog | 7 | ||||
-rw-r--r-- | nptl/sysdeps/sparc/tls.h | 4 |
2 files changed, 9 insertions, 2 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 78b1b9354f..17a36e8ac2 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,10 @@ +2012-10-05 David S. Miller <davem@davemloft.net> + + [BZ #14568] + * sysdeps/sparc/tls.h (DB_THREAD_SELF_INCLUDE): Delete. + (DB_THREAD_SELF): Use constants for the register offsets. Correct + the case of a 64-bit debugger with a 32-bit inferior. + 2012-10-05 H.J. Lu <hongjiu.lu@intel.com> [BZ #14557] diff --git a/nptl/sysdeps/sparc/tls.h b/nptl/sysdeps/sparc/tls.h index 61cb09f294..cfc9d96c67 100644 --- a/nptl/sysdeps/sparc/tls.h +++ b/nptl/sysdeps/sparc/tls.h @@ -117,9 +117,9 @@ register struct pthread *__thread_self __asm__("%g7"); #define THREAD_SELF __thread_self /* Magic for libthread_db to know how to do THREAD_SELF. */ -# define DB_THREAD_SELF_INCLUDE <sys/ucontext.h> # define DB_THREAD_SELF \ - REGISTER (32, 32, REG_G7 * 4, 0) REGISTER (64, 64, REG_G7 * 8, 0) + REGISTER (32, 32, 10 * 4, 0) \ + REGISTER (64, __WORDSIZE, (6 * 8) + (__WORDSIZE==64?0:4), 0) /* Access to data in the thread descriptor is easy. */ #define THREAD_GETMEM(descr, member) \ |