summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorMax Khon <fjoe@FreeBSD.org>2002-11-25 20:30:24 +0000
committerMax Khon <fjoe@FreeBSD.org>2002-11-25 20:30:24 +0000
commit723f9116571c5b586d629db3e60853223a9f7194 (patch)
tree91d80e579799961ccc036ab6a2e73d6a91fdc2d5 /gnu
parentd7228cc723cf76fc644da51c62652ba5ff706709 (diff)
Notes
Diffstat (limited to 'gnu')
-rw-r--r--gnu/usr.bin/binutils/gdb/freebsd-uthread.c46
1 files changed, 4 insertions, 42 deletions
diff --git a/gnu/usr.bin/binutils/gdb/freebsd-uthread.c b/gnu/usr.bin/binutils/gdb/freebsd-uthread.c
index 1c1ea78f01d6..d2758b40b0ab 100644
--- a/gnu/usr.bin/binutils/gdb/freebsd-uthread.c
+++ b/gnu/usr.bin/binutils/gdb/freebsd-uthread.c
@@ -118,7 +118,6 @@ struct cached_pthread {
u_int64_t uniqueid;
int state;
CORE_ADDR name;
- int ctxtype;
union {
ucontext_t uc;
jmp_buf jb;
@@ -153,27 +152,17 @@ static CORE_ADDR P_thread_next_offset;
static CORE_ADDR P_thread_uniqueid_offset;
static CORE_ADDR P_thread_state_offset;
static CORE_ADDR P_thread_name_offset;
-static CORE_ADDR P_thread_ctxtype_offset;
static CORE_ADDR P_thread_ctx_offset;
static CORE_ADDR P_thread_PS_RUNNING_value;
static CORE_ADDR P_thread_PS_DEAD_value;
-static CORE_ADDR P_thread_CTX_JB_NOSIG_value;
-static CORE_ADDR P_thread_CTX_JB_value;
-static CORE_ADDR P_thread_CTX_SJB_value;
-static CORE_ADDR P_thread_CTX_UC_value;
static int next_offset;
static int uniqueid_offset;
static int state_offset;
static int name_offset;
-static int ctxtype_offset;
static int ctx_offset;
static int PS_RUNNING_value;
static int PS_DEAD_value;
-static int CTX_JB_NOSIG_value;
-static int CTX_JB_value;
-static int CTX_SJB_value;
-static int CTX_UC_value;
#define UNIQUEID_HASH(id) (id % MAPHASH_SIZE)
#define TID_ADD1(tid) (((tid) + 1) == TID_MAX + 1 \
@@ -264,15 +253,10 @@ read_thread_offsets ()
READ_OFFSET(uniqueid);
READ_OFFSET(state);
READ_OFFSET(name);
- READ_OFFSET(ctxtype);
READ_OFFSET(ctx);
READ_VALUE(PS_RUNNING);
READ_VALUE(PS_DEAD);
- READ_VALUE(CTX_JB_NOSIG);
- READ_VALUE(CTX_JB);
- READ_VALUE(CTX_SJB);
- READ_VALUE(CTX_UC);
}
#define READ_FIELD(ptr, T, field, result) \
@@ -304,7 +288,6 @@ read_cached_pthread (ptr, cache)
READ_FIELD(ptr, u_int64_t, uniqueid, cache->uniqueid);
READ_FIELD(ptr, int, state, cache->state);
READ_FIELD(ptr, CORE_ADDR, name, cache->name);
- READ_FIELD(ptr, int, ctxtype, cache->ctxtype);
READ_FIELD(ptr, ucontext_t, ctx, cache->ctx);
}
@@ -639,16 +622,8 @@ freebsd_uthread_fetch_registers (regno)
last_regno = regno;
}
- if (thread->ctxtype == CTX_UC_value)
- {
- regbase = (register_t*) &thread->ctx.uc.uc_mcontext;
- regmap = sigmap;
- }
- else
- {
- regbase = (register_t*) &thread->ctx.jb[0];
- regmap = jmpmap;
- }
+ regbase = (register_t*) &thread->ctx.jb[0];
+ regmap = jmpmap;
for (regno = first_regno; regno <= last_regno; regno++)
{
@@ -704,16 +679,8 @@ freebsd_uthread_store_registers (regno)
last_regno = regno;
}
- if (thread->ctxtype == CTX_UC_value)
- {
- regbase = (u_int32_t*) &thread->ctx.uc.uc_mcontext;
- regmap = sigmap;
- }
- else
- {
- regbase = (u_int32_t*) &thread->ctx.jb[0];
- regmap = jmpmap;
- }
+ regbase = (u_int32_t*) &thread->ctx.jb[0];
+ regmap = jmpmap;
ptr = find_pthread_addr (inferior_pid);
for (regno = first_regno; regno <= last_regno; regno++)
@@ -897,15 +864,10 @@ freebsd_uthread_new_objfile (objfile)
LOOKUP_OFFSET(uniqueid);
LOOKUP_OFFSET(state);
LOOKUP_OFFSET(name);
- LOOKUP_OFFSET(ctxtype);
LOOKUP_OFFSET(ctx);
LOOKUP_VALUE(PS_RUNNING);
LOOKUP_VALUE(PS_DEAD);
- LOOKUP_VALUE(CTX_JB_NOSIG);
- LOOKUP_VALUE(CTX_JB);
- LOOKUP_VALUE(CTX_SJB);
- LOOKUP_VALUE(CTX_UC);
freebsd_uthread_active = 1;
}