Commit Graph

62 Commits

Author SHA1 Message Date
marius
d5a429b2e4 Change lwp to int64_t as thr_pread_long() always uses a 64-bit value
in order to account for LP64 targets when cross-debugging on ILP32,
allowing r224683 to compile on ILP32.
Note that thr_p{read,write}_{long,ptr}() still incorrectly use the size
of the respective types on the host rather than that on the target when
accessing the target address space which still needs to be fixed. This
means that r224683 alone may not be sufficient to solve the problem it's
intended to fix when cross-debugging.

Approved by:	re (hrs)
2011-08-07 15:52:13 +00:00
marius
5f0df85e2b Implement
Reviewed by:	marcel
Approved by:	re (kib)
MFC after:	1 week
2011-08-06 17:50:37 +00:00
marius
80d87bdabe Use the size of struct fpreg rather than of the pointer to it when copying
the FPU state.

Reviewed by:	marcel
Approved by:	re (kib)
MFC after:	1 week
2011-08-06 17:49:21 +00:00
marius
c027f659ae The tid member of struct pthread actually is long so read it as such.
Accessing it as an int causes failure on big-endian LP64, i.e. mips64be,
powerpc64 and sparc64.

Reviewed by:	marcel
Approved by:	re (kib)
MFC after:	1 week
2011-08-06 17:48:30 +00:00
nwhitehorn
02bb2a078e Repair some build breakage introduced in r211725 and garbage collect some
code made obsolete in the same commit.
2010-08-28 15:03:11 +00:00
imp
c3a399c4ba MFtbemd:
Prefer MACHNE_CPUARCH to MACHINE_ARCH in most contexts where you want
to test of all the CPUs of a given family conform.
2010-08-23 22:24:11 +00:00
nwhitehorn
980b46c696 Powerpc64 thread libraries support. 2010-07-10 15:13:49 +00:00
kib
2b9a53839c Extend the td_thrinfo_t to include siginfo for the signal that stopped
the target. Take care of ABI.

Suggested by:	davidxu
MFC after:	2 weeks
2010-07-04 12:08:04 +00:00
ed
09818ac28e Build lib/ with WARNS=6 by default.
Similar to libexec/, do the same with lib/. Make WARNS=6 the norm and
lower it when needed.

I'm setting WARNS?=0 for secure/. It seems secure/ includes the
Makefile.inc provided by lib/. I'm not going to touch that directory.
Most of the code there is contributed anyway.
2010-01-02 09:58:07 +00:00
des
1ae61ff79c Revert r181651, which changed the ABI, and use a temp variable instead.
Suggested by:	attilio
2009-06-09 12:32:10 +00:00
attilio
88976b7afb libc_r_* library is no more required, so just axe it.
Approved by:	marcel, emaste
Sponsored by:	Sandvine Incorporated
2009-03-05 18:27:16 +00:00
marcel
ead754945e Allow psaddr_t to be widened by using thr_pread_{int,long,ptr},
where critical. Some places still use ps_pread/ps_pwrite directly,
but only need changed when byte-order comes into the picture.
Also, change th_p in td_event_msg_t from a pointer type to
psaddr_t, so that events also work when psaddr_t is widened.
2008-09-14 16:07:21 +00:00
obrien
30759f2655 Add the needed libpthread_md.c for MIPS.
Obtained from:	Juniper Networks
2008-08-28 15:41:12 +00:00
marcel
54448b6186 Change the type of ti_traceme from a char to an int as its
address is passed to ps_pread for reading sizeof(int) bytes.
2008-08-13 00:03:35 +00:00
marcel
57f1d21802 Cleanup for WARNS 6. 2008-08-06 03:14:18 +00:00
marcel
0bfdb53f7a Add thr_pread_{int,long,ptr} and thr_pwrite_{int,long,ptr} to
help abstract the sizes and endianness of the primary types of
the target.  These currently use the native characteristics.
2008-07-31 20:25:52 +00:00
marcel
26ada4b390 Cleanup for WARNS 3. 2008-07-31 16:26:58 +00:00
marcel
e92a1d88d1 Cleanup for WARNS 2. 2008-07-31 05:25:52 +00:00
marcel
b40c2c680d Change the type of psaddr_t from void* to uintptr_t. A pointer
type cannot be made wider to allow ILP32 platforms to target
LP64 platforms.
2008-07-30 00:59:19 +00:00
jeff
e1e2efa7be - Restore kse.h in this directory so other tools don't find it by mistake.
- Restore the ability to debug kse coredumps in 8.0.

