aboutsummaryrefslogtreecommitdiff
path: root/gdb/config
diff options
context:
space:
mode:
authorKevin Buettner <kevinb@redhat.com>2001-05-15 00:03:38 +0000
committerKevin Buettner <kevinb@redhat.com>2001-05-15 00:03:38 +0000
commitca6724c16a360b6297d7827cfd0173441ccd95c2 (patch)
tree3e1e58042a222bbe8532507bb67f404be5c9e80f /gdb/config
parent67a659f60e569d0938cb8ce51489514bcf0d4cca (diff)
downloadgdb-ca6724c16a360b6297d7827cfd0173441ccd95c2.zip
gdb-ca6724c16a360b6297d7827cfd0173441ccd95c2.tar.gz
gdb-ca6724c16a360b6297d7827cfd0173441ccd95c2.tar.bz2
Redefine ptid_t to be a struct rather than an int.
Diffstat (limited to 'gdb/config')
-rw-r--r--gdb/config/i386/tm-i386sol2.h8
-rw-r--r--gdb/config/i386/tm-i386v42mp.h32
-rw-r--r--gdb/config/nm-linux.h8
-rw-r--r--gdb/config/sparc/tm-sun4sol2.h6
4 files changed, 30 insertions, 24 deletions
diff --git a/gdb/config/i386/tm-i386sol2.h b/gdb/config/i386/tm-i386sol2.h
index f3ebcd9..bc2a5f8 100644
--- a/gdb/config/i386/tm-i386sol2.h
+++ b/gdb/config/i386/tm-i386sol2.h
@@ -51,12 +51,4 @@ extern char *sunpro_static_transform_name (char *);
#define FAULTED_USE_SIGINFO
-/* Macros to extract process id and thread id from a composite pid/tid.
- Allocate lower 16 bits for process id, next 15 bits for thread id, and
- one bit for a flag to indicate a user thread vs. a kernel thread. */
-#define PIDGET0(PID) (((PID) & 0xffff))
-#define PIDGET(PID) ((PIDGET0 (PID) == 0xffff) ? -1 : PIDGET0 (PID))
-#define TIDGET(PID) (((PID) & 0x7fffffff) >> 16)
-#define MERGEPID(PID, TID) (((PID) & 0xffff) | ((TID) << 16))
-
#endif /* ifndef TM_I386SOL2_H */
diff --git a/gdb/config/i386/tm-i386v42mp.h b/gdb/config/i386/tm-i386v42mp.h
index e70bc4d..5671e42 100644
--- a/gdb/config/i386/tm-i386v42mp.h
+++ b/gdb/config/i386/tm-i386v42mp.h
@@ -30,6 +30,7 @@
#define UNIXWARE
+#if 0
/* The following macros extract process and lwp/thread ids from a
composite id.
@@ -43,8 +44,7 @@
#define PIDBITS 16
/* Return the process id stored in composite PID. */
-#define PIDGET0(PID) (((PID) & ((1 << PIDBITS) - 1)))
-#define PIDGET(PID) ((PIDGET0 (PID) == ((1 << PIDBITS) -1)) ? -1 : PIDGET0 (PID))
+#define PIDGET(PID) (((PID) & ((1 << PIDBITS) - 1)))
/* Return the thread or lwp id stored in composite PID. */
#define TIDGET(PID) (((PID) & 0x3fffffff) >> PIDBITS)
@@ -61,5 +61,33 @@
/* Return whether PID contains a user-space thread id. */
#define ISTID(PID) ((PID) & 0x40000000)
+#endif
+
+/* New definitions of the ptid stuff. Due to the way the
+ code is structured in uw-thread.c, I'm overloading the thread id
+ and lwp id onto the lwp field. The tid field is used to indicate
+ whether the lwp is a tid or not.
+
+ FIXME: Check that core file support is not broken. (See original
+ #if 0'd comments above.)
+ FIXME: Restructure uw-thread.c so that the struct ptid fields
+ can be used as intended. */
+
+/* Return the process id stored in composite PID. */
+#define PIDGET(PID) (ptid_get_pid (PID))
+
+/* Return the thread or lwp id stored in composite PID. */
+#define TIDGET(PID) (ptid_get_lwp (PID))
+#define LIDGET(PID) TIDGET(PID)
+
+#define MERGEPID(PID, LID) (ptid_build ((PID), (LID), 0))
+#define MKLID(PID, LID) (ptid_build ((PID), (LID), 0))
+
+/* Construct a composite id from thread TID and the process portion of
+ composite PID. */
+#define MKTID(PID, TID) (ptid_build ((PID), (TID), 1))
+
+/* Return whether PID contains a user-space thread id. */
+#define ISTID(PID) (ptid_get_tid (PID))
#endif /* ifndef TM_I386V42MP_H */
diff --git a/gdb/config/nm-linux.h b/gdb/config/nm-linux.h
index 19d6857..f1e785c 100644
--- a/gdb/config/nm-linux.h
+++ b/gdb/config/nm-linux.h
@@ -49,14 +49,6 @@ extern int linuxthreads_prepare_to_proceed (int step);
/* Defined to make stepping-over-breakpoints be thread-atomic. */
#define USE_THREAD_STEP_NEEDED 1
-/* Macros to extract process id and thread id from a composite pid/tid.
- Allocate lower 19 bits for process id, next 12 bits for thread id, and
- one bit for a flag to indicate a user thread vs. a kernel thread. */
-#define PIDGET0(PID) (((PID) & 0xffff))
-#define PIDGET(PID) ((PIDGET0 (PID) == 0xffff) ? -1 : PIDGET0 (PID))
-#define TIDGET(PID) (((PID) & 0x7fffffff) >> 16)
-#define MERGEPID(PID, TID) (((PID) & 0xffff) | ((TID) << 16))
-
/* Use elf_gregset_t and elf_fpregset_t, rather than
gregset_t and fpregset_t. */
diff --git a/gdb/config/sparc/tm-sun4sol2.h b/gdb/config/sparc/tm-sun4sol2.h
index 09f36bb..f9b739c 100644
--- a/gdb/config/sparc/tm-sun4sol2.h
+++ b/gdb/config/sparc/tm-sun4sol2.h
@@ -80,9 +80,3 @@ extern char *sunpro_static_transform_name (char *);
/* Enable handling of shared libraries for a.out executables. */
#define HANDLE_SVR4_EXEC_EMULATORS
-
-/* Macros to extract process id and thread id from a composite pid/tid */
-#define PIDGET0(PID) (((PID) & 0xffff))
-#define PIDGET(PID) ((PIDGET0 (PID) == 0xffff) ? -1 : PIDGET0 (PID))
-#define TIDGET(PID) (((PID) & 0x7fffffff) >> 16)
-#define MERGEPID(PID, TID) (((PID) & 0xffff) | ((TID) << 16))