This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Bad checkin breaks Linux


This patch

http://sources.redhat.com/ml/gdb-patches/2002-01/msg00195.html

breaks Linux targets which don't use PTRACE_GETFPXREGS. The problem is
<sys/ptrace.h> has

  /* Single step the process.
     This is not supported on all machines.  */
  PTRACE_SINGLESTEP = 9,
#define PT_STEP PTRACE_SINGLESTEP

  /* Get all general purpose registers used by a processes.
     This is not supported on all machines.  */
   PTRACE_GETREGS = 12,
#define PT_GETREGS PTRACE_GETREGS

  /* Set all general purpose registers used by a processes.
     This is not supported on all machines.  */
   PTRACE_SETREGS = 13,
#define PT_SETREGS PTRACE_SETREGS

  /* Get all floating point registers used by a processes.
     This is not supported on all machines.  */
   PTRACE_GETFPREGS = 14,
#define PT_GETFPREGS PTRACE_GETFPREGS

  /* Set all floating point registers used by a processes.
     This is not supported on all machines.  */
   PTRACE_SETFPREGS = 15,
#define PT_SETFPREGS PTRACE_SETFPREGS

  /* Get all extended floating point registers used by a processes.
     This is not supported on all machines.  */
   PTRACE_GETFPXREGS = 18,
#define PT_GETFPXREGS PTRACE_GETFPXREGS

  /* Set all extended floating point registers used by a processes.
     This is not supported on all machines.  */
   PTRACE_SETFPXREGS = 19,
#define PT_SETFPXREGS PTRACE_SETFPXREGS

You can't assume you can use PTRACE_GETFPXREGS if it is defined. Due
to that change, gdb won't build on Linux/mips. I am afraid the current
gdb from CVS may be broken even without that patch:

# gcc -c -g -O2    -I. -I/home/hjl/work/gnu/src/gdb/gdb/gdb -I/home/hjl/work/gnu/src/gdb/gdb/gdb/config -DHAVE_CONFIG_H -I/home/hjl/work/gnu/src/gdb/gdb/gdb/../include/opcode -I/home/hjl/work/gnu/src/gdb/gdb/gdb/../readline/.. -I../bfd -I/home/hjl/work/gnu/src/gdb/gdb/gdb/../bfd -I/home/hjl/work/gnu/src/gdb/gdb/gdb/../include -I../intl -I/home/hjl/work/gnu/src/gdb/gdb/gdb/../intl  -DMI_OUT=1 -DUI_OUT=1 -Wimplicit -Wreturn-type -Wcomment -Wtrigraphs -Wformat -Wparentheses -Wpointer-arith -Wuninitialized  /home/hjl/work/gnu/src/gdb/gdb/gdb/thread-db.c
/home/hjl/work/gnu/src/gdb/gdb/gdb/thread-db.c: In function
`enable_thread_event_reporting':
/home/hjl/work/gnu/src/gdb/gdb/gdb/thread-db.c:398: warning: cast from pointer to integer of different size
/home/hjl/work/gnu/src/gdb/gdb/gdb/thread-db.c:411: warning: cast from pointer to integer of different size
/home/hjl/work/gnu/src/gdb/gdb/gdb/thread-db.c: In function `thread_db_store_registers':
/home/hjl/work/gnu/src/gdb/gdb/gdb/thread-db.c:843: warning: passing arg 2 of pointer to function from incompatible pointer type


H.J.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]