Suggested by:	marcel
2008-03-23 09:38:11 +00:00
davidxu
3367c267b3 Use linker set to collection all target operations. 2008-03-22 05:40:44 +00:00
jeff
0409b8b057 - Remove libkse and related support code in libpthread from the build.
Don't remove the files yet.  Kernel support will be removed shortly.
2008-03-12 09:49:39 +00:00
cognet
d4045dcd3e Add arm support in libthread_db. 2007-11-17 21:27:53 +00:00
delphij
7155705048 Include string.h for memcpy() and memcmp(). 2007-05-25 13:43:14 +00:00
deischen
ff36458e08 Bump library versions in preparation for 7.0.
Ok'd by:	kan
2007-05-21 02:49:08 +00:00
deischen
bf3a79274d Enable symbol versioning by default. Use WITHOUT_SYMVER to disable it.
Warning, after symbol versioning is enabled, going back is not easy
(use WITHOUT_SYMVER at your own risk).

Change the default thread library to libthr.

There most likely still needs to be a version bump for at least the
thread libraries.  If necessary, this will happen later.
2007-05-13 14:12:40 +00:00
marcel
1f3a6143f7 Roughly implement libpthread support. 2007-05-01 18:28:08 +00:00
deischen
2a7306fdc5 Use C comments since we now preprocess these files with CPP. 2007-04-29 14:05:22 +00:00
davidxu
df52e86556 remove libc_r remanent. 2006-10-20 14:15:42 +00:00
davidxu
d31c0f57db Remove libc_r support. 2006-10-05 06:26:31 +00:00
ru
aa1113efea Remove alpha-specific stuff. 2006-08-23 12:12:56 +00:00
marcel
4369bfea09 Add stub functions. This allows libthread_db to be built and installed,
which means that we also have <thread_db.h>.
2006-08-04 17:55:55 +00:00
davidxu
abd1aa54e6 Fix return value. 2006-05-17 05:14:45 +00:00
davidxu
c28c63ba32 get thread signal info. 2006-05-17 05:12:42 +00:00
deischen
b19d325a18 Add symbol versioning.
Reviewed by:	davidxu
2006-03-29 14:08:45 +00:00
davidxu
b9945d52e2 Use ps_linfo to retrieve LWP info, current it is used to retrieve
signal mask and pending signals.
2006-02-07 02:55:34 +00:00
davidxu
6cfb2f2fce Use ps_linfo to retrieve LWP info. 2006-02-07 02:51:25 +00:00
davidxu
879ea1a11b Replace ptrace syscall with ps_lgetgregs to check a LWP's existence. 2006-02-07 02:12:33 +00:00
davidxu
f9048c6816 Always clear thread info buffer to zero. 2006-02-06 11:54:19 +00:00
kensmith
f97f77429f Bump the shared library version number of all libraries that have not
been bumped since RELENG_5.

Reviewed by:	ru
Approved by:	re (not needed for commit check but in principle...)
2005-07-22 17:19:05 +00:00
dfr
874478d7fd Add support for XMM registers in GDB for x86 processors that support
SSE (or its successors).

Reviewed by: marcel, davidxu
MFC After: 2 weeks
2005-05-31 09:43:04 +00:00
charnier
3ee2620203 Remove unused variables. 2005-05-20 13:09:49 +00:00
davidxu
03aa59f2ee o Code cleanup, eliminate private thread id map, directly
use lwpid as thread id.
 o Export tls pointer.
2005-04-13 04:57:38 +00:00
davidxu
1f525cc190 Fill traceme and events fields. 2005-04-12 23:33:08 +00:00
davidxu
6b1b88e88d Sync with debugger code in libthr. 2005-04-12 03:03:16 +00:00
davidxu
e911a0459c Export thread address. 2005-04-05 11:38:30 +00:00
davidxu
6c73121667 Update debugger code for new libthr. 2005-04-02 01:36:21 +00:00
davidxu
cea7c80bb2 Plug a memory leak in error case. 2004-08-16 05:20:12 +00:00
davidxu
83403f3840 1. Use libpthread's exported symbols to calcuate offset in data structure
2. Enable TLS debugger support.
2004-08-16 03:30:16 +00:00
davidxu
fd9ef6980b 1. Add missing functions: libthr_dbresume,libthr_dbsuspend.
2. Implement functions: libthr_db_thr_setfpregs, libthr_db_thr_setregs,
   libthr_db_ta_map_id2thr.
3. simplify libthr_db_thr_getfpregs, libthr_db_thr_getgregs.
2004-08-13 06:47:33 +00:00