1 2005-11-02 Daniel Jacobowitz <dan@codesourcery.com>
3 * configure.srv (x86_64-*-linux*): Turn on thread_db support.
4 * linux-x86-64-low.c (x86_64_breakpoint, x86_64_breakpoint_len)
5 (x86_64_get_pc, x86_64_set_pc, x86_64_breakpoint_at): New.
6 (the_low_target): Update.
8 2005-10-25 Andreas Schwab <schwab@suse.de>
10 * server.c (main): Allocate mem_buf with PBUFSIZ bytes.
12 * linux-ia64-low.c (ia64_regmap): Remove NAT registers.
13 (ia64_num_regs): Reduce to 462.
15 2005-09-17 Daniel Jacobowitz <dan@codesourcery.com>
17 * acinclude.m4: Correct quoting.
18 * aclocal.m4: Regenerated.
20 Suggested by SZOKOVACS Robert <szo@ies.hu>:
21 * thread-db.c (thread_db_err_str): Handle TD_VERSION.
22 (thread_db_init): Call thread_db_err_str.
23 * configure.ac: Check for TD_VERSION.
24 * config.in, configure: Regenerated.
26 2005-07-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
28 * server.h (error, fatal, warning): Add ATTR_FORMAT.
30 2005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
32 * configure.ac: Define HAVE_LINUX_REGSETS even if PTRACE_GETREGS
33 is not available. Define HAVE_PTRACE_GETREGS if it is.
34 * config.in, configure: Regenerated.
35 * configure.srv: Set srv_linux_regsets for PowerPC and PowerPC64.
36 * linux-i386-low.c, linux-m68k-low.c: Update to use
38 * linux-low.c (regsets_fetch_inferior_registers)
39 (regsets_store_inferior_registers): Only return 0 if we processed
41 * linux-ppc-low.c (ppc_fill_gregset, target_regsets): New.
42 * linux-ppc64-low.c (ppc_fill_gregset, target_regsets): New.
44 2005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
46 * inferiors.c (struct thread_info): Add gdb_id.
47 (add_thread): Add gdb_id argument.
48 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id): New.
49 * linux-low.c (linux_create_inferior, linux_attach_lwp): Update
51 * remote-utils.c (prepare_resume_reply: Use thread_to_gdb_id.
52 * server.c (handle_query): Use thread_to_gdb_id.
53 (handle_v_cont, main): Use gdb_id_to_thread_id.
54 * server.h (add_thread): Update prototype.
55 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id): New
58 2005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
60 * linux-low.c (fetch_register, usr_store_inferior_registers): Handle
61 left-padded registers.
62 * linux-low.h (struct linux_target_ops): Add left_pad_xfer.
63 * linux-ppc64-low.c (the_low_target): Set left_pad_xfer.
65 2005-07-01 Steve Ellcey <sje@cup.hp.com>
67 * configure.ac (BFD_NEED_DECLARATION): Replace with AC_CHECK_DECLS.
68 * configure: Regenerate.
69 * config.in: Regenerate.
70 * server.h (NEED_DECLARATION_STRERROR):
71 Replace with !HAVE_DECL_STRERROR.
73 2005-06-16 Daniel Jacobowitz <dan@codesourcery.com>
75 * linux-low.c (linux_wait, linux_send_signal): Don't test
76 an unsigned long variable for > 0 if it could be MAX_ULONG.
77 * server.c (myresume): Likewise.
78 * target.c (set_desired_inferior): Likewise.
80 2005-06-13 Mark Kettenis <kettenis@gnu.org>
82 * configure.ac: Simplify and improve check for socklen_t.
83 * configure, config.in: Regenerate.
85 2005-06-12 Daniel Jacobowitz <dan@codesourcery.com>
88 * configure.ac: Add a test for socklen_t. Use three-argument
90 * config.in: Regenerated using autoheader 2.59.
91 * configure: Regenerated.
93 * gdbreplay.c (socklen_t): Provide a default.
94 (remote_open): Use socklen_t.
95 * remote-utils.c (socklen_t): Provide a default.
96 (remote_open): Use socklen_t.
97 (convert_int_to_ascii, convert_ascii_to_int, decode_M_packet): Use
100 * i387-fp.c (struct i387_fsave, struct i387_fxsave): Use unsigned
102 * linux-low.c (linux_read_memory, linux_write_memory)
103 (linux_read_auxv): Likewise.
104 * mem-break.c (breakpoint_data, set_breakpoint_data, check_mem_read)
105 (check_mem_write): Likewise.
106 * mem-break.h (set_breakpoint_data, check_mem_read, check_mem_write):
108 * regcache.c (struct inferior_rgcache_data, registers_to_string)
109 (registers_from_string, register_data): Likewise.
110 * server.c (handle_query, main): Likewise.
111 * server.h (convert_ascii_to_int, convert_int_to_ascii)
112 (decode_M_packet): Likewise.
113 * target.c (read_inferior_memory, write_inferior_memory): Likewise.
114 * target.h (struct target_ops): Update read_memory, write_memory,
116 (read_inferior_memory, write_inferior_memory): Update.
117 * linux-low.h (struct linux_target_ops): Change type of breakpoint
119 * linux-arm-low.c, linux-cris-low.c, linux-crisv32-low.c,
120 linux-i386-low.c, linux-m32r-low.c, linux-m68k-low.c,
121 linux-mips-low.c, linux-ppc-low.c, linux-ppc64-low.c,
122 linux-s390-low.c, linux-sh-low.c: Update for changes in
123 read_inferior_memory and the_low_target->breakpoint.
125 2005-05-28 Daniel Jacobowitz <dan@codesourcery.com>
127 * Makefile.in (SFILES): Add linux-ppc64-low.c.
128 (linux-ppc64-low.o, reg-ppc64.c, reg-ppc64.o): New targets.
129 * configure.srv: Add powerpc64-*-linux*.
130 * linux-ppc64-low.c: New file.
132 2005-05-23 Orjan Friberg <orjanf@axis.com>
134 * linux-cris-low.c: New file with support for CRIS.
135 * linux-crisv32-low.c: Ditto for CRISv32.
136 * Makefile.in (SFILES): Add linux-cris-low.c, linux-crisv32-low.c.
137 (clean): Add reg-cris.c and reg-crisv32.c.
138 Add linux-cris-low.o, linux-crisv32-low.o, reg-cris.o, reg-cris.c,
139 reg-crisv32.o, and reg-crisv32.c to make rules.
140 * configure.srv: Add cris-*-linux* and crisv32-*-linux* to list of
143 2005-05-16 Ulrich Weigand <uweigand@de.ibm.com>
145 * linux-low.c (fetch_register): Ensure buffer size is a multiple
146 of sizeof (PTRACE_XFER_TYPE).
147 (usr_store_inferior_registers): Likewise. Zero out excess bytes.
149 2005-05-12 Orjan Friberg <orjanf@axis.com>
151 * target.h (struct target_ops): Add insert_watchpoint,
152 remove_watchpoint, stopped_by_watchpoint, stopped_data_address function
153 pointers for hardware watchpoint support.
154 * linux-low.h (struct linux_target_ops): Ditto.
155 * linux-low.c (linux_insert_watchpoint, linux_remove_watchpoint)
156 (linux_stopped_by_watchpoint, linux_stopped_data_address): New. Add
158 * remote-utils.c (prepare_resume_reply): Add watchpoint information to
160 * server.c (main): Recognize 'Z' and 'z' packets.
162 2005-05-10 Ulrich Weigand <uweigand@de.ibm.com>
164 * linux-s390-low.c (s390_breakpoint, s390_breakpoint_len): Define.
165 (s390_get_pc, s390_set_pc, s390_breakpoint_at): New functions.
166 (the_low_target): Add new members.
168 2005-05-04 Daniel Jacobowitz <dan@codesourcery.com>
170 * proc-service.c (ps_lgetregs): Search all_processes instead of
173 2005-05-04 Daniel Jacobowitz <dan@codesourcery.com>
175 * server.c (start_inferior): Change return type to int.
176 (attach_inferior): Change sigptr to int *.
177 (handle_v_cont, handle_v_requests): Change signal to int *.
178 (main): Change signal to int.
180 2005-04-15 Kei Sakamoto <sakamoto.kei@renesas.com>
182 * Makefile.in: Add linux-m32r-low.o, reg-m32r.c and reg-m32r.o.
183 * configure.srv: Add m32r*-*-linux*.
184 * linux-m32r-low.c: New file.
186 2005-03-04 Daniel Jacobowitz <dan@codesourcery.com>
188 * Makefile.in (stamp-h): Set CONFIG_HEADERS explicitly.
190 2005-03-03 Daniel Jacobowitz <dan@codesourcery.com>
192 * inferiors.c (change_inferior_id, add_thread, find_inferior_id):
193 Take unsigned long arguments for PIDs.
194 * linux-low.c (add_process, linux_attach_lwp, linux_attach)
195 (linux_thread_alive, linux_wait_for_event, kill_lwp, send_sigstop)
196 (wait_for_sigstop, linux_resume_one_process)
197 (regsets_fetch_inferior_registers, linux_send_signal)
198 (linux_read_auxv): Likewise. Update the types of variables holding
199 PIDs. Update format string specifiers.
200 * linux-low.h (struct process_info, linux_attach_lwp): Likewise.
201 * remote-utils.c (prepare_resume_reply): Likewise.
202 * server.c (cont_thread, general_thread, step_thread)
203 (thread_from_wait, old_thread_from_wait, signal_pid): Change type to
205 (handle_query): Update format specifiers.
206 (handle_v_cont, main): Use strtoul for thread IDs.
207 * server.h (struct inferior_list_entry): Use unsigned long for ID.
208 (add_thread, find_inferior_id, change_inferior_id, cont_thread)
209 (general_thread, step_thread, thread_from_wait)
210 (old_thread_from_wait): Update.
211 * target.h (struct thread_resume): Use unsigned long for THREAD.
212 (struct target_ops): Use unsigned long for arguments to attach and
215 2005-02-24 Daniel Jacobowitz <dan@codesourcery.com>
217 * acinclude.m4: Include bfd/bfd.m4 directly.
218 * configure.ac: Use AC_ARG_PROGRAM. Suggested by Aron Griffis
219 <agriffis@toolchain.org>.
220 * aclocal.m4, configure: Regenerated.
222 2005-01-07 Andrew Cagney <cagney@gnu.org>
224 * configure.ac: Rename configure.in, require autoconf 2.59.
225 * configure: Re-generate.
227 2004-12-08 Daniel Jacobowitz <dan@debian.org>
229 * acinclude.m4 (SRV_CHECK_THREAD_DB): Add ps_get_thread_area. Reset
231 * aclocal.m4: Regenerated.
232 * configure: Regenerated.
234 2004-11-21 Andreas Schwab <schwab@suse.de>
236 * linux-m68k-low.c (m68k_num_gregs): Define.
237 (m68k_fill_gregset, m68k_store_gregset, m68k_fill_fpregset)
238 (m68k_store_fpregset, target_regsets) [HAVE_LINUX_REGSETS]: New.
239 (m68k_breakpoint, m68k_breakpoint_len, m68k_get_pc, m68k_set_pc)
240 (m68k_breakpoint_at): New. Add to the_low_target.
242 * configure.srv (m68*-*-linux*): Set srv_linux_regsets and
243 srv_linux_thread_db to yes.
245 2004-10-20 Joel Brobecker <brobecker@gnat.com>
247 * linux-x86-64-low.c (ARCH_SET_GS): Add definition if missing.
248 (ARCH_SET_FS): Likewise.
249 (ARCH_GET_FS): Likewise.
250 (ARCH_GET_GS): Likewise.
252 2004-10-16 Daniel Jacobowitz <dan@debian.org>
254 * linux-i386-low.c (ps_get_thread_area): New.
255 * linux-x86-64-low.c (ps_get_thread_area): New.
256 * linux-low.c: Include <sys/syscall.h>.
257 (linux_kill_one_process): Don't kill the first thread here.
258 (linux_kill): Kill the first thread here.
259 (kill_lwp): New function.
260 (send_sigstop, linux_send_signal): Use it.
261 * proc-service.c: Clean up #ifdefs.
262 (fpregset_info): Delete.
263 (ps_lgetregs): Update and enable implementation.
264 (ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs): Remove disabled
266 * remote-utils.c (struct sym_cache, symbol_cache): New.
267 (input_interrupt): Print a clearer message.
268 (async_io_enabled): New variable.
269 (enable_async_io, disable_async_io): Use it. Update comments.
270 (look_up_one_symbol): Use the symbol cache.
271 * thread-db.c (thread_db_look_up_symbols): New function.
272 (thread_db_init): Update comments. Call thread_db_look_up_symbols.
274 2004-10-16 Daniel Jacobowitz <dan@debian.org>
276 * configure.in: Test for -rdynamic.
277 * configure: Regenerated.
278 * Makefile (INTERNAL_LDFLAGS): New.
279 (gdbserver, gdbreplay): Use it.
281 2004-09-02 Andrew Cagney <cagney@gnu.org>
283 * Makefile.in (TAGS): Replace TM_FILE with DEPRECATED_TM_FILE.
285 2004-03-23 Daniel Jacobowitz <drow@mvista.com>
287 * linux-low.c (linux_wait): Clear all_processes list also.
289 2004-03-12 Daniel Jacobowitz <drow@mvista.com>
291 * linux-low.c: Include <errno.h>. Remove extern declaration of
294 2004-03-12 Daniel Jacobowitz <drow@mvista.com>
296 * gdbreplay.c, server.h, utils.c: Update copyright years.
298 2004-03-04 Nathan J. Williams <nathanw@wasabisystems.com>
300 * server.c (main): Print child status or termination signal from
301 variable 'signal', not 'sig'.
303 2004-03-04 Nathan J. Williams <nathanw@wasabisystems.com>
305 * linux-low.c (linux_read_memory): Change return type to
306 int. Check for and return error from ptrace().
307 * target.c (read_inferior_memory): Change return type to int. Pass
308 back return status from the_target->read_memory().
309 * target.h (struct target_ops): Adapt *read_memory() prototype.
311 (read_inferior_memory): Adapt prototype.
312 * server.c (main): Return an error packet if
313 read_inferior_memory() returns an error.
315 2004-03-04 Daniel Jacobowitz <drow@mvista.com>
317 * Makefile.in (distclean): Remove config.h, stamp-h, and config.log.
318 Unify with other clean targets.
320 2004-02-29 Daniel Jacobowitz <drow@mvista.com>
322 * server.c (handle_v_cont): Call set_desired_inferior.
324 2004-02-29 Daniel Jacobowitz <drow@mvista.com>
326 * remote-utils.c (prepare_resume_reply): Always supply "thread:".
328 2004-02-29 Daniel Jacobowitz <drow@mvista.com>
330 * linux-low.c (linux_wait): Unblock async I/O.
331 (linux_resume): Block and enable async I/O.
332 * remote-utils.c (block_async_io, unblock_async_io): New functions.
333 * server.h (block_async_io, unblock_async_io): Add prototypes.
335 2004-02-29 Daniel Jacobowitz <drow@mvista.com>
337 * remote-utils.c (remote_open): Print a status notice after
339 * server.c (attach_inferior): Print a status notice after
342 2004-02-29 Daniel Jacobowitz <drow@mvista.com>
344 * linux-arm-low.c (arm_get_pc): Print out stop PC in debug mode.
346 2004-02-26 Daniel Jacobowitz <drow@mvista.com>
348 * remote-utils.c (write_enn): Use "E01" instead of "ENN" for the
350 * server.c, target.h: Update copyright years.
352 2004-02-25 Roland McGrath <roland@redhat.com>
354 * target.h (struct target_ops): New member `read_auxv'.
355 * server.c (handle_query): Handle qPart:auxv:read: query using that.
356 * linux-low.c (linux_read_auxv): New function.
357 (linux_target_ops): Initialize `read_auxv' member to that.
359 2004-02-17 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
361 Committed by Jim Blandy <jimb@redhat.com>.
363 * linux-s390-low.c (s390_num_regs): Update.
364 (s390_regmap): Remove control registers. Use __s390x__ predefine
365 instead of GPR_SIZE to distiguish s390 and s390x targets.
367 2004-01-31 Daniel Jacobowitz <drow@mvista.com>
369 * linux-low.c: Update copyright year.
370 (check_removed_breakpoint): Clear pending_is_breakpoint.
371 (linux_set_resume_request, linux_queue_one_thread)
372 (resume_status_pending_p): New functions.
373 (linux_continue_one_thread): Use process->resume.
374 (linux_resume): Only resume threads if there are no pending events.
375 * linux-low.h (struct process_info): Add resume request
378 2004-01-30 Daniel Jacobowitz <drow@mvista.com>
380 * regcache.c (new_register_cache): Clear the allocated register
381 buffer. Suggested by Atsushi Nemoto <anemo@mba.ocn.ne.jp>.
383 2003-10-13 Daniel Jacobowitz <drow@mvista.com>
385 * linux-low.c (linux_resume): Take a struct thread_resume *
387 (linux_wait): Update call.
388 (resume_ptr): New static variable.
389 (linux_continue_one_thread): Renamed from
390 linux_continue_one_process. Use resume_ptr.
391 (linux_resume): Use linux_continue_one_thread.
392 * server.c (handle_v_cont, handle_v_requests): New functions.
393 (myresume): New function.
394 (main): Handle 'v' case.
395 * target.h (struct thread_resume): New type.
396 (struct target_ops): Change argument of "resume" to struct
398 (myresume): Delete macro.
400 2003-08-08 H.J. Lu <hongjiu.lu@intel.com>
402 * Makefile.in (install-only): Create dest dir. Support DESTDIR.
403 (uninstall): Support DESTDIR.
405 Mon Jul 21 20:09:34 UTC 2003 Brendan Conoboy <blc@redhat.com>
407 * configure.srv: Add xscale*linux copy of arm*linux entry.
409 2003-07-24 Daniel Jacobowitz <drow@mvista.com>
411 * linux-arm-low.c (arm_reinsert_addr): New function.
412 (the_low_target): Add arm_reinsert_addr.
414 2003-07-08 Mark Kettenis <kettenis@gnu.org>
416 * mem-break.c: Remove whitespace at end of file.
418 2003-06-28 Daniel Jacobowitz <drow@mvista.com>
420 * configure.in: Check whether we need to prototype strerror.
421 * server.h: Optionally prototype strerror.
422 * gdbreplay.c (perror_with_name): Use strerror.
423 * linux-low.c (linux_attach_lwp): Use strerror.
424 * utils.c (perror_with_name): Use strerror.
425 * config.in, configure: Regenerated.
427 2003-06-28 Daniel Jacobowitz <drow@mvista.com>
429 * linux-sh-low.c (sh_regmap): Fix FP register offsets, reported by
430 SUGIOKA Toshinobu <sugioka@itonet.co.jp>.
432 2003-06-20 Daniel Jacobowitz <drow@mvista.com>
434 * Makefile.in (SFILES): Update.
435 * low-hppabsd.c, low-lynx.c, low-nbsd.c, low-sim.c, low-sparc.c,
436 low-sun3.c: Remove files.
438 2003-06-17 Daniel Jacobowitz <drow@mvista.com>
440 * linux-low.c: Move comment to linux_thread_alive where it belonged.
441 (linux_detach_one_process, linux_detach): New functions.
442 (linux_target_ops): Add linux_detach.
443 * server.c (main): Handle 'D' packet.
444 * target.h (struct target_ops): Add "detach" member.
445 (detach_inferior): Define.
447 2003-06-13 Mark Kettenis <kettenis@gnu.org>
449 From Kelley Cook <kelleycook@wideopenwest.com>:
450 * configure.srv: Accept i[34567]86 variants.
452 2003-06-05 Daniel Jacobowitz <drow@mvista.com>
454 * linux-low.c (linux_wait_for_event): Correct comment typos.
455 (linux_resume_one_process): Call check_removed_breakpoint.
456 (linux_send_signal): New function.
457 (linux_target_ops): Add linux_send_signal.
458 * remote-utils.c (putpkt, input_interrupt): Use send_signal instead
460 * target.h (struct target_ops): Add send_signal.
462 2003-05-29 Jim Blandy <jimb@redhat.com>
464 * linux-low.c (usr_store_inferior_registers): Transfer buf in
465 PTRACE_XFER_TYPE-sized chunks, not int-sized chunks. Otherwise,
466 if 'int' is smaller than PTRACE_XFER_TYPE, you end up throwing
467 away part of the register's value.
469 2003-03-26 Daniel Jacobowitz <drow@mvista.com>
471 * linux-low.c (linux_create_inferior): Use __SIGRTMIN.
472 (linux_wait_for_event, linux_init_signals): Likewise.
474 2003-03-17 Daniel Jacobowitz <drow@mvista.com>
476 * configure.in: Check for stdlib.h.
477 * configure: Regenerated.
478 * config.in: Regenerated.
480 2003-01-04 Andreas Schwab <schwab@suse.de>
482 * linux-m68k-low.c (m68k_num_regs): Define to 29 instead of 31.
484 2003-01-02 Andrew Cagney <ac131313@redhat.com>
486 * Makefile.in: Remove obsolete code.
488 2002-11-20 Daniel Jacobowitz <drow@mvista.com>
490 * linux-s390-low.c (s390_regmap): Check GPR_SIZE instead of
493 2002-11-17 Stuart Hughes <seh@zee2.com>
495 * linux-arm-low.c (arm_num_regs): Increase.
496 (arm_regmap): Include status register.
498 2002-11-17 Daniel Jacobowitz <drow@mvista.com>
500 * linux-low.c (register_addr): Remove incorrect -1 check.
502 2002-08-29 Daniel Jacobowitz <drow@mvista.com>
504 * linux-low.c (linux_create_inferior): Call setpgid. Return
506 (unstopped_p, linux_signal_pid): Remove.
507 (linux_target_ops): Remove linux_signal_pid.
508 * remote-utils.c (putpkt, input_interrupt): Use signal_pid
509 global instead of target method.
510 * target.h (struct target_ops): Remove signal_pid. Update comment
512 * server.c (signal_pid): New variable.
513 (create_inferior): Set signal_pid. Block SIGTTOU and SIGTTIN in
514 gdbserver. Set the child to be the foreground process group.
515 (attach_inferior): Set signal_pid.
517 2002-08-23 Daniel Jacobowitz <drow@mvista.com>
519 * ChangeLog: New file, with entries from gdb/ChangeLog after GDB 5.2.
521 2002-08-20 Jim Blandy <jimb@redhat.com>
523 * Makefile.in (LDFLAGS): Allow the configure script to establish a
526 2002-08-01 Andrew Cagney <cagney@redhat.com>
528 * Makefile.in: Make chill references obsolete.
530 2002-07-24 Kevin Buettner <kevinb@redhat.com>
532 * configure.in (unistd.h): Add to AC_CHECK_HEADERS list.
533 * configure: Regenerate.
534 * config.in: Regenerate.
536 2002-07-09 David O'Brien <obrien@FreeBSD.org>
538 * gdbreplay.c (stdlib.h, unistd.h): Conditionaly include.
539 (perror_with_name, remote_close, remote_open, expect, play): Static.
541 2002-07-04 Michal Ludvig <mludvig@suse.cz>
543 * linux-x86-64-low.c (x86_64_regmap): Make it an array of
544 byte offsets instead of an array of indexes.
545 (x86_64_store_gregset, x86_64_store_fpregset): Parameter made const.
547 2002-06-13 Daniel Jacobowitz <drow@mvista.com>
549 * regcache.c: Add comment.
551 2002-06-11 Daniel Jacobowitz <drow@mvista.com>
553 * thread-db.c: New file.
554 * proc-service.c: New file.
555 * acinclude.m4: New file.
556 * Makefile.in: Add GDBSERVER_LIBS, gdb_proc_service_h,
557 proc-service.o, and thread-db.o.
558 (linux-low.o): Add USE_THREAD_DB.
559 * acconfig.h: Add HAVE_PRGREGSET_T, HAVE_PRFPREGSET_T,
560 HAVE_LWPID_T, HAVE_PSADDR_T, and PRFPREGSET_T_BROKEN.
561 * aclocal.m4: Regenerated.
562 * config.in: Regenerated.
563 * configure: Regenerated.
564 * configure.in: Check for proc_service.h, sys/procfs.h,
565 thread_db.h, and linux/elf.h headrs.
566 Check for lwpid_t, psaddr_t, prgregset_t, prfpregset_t, and
567 PRFPREGSET_T_BROKEN. Introduce srv_thread_depfiles and USE_THREAD_DB.
568 Check for -lthread_db and thread support.
569 * configure.srv: Enable thread_db support for ARM, i386, MIPS,
571 * i387-fp.c: Constify arguments.
572 * i387-fp.h: Likewise.
573 * inferiors.c: (struct thread_info): Renamed from
574 `struct inferior_info'. Remove PID member. Use generic inferior
575 list header. All uses updated.
576 (inferiors, signal_pid): Removed.
577 (all_threads): New variable.
578 (get_thread): Define.
579 (add_inferior_to_list): New function.
580 (for_each_inferior): New function.
581 (change_inferior_id): New function.
582 (add_inferior): Removed.
583 (remove_inferior): New function.
584 (add_thread): New function.
585 (free_one_thread): New function.
586 (remove_thread): New function.
587 (clear_inferiors): Use for_each_inferior and free_one_thread.
588 (find_inferior): New function.
589 (find_inferior_id): New function.
590 (inferior_target_data): Update argument type.
591 (set_inferior_target_data): Likewise.
592 (inferior_regcache_data): Likewise.
593 (set_inferior_regcache_data): Likewise.
594 * linux-low.c (linux_bp_reinsert): Remove.
595 (all_processes, stopping_threads, using_thrads)
596 (struct pending_signals, debug_threads, pid_of): New.
597 (inferior_pid): Replace with macro.
598 (struct inferior_linux_data): Remove.
599 (get_stop_pc, add_process): New functions.
600 (linux_create_inferior): Restore SIGRTMIN+1 before calling exec.
601 Use add_process and add_thread.
602 (linux_attach_lwp): New function, based on old linux_attach. Use
603 add_process and add_thread. Set stop_expected for new threads.
604 (linux_attach): New function.
605 (linux_kill_one_process): New function.
606 (linux_kill): Kill all LWPs.
607 (linux_thread_alive): Use find_inferior_id.
608 (check_removed_breakpoints, status_pending_p): New functions.
609 (linux_wait_for_process): Renamed from linux_wait_for_one_inferior.
610 Update. Use WNOHANG. Wait for cloned processes also. Update process
611 struct for the found process.
612 (linux_wait_for_event): New function.
613 (linux_wait): Use it. Support LWPs.
614 (send_sigstop, wait_for_sigstop, stop_all_processes)
615 (linux_resume_one_process, linux_continue_one_process): New functions.
616 (linux_resume): Support LWPs.
617 (REGISTER_RAW_SIZE): Remove.
618 (fetch_register): Use register_size instead. Call supply_register.
619 (usr_store_inferior_registers): Likewise. Call collect_register.
621 (regsets_fetch_inferior_registers): Improve error message.
622 (regsets_store_inferior_registers): Add debugging.
623 (linux_look_up_symbols): Call thread_db_init if USE_THREAD_DB.
624 (unstopped_p, linux_signal_pid): New functions.
625 (linux_target_ops): Add linux_signal_pid.
626 (linux_init_signals): New function.
627 (initialize_low): Call it. Initialize using_threads.
628 * regcache.c (inferior_regcache_data): Add valid
630 (get_regcache): Fetch registers lazily. Add fetch argument
631 and update all callers.
632 (regcache_invalidate_one, regcache_invalidate): New
634 (new_register_cache): Renamed from create_register_cache.
635 Return the new regcache.
636 (free_register_cache): Change argument to a void *.
637 (registers_to_string, registers_from_string): Call get_regcache
639 (register_data): Make static. Pass fetch flag to get_regcache.
640 (supply_register): Call get_regcache with fetch flag clear.
641 (collect_register): Call get_regcache with fetch flag set.
642 (collect_register_as_string): New function.
643 * regcache.h: Update.
644 * remote-utils.c (putpkt): Flush after debug output and use
646 Handle input interrupts while waiting for an ACK.
647 (input_interrupt): Use signal_pid method.
648 (getpkt): Flush after debug output and use stderr.
649 (outreg): Use collect_register_as_string.
650 (new_thread_notify, dead_thread_notify): New functions.
651 (prepare_resume_reply): Check using_threads. Set thread_from_wait
653 (look_up_one_symbol): Flush after debug output.
654 * server.c (step_thread, server_waiting): New variables.
655 (start_inferior): Don't use signal_pid. Update call to mywait.
656 (attach_inferior): Update call to mywait.
657 (handle_query): Handle qfThreadInfo and qsThreadInfo.
658 (main): Don't fetch/store registers explicitly. Use
659 set_desired_inferior. Support proposed ``Hs'' packet. Update
662 (struct inferior_list, struct_inferior_list_entry): New.
663 * target.c (set_desired_inferior): New.
664 (write_inferior_memory): Constify.
665 (mywait): New function.
667 (struct target_ops): New signal_pid method.
668 (mywait): Removed macro, added prototype.
670 * linux-low.h (regset_func): Removed.
671 (regset_fill_func, regset_store_func): New.
672 (enum regset_type): New.
673 (struct regset_info): Add type field. Use new operation types.
674 (struct linux_target_ops): stop_pc renamed to get_pc.
675 Add decr_pc_after_break and breakpoint_at.
676 (get_process, get_thread_proess, get_process_thread)
677 (strut process_info, all_processes, linux_attach_lwp)
678 (thread_db_init): New.
680 * linux-arm-low.c (arm_get_pc, arm_set_pc,
681 arm_breakpoint, arm_breakpoint_len, arm_breakpoint_at): New.
682 (the_low_target): Add new members.
683 * linux-i386-low.c (i386_store_gregset, i386_store_fpregset)
684 (i386_store_fpxregset): Constify.
685 (target_regsets): Add new kind identifier.
686 (i386_get_pc): Renamed from i386_stop_pc. Simplify.
687 (i386_set_pc): Add debugging.
688 (i386_breakpoint_at): New function.
689 (the_low_target): Add new members.
690 * linux-mips-low.c (mips_get_pc, mips_set_pc)
691 (mips_breakpoint, mips_breakpoint_len, mips_reinsert_addr)
692 (mips_breakpoint_at): New.
693 (the_low_target): Add new members.
694 * linux-ppc-low.c (ppc_get_pc, ppc_set_pc)
695 (ppc_breakpoint, ppc_breakpoint_len, ppc_breakpoint_at): New.
696 (the_low_target): Add new members.
697 * linux-sh-low.c (sh_get_pc, sh_set_pc)
698 (sh_breakpoint, sh_breakpoint_len, sh_breakpoint_at): New.
699 (the_low_target): Add new members.
700 * linux-x86-64-low.c (target_regsets): Add new kind
703 2002-05-15 Daniel Jacobowitz <drow@mvista.com>
705 From Martin Pool <mbp@samba.org>:
706 * server.c (gdbserver_usage): New function.
709 2002-05-14 Daniel Jacobowitz <drow@mvista.com>
711 * mem-break.c (reinsert_breakpoint_by_bp): Correct typo
714 2002-05-04 Andrew Cagney <ac131313@redhat.com>
716 * Makefile.in: Remove obsolete code.
718 2002-04-24 Michal Ludvig <mludvig@suse.cz>
720 * linux-low.c (regsets_fetch_inferior_registers),
721 (regsets_store_inferior_registers): Removed cast to int from
723 * regcache.h: Added declaration of struct inferior_info.
725 2002-04-20 Daniel Jacobowitz <drow@mvista.com>
727 * inferiors.c (struct inferior_info): Add regcache_data.
728 (add_inferior): Call create_register_cache.
729 (clear_inferiors): Call free_register_cache.
730 (inferior_regcache_data, set_inferior_regcache_data): New functions.
731 * regcache.c (struct inferior_regcache_data): New.
733 (get_regcache): New function.
734 (create_register_cache, free_register_cache): New functions.
735 (set_register_cache): Don't initialize the register cache here.
736 (registers_to_string, registers_from_string, register_data): Call
738 * regcache.h: Add prototypes.
739 * server.h: Likewise.
741 2002-04-20 Daniel Jacobowitz <drow@mvista.com>
743 * mem-break.c: New file.
744 * mem-break.h: New file.
745 * Makefile.in: Add mem-break.o rule; update server.h
747 * inferiors.c (struct inferior_info): Add target_data
749 (clear_inferiors): Free target_data member if set.
750 (inferior_target_data, set_inferior_target_data): New functions.
751 * linux-i386-low.c (i386_breakpoint, i386_breakpoint_len)
752 (i386_stop_pc, i386_set_pc): New. Add to the_low_target.
753 * linux-low.c (linux_bp_reinsert): New variable.
754 (struct inferior_linux_data): New.
755 (linux_create_inferior): Use set_inferior_target_data.
756 (linux_attach): Likewise. Call add_inferior.
757 (linux_wait_for_one_inferior): New function.
758 (linux_wait): Call it.
759 (linux_write_memory): Add const.
760 (initialize_low): Call set_breakpoint_data.
761 * linux-low.h (struct linux_target_ops): Add breakpoint
763 * server.c (attach_inferior): Remove extra add_inferior
765 * server.h: Include mem-break.h. Update inferior.c
767 * target.c (read_inferior_memory)
768 (write_inferior_memory): New functions.
769 * target.h (read_inferior_memory)
770 (write_inferior_memory): Change macros to prototypes.
771 (struct target_ops): Update comments. Add const to write_memory
774 2002-04-11 Daniel Jacobowitz <drow@mvista.com>
776 * linux-low.c (usr_store_inferior_registers): Support
777 registers which are allowed to fail to store.
778 * linux-low.h (linux_target_ops): Likewise.
779 * linux-ppc-low.c (ppc_regmap): Support FPSCR.
780 (ppc_cannot_store_register): FPSCR may not be storable.
782 2002-04-09 Daniel Jacobowitz <drow@mvista.com>
784 * server.h: Include <string.h> if HAVE_STRING_H.
785 * ChangeLog: Correct paths in last ChangeLog entry.
787 2002-04-09 Daniel Jacobowitz <drow@mvista.com>
789 * linux-low.h: Remove obsolete prototypes.
790 (struct linux_target_ops): New.
791 (extern the_low_target): New.
792 * linux-low.c (num_regs, regmap): Remove declarations.
793 (register_addr): Use the_low_target explicitly.
794 (fetch_register): Likewise.
795 (usr_fetch_inferior_registers): Likewise.
796 (usr_store_inferior_registers): Likewise.
797 * linux-arm-low.c (num_regs): Remove.
798 (arm_num_regs): Define.
799 (arm_regmap): Renamed from regmap, made static.
800 (arm_cannot_fetch_register): Renamed from cannot_fetch_register,
802 (arm_cannot_store_register): Renamed from cannot_store_register,
804 (the_low_target): New.
805 * linux-i386-low.c (num_regs): Remove.
806 (i386_num_regs): Define.
807 (i386_regmap): Renamed from regmap, made static.
808 (i386_cannot_fetch_register): Renamed from cannot_fetch_register,
810 (i386_cannot_store_register): Renamed from cannot_store_register,
812 (the_low_target): New.
813 * linux-ia64-low.c (num_regs): Remove.
814 (ia64_num_regs): Define.
815 (ia64_regmap): Renamed from regmap, made static.
816 (ia64_cannot_fetch_register): Renamed from cannot_fetch_register,
818 (ia64_cannot_store_register): Renamed from cannot_store_register,
820 (the_low_target): New.
821 * linux-m68k-low.c (num_regs): Remove.
822 (m68k_num_regs): Define.
823 (m68k_regmap): Renamed from regmap, made static.
824 (m68k_cannot_fetch_register): Renamed from cannot_fetch_register,
826 (m68k_cannot_store_register): Renamed from cannot_store_register,
828 (the_low_target): New.
829 * linux-mips-low.c (num_regs): Remove.
830 (mips_num_regs): Define.
831 (mips_regmap): Renamed from regmap, made static.
832 (mips_cannot_fetch_register): Renamed from cannot_fetch_register,
834 (mips_cannot_store_register): Renamed from cannot_store_register,
836 (the_low_target): New.
837 * linux-ppc-low.c (num_regs): Remove.
838 (ppc_num_regs): Define.
839 (ppc_regmap): Renamed from regmap, made static.
840 (ppc_cannot_fetch_register): Renamed from cannot_fetch_register,
842 (ppc_cannot_store_register): Renamed from cannot_store_register,
844 (the_low_target): New.
845 * linux-s390-low.c (num_regs): Remove.
846 (s390_num_regs): Define.
847 (s390_regmap): Renamed from regmap, made static.
848 (s390_cannot_fetch_register): Renamed from cannot_fetch_register,
850 (s390_cannot_store_register): Renamed from cannot_store_register,
852 (the_low_target): New.
853 * linux-sh-low.c (num_regs): Remove.
854 (sh_num_regs): Define.
855 (sh_regmap): Renamed from regmap, made static.
856 (sh_cannot_fetch_register): Renamed from cannot_fetch_register,
858 (sh_cannot_store_register): Renamed from cannot_store_register,
860 (the_low_target): New.
861 * linux-x86-64-low.c (x86_64_regmap): Renamed from regmap.
862 (the_low_target): New.
864 2002-04-09 Daniel Jacobowitz <drow@mvista.com>
866 * Makefile.in: Add stamp-h target.
867 * configure.in: Create stamp-h.
868 * configure: Regenerated.
870 2002-04-09 Daniel Jacobowitz <drow@mvista.com>
872 * inferiors.c: New file.
873 * target.c: New file.
874 * target.h: New file.
875 * Makefile.in: Add target.o and inferiors.o. Update
877 * linux-low.c (inferior_pid): New static variable,
879 (linux_create_inferior): Renamed from create_inferior.
880 Call add_inferior. Return 0 on success instead of a PID.
881 (linux_attach): Renamed from myattach.
882 (linux_kill): Renamed from kill_inferior. Call clear_inferiors ().
883 (linux_thread_alive): Renamed from mythread_alive.
884 (linux_wait): Renamed from mywait. Call clear_inferiors () if the
886 (linux_resume): Renamed from myresume. Add missing ``return 0''.
887 (regsets_store_inferior_registers): Correct error message.
888 Add missing ``return 0''.
889 (linux_fetch_registers): Renamed from fetch_inferior_registers.
890 (linux_store_registers): Renamed from store_inferior_registers.
891 (linux_read_memory): Renamed from read_inferior_memory.
892 (linux_write_memory): Renamed from write_inferior_memory.
893 (linux_target_ops): New structure.
894 (initialize_low): Call set_target_ops ().
895 * remote-utils.c (unhexify): New function.
896 (hexify): New function.
897 (input_interrupt): Send signals to ``signal_pid''.
898 * server.c (inferior_pid): Remove.
899 (start_inferior): Update create_inferior call.
900 (attach_inferior): Call add_inferior.
901 (handle_query): New function.
902 (main): Call handle_query for `q' packets.
903 * server.h: Include "target.h". Remove obsolete prototypes.
904 Add prototypes for "inferiors.c", "target.c", hexify, and unhexify.
906 2002-04-09 Daniel Jacobowitz <drow@mvista.com>
908 * Makefile.in: Add WARN_CFLAGS. Update configury
910 * configure.in: Check for <string.h>
911 * configure: Regenerate.
912 * config.in: Regenerate.
913 * gdbreplay.c: Include needed system headers.
914 (remote_open): Remove strchr prototype.
915 * linux-low.h: Correct #ifdef to HAVE_LINUX_USRREGS.
916 * regcache.c (supply_register): Change buf argument to const void *.
917 (supply_register_by_name): Likewise.
918 (collect_register): Change buf argument to void *.
919 (collect_register_by_name): Likewise.
920 * regcache.h: Add missing prototypes.
921 * remote-utils.c: Include <arpa/inet.h> for inet_ntoa.
922 * server.c (handle_query): New function.
923 (attached): New static variable, moved out of main.
924 (main): Quiet longjmp clobber warnings.
925 * server.h: Add ATTR_NORETURN and ATTR_FORMAT. Update prototypes.
926 * utils.c (error): Remove NORETURN.