]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gdb/gdbserver/ChangeLog
daily update
[thirdparty/binutils-gdb.git] / gdb / gdbserver / ChangeLog
CommitLineData
6fe305f7
UW
12008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
2
3 * configure.srv [powerpc64-*-linux*]: Add all files mentioned for
4 powerpc-*-linux* to srv_regobj and reg_xmlfiles.
5 * linux-ppc-low.c (ppc_get_pc): Support bi-arch operation.
6 (ppc_set_pc): Likewise.
7 (ppc_arch_setup): New function.
8 (ppc_fill_gregset): Call ppc_collect_ptrace_register instead
9 of collect_register.
10 (the_low_target): Use ppc_arch_setup as arch_setup initializer.
11
5b0a002e
UW
122008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
13
14 * configure.srv [powerpc64-*-linux*]: Use linux-ppc-low.o
15 instead of linux-ppc64-low.o.
16 * linux-ppc64-low.c: Remove file.
17 * Makefile.in (SFILES): Remove linux-ppc64-low.c.
18 (linux-ppc64-low.o): Remove rule.
19
20 * linux-ppc-low.c (init_registers_ppc64): Add prototype.
21 (init_registers_powerpc_64): Likewise.
22 (ppc_regmap): Conditionally define depending on __powerpc64__.
23 (ppc_cannot_store_register): Do not special-case "fpscr" when
24 compiled on __powerpc64__.
25 (ppc_collect_ptrace_register): New function.
26 (ppc_supply_ptrace_register): New function.
27 (ppc_breakpoint): Change type to "unsigned int".
28 (ppc_breakpoint_at): Change type of "insn" to "unsigned int".
29 (the_low_target): Conditionally provide initializers for the
30 arch_setup member depending on __powerpc64__. Install
31 collect_ptrace_register and supply_ptrace_register members.
32
9b4b61c8
UW
332008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
34
35 * regcache.h (gdbserver_xmltarget): Add extern declaration.
36 * server.c (gdbserver_xmltarget): Define.
37 (get_features_xml): Use it to replace "target.xml" and arch_string.
38
39 * configure.srv: Remove srv_xmltarget. Add XML files that were
40 mentioned there to srv_xmlfiles instead. Remove conditional tests
41 on gdb_cv_arm_iwmmxt, gdb_cv_ppc_altivec, gdb_cv_ppc_spe; set
42 srv_xmlfiles and srv_regobj to include all possible choices.
43 * configure.ac (srv_xmltarget): Remove.
44 (srv_xmlfiles): Do not add "target.xml".
45 (gdb_cv_arm_iwmmxt, gdb_cv_ppc_altivec, gdb_cv_ppc_spe): Remove
46 checks for supplementary target information.
47 * configure: Regenerate.
48 * Makefile.in (XML_TARGET): Remove.
49 (target.xml): Remove rule.
50 (clean): Do not clean up target.xml.
51 (.PRECIOUS): Do not mention target.xml.
52
53 * target.h (struct target_ops): Remove arch_string member.
54 * linux-low.c (linux_arch_string): Remove.
55 (linux_target_ops): Remove arch_string initializer.
56 * linux-low.h (struct linux_target_ops): Remove arch_string member.
57 * linux-i386-low.c (the_low_target): Remove arch_string initializer.
58 * linux-x86-64-low.c (the_low_target): Remove arch_string initializer.
59 * spu-low.c (spu_arch_string): Remove.
60 (spu_target_ops): Remove arch_string initializer.
61 * win32-low.c (win32_arch_string): Remove.
62 (win32_target_ops): Remove arch_string initializer.
63 * win32-low.h (struct win32_target_ops): Remove arch_string member.
64 * win32-arm-low.c (the_low_target): Remove arch_string initializer.
65 * win32-i368-low.c (the_low_target): Remove arch_string initializer.
66
ee1a7ae4
UW
672008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
68
69 * linux-low.h (struct linux_target_ops): Replace left_pad_xfer field
70 by collect_ptrace_register and supply_ptrace_register hooks.
71 * linux-low.c (fetch_register): Use supply_ptrace_register callback
72 instead of checking for the_low_target.left_pad_xfer.
73 (usr_store_inferior_registers): Use collect_ptrace_register callback
74 instead of checking for the_low_target.left_pad_xfer.
75
76 * linux-s390-low.c (s390_collect_ptrace_register): New function.
77 (s390_supply_ptrace_register): Likewise.
78 (s390_fill_gregset): Call s390_collect_ptrace_register.
79 (the_low_target): Update.
80
81 * linux-ppc64-low.c (ppc_collect_ptrace_register): New function.
82 (ppc_supply_ptrace_register): Likewise.
83 (the_low_target): Update.
84
85 * linux-i386-low.c (the_low_target): Update.
86 * linux-x86-64-low.c (the_low_target): Update.
87
d61ddec4
UW
882008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
89
90 * configure.srv [s390x-*-linux*]: Set srv_regobj to include both
91 reg-s390.o and reg-s390x.o.
92
93 * linux-low.c (new_inferior): New global variable.
94 (linux_create_inferior, linux_attach): Set it.
95 (linux_wait_for_process): Call the_low_target.arch_setup after the
96 target has stopped for the first time.
97 (initialize_low): Do not call the_low_target.arch_setup.
98
99 * linux-s390-low.c (s390_get_pc): Support bi-arch operation.
100 (s390_set_pc): Likewise.
101 (s390_arch_setup): New function.
102 (the_low_target): Use s390_arch_setup as arch_setup routine.
103
104 * regcache.c (realloc_register_cache): New function.
105 (set_register_cache): Call it for each existing regcache.
106
d05b4ac3
UW
1072008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
108
109 * server.h (init_registers): Remove prototype.
110
111 * linux-low.h (struct linux_target_ops): Add arch_setup field.
112 * linux-low.c (initialize_low): Call the_low_target.arch_setup ()
113 instead of init_registers ().
114 * linux-arm-low.c (init_registers_arm): Add prototype.
115 (init_registers_arm_with_iwmmxt): Likewise.
116 (the_low_target): Add initializer for arch_setup field.
117 * linux-cris-low.c (init_registers_cris): Add prototype.
118 (the_low_target): Add initializer for arch_setup field.
119 * linux-crisv32-low.c (init_registers_crisv32): Add prototype.
120 (the_low_target): Add initializer for arch_setup field.
121 * linux-i386-low.c (init_registers_i386_linux): Add prototype.
122 (the_low_target): Add initializer for arch_setup field.
123 * linux-ia64-low.c (init_registers_ia64): Add prototype.
124 (the_low_target): Add initializer for arch_setup field.
125 * linux-m32r-low.c (init_registers_m32r): Add prototype.
126 (the_low_target): Add initializer for arch_setup field.
127 * linux-m68k-low.c (init_registers_m68k): Add prototype.
128 (the_low_target): Add initializer for arch_setup field.
129 * linux-mips-low.c (init_registers_mips_linux): Add prototype.
130 (init_registers_mips64_linux): Likewise.
131 (the_low_target): Add initializer for arch_setup field.
132 * linux-ppc-low.c (init_registers_ppc): Add prototype.
133 (init_registers_powerpc_32, init_registers_powerpc_e500): Likewise.
134 (the_low_target): Add initializer for arch_setup field.
135 * linux-ppc64-low.c (init_registers_ppc64): Add prototype.
136 (init_registers_powerpc_64): Likewise.
137 (the_low_target): Add initializer for arch_setup field.
138 * linux-s390-low.c (init_registers_s390): Add prototype.
139 (init_registers_s390x): Likewise.
140 (the_low_target): Add initializer for arch_setup field.
141 * linux-sh-low.c (init_registers_sh): Add prototype.
142 (the_low_target): Add initializer for arch_setup field.
143 * linux-x86-64-low.c (init_registers_x86_64_linux): Add prototype.
144 (the_low_target): Add initializer for arch_setup field.
145 * linux-xtensa-low.c (init_registers_xtensa): Add prototype.
146 (the_low_target): Add initializer for arch_setup field.
147
148 * win32-low.h (struct win32_target_ops): Add arch_setup field.
149 * win32-low.c (initialize_low): Call the_low_target.arch_setup ()
150 instead of init_registers ().
151 * win32-arm-low.c (init_registers_arm): Add prototype.
152 (the_low_target): Add initializer for arch_setup field.
153 * win32-i386-low.c (init_registers_i386): Add prototype.
154 (the_low_target): Add initializer for arch_setup field.
155
156 * spu-low.c (init_registers_spu): Add prototype.
157 (initialize_low): Call initialie_registers_spu () instead of
158 initialize_registers ().
159
fd96d250
PA
1602008-02-19 Pedro Alves <pedro@codesourcery.com>
161
162 * server.c (handle_v_requests): When handling the vRun and vAttach
163 packets, if already debugging a process, don't kill it. Return an
164 error instead.
165
d41b6bb4
DJ
1662008-02-17 Daniel Jacobowitz <dan@codesourcery.com>
167
168 * server.c (handle_query): Correct length check.
169
5ac588cf
PA
1702008-02-14 Pedro Alves <pedro_alves@portugalmail.pt>
171
172 * win32-low.c (do_initial_child_stuff): Add process handle
173 parameter. Set current_process_handle and current_process_id from the
174 parameters. Clear globals.
175 (win32_create_inferior): Don't set current_process_handle and
176 current_process_id here. Instead pass them on the call to
177 do_initial_child_stuff.
178 (win32_attach): Likewise.
179 (win32_clear_inferiors): New.
180 (win32_kill): Don't close the current process handle or the
181 current thread handle here. Instead call win32_clear_inferiors.
182 (win32_detach): Don't open a new handle to the process. Call
183 win32_clear_inferiors.
184 (win32_join): Don't rely on current_process_handle; open a new
185 handle using the process id.
186 (win32_wait): Call win32_clear_inferiors when the inferior process
187 has exited.
188
ecd7ecbc
DJ
1892008-02-14 Daniel Jacobowitz <dan@codesourcery.com>
190
191 * server.c (monitor_show_help): Add "exit".
192
1525d545
MG
1932008-02-11 Maxim Grigoriev <maxim2405@gmail.com>
194
ecd7ecbc 195 * Makefile.in (SFILES): Add linux-xtensa-low.c.
1525d545
MG
196 (clean): Add reg-xtensa.c.
197 (linux-xtensa-low.o, reg-xtensa.o, reg-xtensa.c): New dependencies.
ecd7ecbc
DJ
198 * configure.srv (xtensa*-*-linux*) New target.
199 * linux-xtensa-low.c: New.
200 * xtensa-xtregs.c: New.
1525d545 201
59a016f0
PA
2022008-02-01 Pedro Alves <pedro_alves@portugalmail.pt>
203
204 * hostio.c: Don't include errno.h.
205 (errno_to_fileio_errno): Move to hostio-errno.
206 * hostio.c: (hostio_error): Remove the error parameter. Defer the
207 error number outputting to the target->hostio_last_error callback.
208 (hostio_packet_error): Use FILEIO_EINVAL directly.
209 (handle_open, handle_pread, hostio_error, handle_unlink): Update
210 calls to hostio_error.
211 * hostio-errno.c: New.
212 * server.h (hostio_last_error_from_errno): Declare.
213 * target.h (target_ops): Add hostio_last_error member.
214 * linux-low.c (linux_target_op): Register hostio_last_error_from_errno
215 as hostio_last_error handler.
216 * spu-low.c (spu_target_ops): Likewise.
217 * win32-low.c [_WIN32_WCE] (win32_error_to_fileio_error)
218 (wince_hostio_last_error): New functions.
219 (win32_target_ops) [_WIN32_WCE]: Register wince_hostio_last_error
220 as hostio_last_error handler.
221 (win32_target_ops) [!_WIN32_WCE]: Register
222 hostio_last_error_from_errno as hostio_last_error handler.
223 * Makefile.in (SFILES): Add hostio.c and hostio-errno.c.
224 (hostio-errno.o): New rule.
225 * configure.ac (GDBSERVER_DEPFILES): Add $srv_hostio_err_objs.
226 * configure.srv (srv_hostio_err_objs): New variable. Default to
227 hostio-errno.o.
228 (arm*-*-mingw32ce*): Set srv_hostio_err_objs to "".
229 * configure: Regenerate.
230
2d717e4f
DJ
2312008-01-29 Daniel Jacobowitz <dan@codesourcery.com>
232
233 * linux-low.c (linux_attach_lwp): Do not _exit after errors.
234 (linux_kill, linux_detach): Clean up the process list.
235 * remote-utils.c (remote_open): Improve port number parsing.
236 (putpkt_binary, input_interrupt): Only send interrupts if the target
237 is running.
238 * server.c (extended_protocol): Make static.
239 (attached): Define earlier.
240 (exit_requested, response_needed, program_argv): New variables.
241 (target_running): New.
242 (start_inferior): Clear attached here.
243 (attach_inferior): Set attached here.
244 (require_running): Define.
245 (handle_query): Use require_running and target_running. Implement
246 "monitor exit".
247 (handle_v_attach, handle_v_run): New.
248 (handle_v_requests): Use require_running. Handle vAttach and vRun.
249 (gdbserver_usage): Update.
250 (main): Redo argument parsing. Handle --debug and --multi. Handle
251 --attach along with other options or after the port. Save
252 program_argv. Support no initial program. Resynchronize
253 communication with GDB after an error. Handle "monitor exit".
254 Use require_running and target_running. Always allow the extended
255 protocol. Do not error out for Hc0 or Hc-1. Do not automatically
256 restart in extended mode.
257 * README: Refer to the GDB manual. Update --attach usage.
258
7407e2de
AS
2592007-12-20 Andreas Schwab <schwab@suse.de>
260
261 * linux-low.c (STACK_SIZE): Define.
262 (linux_tracefork_child): Use it. Use __clone2 on ia64.
263 (linux_test_for_tracefork): Likewise.
264
b65d95c5
DJ
2652007-12-18 Daniel Jacobowitz <dan@codesourcery.com>
266
267 * linux-low.c (linux_wait_for_event): Update messages. Do not
268 reinsert auto-delete breakpoints.
269 * mem-break.c (struct breakpoint): Change return type of handler to
270 int.
271 (set_breakpoint_at): Update handler type.
272 (reinsert_breakpoint_handler): Return 1 instead of calling
273 delete_breakpoint.
274 (reinsert_breakpoint_by_bp): Check for the original breakpoint before
275 setting a new one.
276 (check_breakpoints): Delete auto-delete breakpoints and return 2.
277 * mem-break.h (set_breakpoint_at): Update handler type.
278 * thread-db.c (thread_db_create_event, thread_db_create_event): Update.
279 * win32-low.c (auto_delete_breakpoint): New.
280 (get_child_debug_event): Use it.
281
4e799345
DJ
2822007-12-16 Daniel Jacobowitz <dan@codesourcery.com>
283
284 * configure.ac: Check for pread and pwrite.
285 * hostio.c (handle_pread): Fall back to lseek and read.
286 (handle_pwrite): Fall back to lseek and write.
287 * config.in, configure: Regenerated.
288
27524b67
DJ
2892007-12-07 Daniel Jacobowitz <dan@codesourcery.com>
290
291 * server.c (myresume): Add own_buf argument.
292 (main): Update calls.
293
a20d5e98
DJ
2942007-12-06 Daniel Jacobowitz <dan@codesourcery.com>
295
296 * linux-low.c (linux_wait, linux_resume): Do not handle async I/O.
297 * remote-utils.c (remote_open): Do not call disable_async_io.
298 (block_async_io): Delete.
299 (unblock_async_io): Make static.
300 (initialize_async_io): New.
301 * server.c (handle_v_cont): Handle async I/O here.
302 (myresume): Likewise. Move other common resume tasks here...
303 (main): ... from here. Call initialize_async_io. Disable async
304 I/O before the main loop.
305 * server.h (initialize_async_io): Declare.
306 (block_async_io, unblock_async_io): Delete prototypes.
307 * spu-low.c (spu_resume, spu_wait): Do not handle async I/O here.
308
b79d787e
DJ
3092007-12-06 Mick Davis <mickd@goanna.iinet.net.au>
310
311 * remote-utils.c (readchar): Allow binary data in received messages.
312
d97903b2
PA
3132007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
314
315 * win32-low.c (attaching): New global.
316 (win32_create_inferior): Clear the `attaching' global.
317 (win32_attach): Set the `attaching' global.
318 (get_child_debug_event) [_WIN32_WCE]: Stop the inferior when
319 attaching. Only set a breakpoint at the entry point if not
320 attaching.
321
311de423
PA
3222007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
323
324 * server.c (main): Don't report dll events on the initial
325 connection on attaches.
326
6c2d16d2
PA
3272007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
328
329 * server.c (main): Relax numerical bases supported for the pid of
330 the --attach command line argument.
331
5ca906e6
PA
3322007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
333
334 * win32-low.c (win32_attach): Call OpenProcess before
335 DebugActiveProcess, not after. Add last error output to error
336 call.
337
9c6c8194
PA
3382007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
339
340 * win32-low.c (win32_get_thread_context)
341 (win32_set_thread_context): New functions.
342 (thread_rec): Use win32_get_thread_context.
343 (continue_one_thread, win32_resume): Use win32_set_thread_context.
344 * win32-low.h (win32_thread_info) [_WIN32_WCE]: Add `base_context'
345 field.
346
4d5d1aaa
PA
3472007-12-03 Leo Zayas
348 Pedro Alves <pedro_alves@portugalmail.pt>
349
350 * win32-low.c (soft_interrupt_requested, faked_breakpoint): New
351 global variables.
352 (child_add_thread): Minor cleanup.
353 (child_continue): Resume artificially suspended threads before
354 calling ContinueDebugEvent.
355 (suspend_one_thread): New.
356 (fake_breakpoint_event): New.
357 (get_child_debug_event): Change return type to int. Check here if
358 gdb sent an interrupt request. If a soft interrupt was requested,
359 fake a breakpoint event. Return 0 if there is no event to handle,
360 and 1 otherwise.
361 (win32_wait): Don't check here if gdb sent an interrupt request.
362 Ensure there is a valid event to handle.
363 (win32_request_interrupt): Add soft interruption method as last
364 resort.
365
c436e841
PA
3662007-12-03 Leo Zayas
367 Pedro Alves <pedro_alves@portugalmail.pt>
368
369 * win32-low.h (win32_thread_info): Add descriptions to the
370 structure members. Replace `suspend_count' counter by a
371 `suspended' flag.
372 * win32-low.c (thread_rec): Update condition of when to get the
373 context from the inferior. Rely on ContextFlags being set if it
374 has already been retrieved. Only suspend the inferior thread if
375 we haven't already. Warn if that fails.
376 (continue_one_thread): s/suspend_count/suspended/. Only call
377 ResumeThread once. Warn if that fails.
378
e7b5fa67
PA
3792007-12-02 Pedro Alves <pedro_alves@portugalmail.pt>
380
381 * win32-low.c (win32_wait): Don't read from the inferior when it
382 has already exited.
383
a385171d
PA
3842007-12-02 Pedro Alves <pedro_alves@portugalmail.pt>
385
386 * Makefile.in (win32_low_h): New variable.
387 (win32-low.o): Add dependency on $(win32_low_h).
388 (win32-arm-low.o, win32-i386-low.o): New rules.
389
f80c84b3
DJ
3902007-11-30 Daniel Jacobowitz <dan@codesourcery.com>
391
392 * hostio.c: Correct copyright year.
393
a6b151f1
DJ
3942007-11-30 Daniel Jacobowitz <dan@codesourcery.com>
395
396 * Makefile.in (OBS): Add hostio.o.
397 (hostio.o): New rule.
398 * server.h (handle_vFile): Declare.
399 * hostio.c: New file.
400 * server.c (handle_v_requests): Take packet_len and new_packet_len
401 for binary packets. Call handle_vFile.
402 (main): Update call to handle_v_requests.
403
f9387fc3
DJ
4042007-11-05 Daniel Jacobowitz <dan@codesourcery.com>
405
406 * linux-low.c: Include <sched.h>.
407
51c2684e
DJ
4082007-11-01 Daniel Jacobowitz <dan@codesourcery.com>
409
410 * linux-low.c (linux_tracefork_grandchild): New.
411 (linux_tracefork_child): Use clone.
412 (linux_test_for_tracefork): Use clone; allocate and free a stack.
413
75f83163
JB
4142007-10-31 Joel Brobecker <brobecker@adacore.com>
415
416 * Makefile.in: Use $(SHELL) instead of "sh" to call regdat.sh.
417
da5898ce
DJ
4182007-10-24 Daniel Jacobowitz <dan@codesourcery.com>
419
420 * linux-low.c (handle_extended_wait): Handle unexpected signals.
421
24a09b5f
DJ
4222007-10-23 Daniel Jacobowitz <dan@codesourcery.com>
423
424 * inferiors.c (change_inferior_id): Delete.
425 (add_pid_to_list, pull_pid_from_list): New.
426 * linux-low.c (PTRACE_SETOPTIONS, PTRACE_GETEVENTMSG)
427 (PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK, PTRACE_O_TRACEVFORK)
428 (PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC, PTRACE_O_TRACEVFORKDONE)
429 (PTRACE_O_TRACEEXIT, PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK)
430 (PTRACE_EVENT_CLONE, PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE)
431 (PTRACE_EVENT_EXIT, __WALL): Provide default definitions.
432 (stopped_pids, thread_db_active, must_set_ptrace_flags): New variables.
433 (using_threads): Always set to 1.
434 (handle_extended_wait): New.
435 (add_process): Do not set TID.
436 (linux_create_inferior): Set must_set_ptrace_flags.
437 (linux_attach_lwp): Remove TID argument. Do not check using_threads.
438 Use PTRACE_SETOPTIONS. Call new_thread_notify. Update all callers.
439 (linux_thread_alive): Rename TID argument to LWPID.
440 (linux_wait_for_process): Handle unknown processes. Do not use TID.
441 (linux_wait_for_event): Do not use TID or check using_threads. Update
442 call to dead_thread_notify. Call handle_extended_wait.
443 (linux_create_inferior): Use PTRACE_SETOPTIONS.
444 (send_sigstop): Delete sigstop_sent.
445 (wait_for_sigstop): Avoid TID.
446 (linux_supports_tracefork_flag, linux_tracefork_child, my_waitpid)
447 (linux_test_for_tracefork): New.
448 (linux_lookup_signals): Use thread_db_active and
449 linux_supports_tracefork_flag.
450 (initialize_low): Use thread_db_active and linux_test_for_tracefork.
451 * linux-low.h (get_process_thread): Avoid TID.
452 (struct process_ifo): Move thread_known and tid to the end. Remove
453 sigstop_sent.
454 (linux_attach_lwp, thread_db_init): Update prototypes.
455 * server.h (change_inferior_id): Delete prototype.
456 (add_pid_to_list, pull_pid_from_list): New prototypes.
457 * thread-db.c (thread_db_use_events): New.
458 (find_first_thread): Rename to...
459 (find_one_thread): ...this. Update callers and messages. Do not
460 call fatal. Check thread_db_use_events. Do not call
461 change_inferior_id or new_thread_notify.
462 (maybe_attach_thread): Update. Do not call new_thread_notify.
463 (thread_db_init): Set thread_db_use_events. Check use_events.
464 * utils.c (fatal, warning): Correct message prefix.
465
30ed0a8f
DJ
4662007-10-15 Daniel Jacobowitz <dan@codesourcery.com>
467
468 * Makefile.in (clean): Remove new files.
469 (powerpc-32.o, powerpc-32.c, powerpc-e500.o, powerpc-e500.c)
470 (powerpc-64.o, powerpc-64.c): New rules.
471 * configure.srv: Use alternate register sets for powerpc64-*-linux*
472 with AltiVec, powerpc-*-linux* with AltiVec, and powerpc-*-linux*
473 with SPE.
474 * linux-ppc-low.c (ppc_regmap): Do not fetch the FP registers for
475 SPE targets.
476 (ppc_cannot_store_register): Do not check for FPSCR for SPE targets.
477 (PTRACE_GETVRREGS, PTRACE_SETVRREGS, SIZEOF_VRREGS, ppc_fill_vrregset)
478 (ppc_store_vrregset, PTRACE_GETEVRREGS, PTRACE_SETEVRREGS)
479 (struct gdb_evrregset_t, ppc_fill_evrregset, ppc_store_evrregset): New.
480 (target_regsets): Add AltiVec and SPE register sets.
481 * configure.ac: Check for AltiVec and SPE.
482 * linux-ppc64-low.c (PTRACE_GETVRREGS, PTRACE_SETVRREGS, SIZEOF_VRREGS)
483 (ppc_fill_vrregset, ppc_store_vrregset): New.
484 (target_regsets): Add AltiVec register set.
485 * configure: Regenerated.
486
fd462a61
DJ
4872007-09-19 Daniel Jacobowitz <dan@codesourcery.com>
488
489 * linux-low.c (O_LARGEFILE): Define.
490 (linux_read_memory): Use /proc/PID/mem.
491 * configure.ac: Use AC_GNU_SOURCE. Check for pread64.
492 * configure, config.in: Regenerated.
493
69f223ed
DJ
4942007-09-04 Daniel Jacobowitz <dan@codesourcery.com>
495
496 * linux-low.c (linux_wait_for_event): Do not pass signals while
497 single-stepping.
498
aec18585
PA
4992007-09-03 Pedro Alves <pedro_alves@portugalmail.pt>
500
501 * win32-low.c (create_process): New.
502 (win32_create_inferior): Use create_process instead of
503 CreateProcess. If create_process failed retry appending an ".exe"
504 suffix. Store the GetLastError result immediatelly after
505 create_process calls and use it on the call to error.
506
34d86ddd
PA
5072007-09-03 Pedro Alves <pedro_alves@portugalmail.pt>
508
509 * win32-low.c (handle_load_dll): Don't use toolhelp when waiting.
510
5a0e3bd0
JB
5112007-08-23 Joel Brobecker <brobecker@adacore.com>
512
513 * configure.ac: Switch license to GPLv3.
514
f88c79e6
MS
5152007-08-01 Michael Snyder <msnyder@access-company.com>
516
517 * remote-utils.c (putpkt_binary): Memory leak, free buf2.
518
6b3d9b83
PA
5192007-07-31 Pedro Alves <pedro_alves@portugalmail.pt>
520
521 * win32-low.c (winapi_CloseToolhelp32Snapshot) [_WIN32_WCE]: New
522 typedef.
523 (win32_CloseToolhelp32Snapshot) [_WIN32_WCE]: New global var.
524 (load_toolhelp) [_WIN32_WCE]: Load TOOLHELP.DLL. Get
525 CloseToolhelp32Snapshot.
526 (toolhelp_get_dll_name) [_WIN32_WCE]: Close the snapshot with
527 CloseToolhelp32Snapshot.
528
c588c53c
MS
5292007-07-27 Michael Snyder <michael.snyder@access-company.com>
530
531 * server.c (main): Check for inferior exit before main loop.
532
aa0403d9
PA
5332007-07-18 Pedro Alves <pedro_alves@portugalmail.pt>
534
535 * remote-utils.c (remote_open): Set SO_KEEPALIVE on remote_desc
536 instead of on tmp_desc.
537
255e7678
DJ
5382007-07-17 Pedro Alves <pedro_alves@portugalmail.pt>
539 Daniel Jacobowitz <dan@codesourcery.com>
540
541 * inferiors.c (all_dlls, dlls_changed, get_dll): New.
542 (add_thread): Minor cleanups.
543 (clear_inferiors): Move lower in the file. Clear the DLL
544 list.
545 (free_one_dll, match_dll, loaded_dll, unloaded_dll, clear_list): New.
546 * remote-utils.c (prepare_resume_reply): Check dlls_changed.
547 (xml_escape_text): New.
548 * server.c (handle_query): Handle qXfer:libraries:read. Report it
549 for qSupported.
550 (handle_v_cont): Report errors.
551 (gdbserver_version): Update.
552 (main): Correct size of own_buf. Do not report initial DLL events.
553 * server.h (struct dll_info, all_dlls, dlls_changed, loaded_dll)
554 (unloaded_dll, xml_escape_text): New.
555 * win32-low.c (enum target_waitkind): Update comments.
556 (win32_add_one_solib, get_image_name, winapi_EnumProcessModules)
557 (winapi_GetModuleInformation, winapi_GetModuleFileNameExA)
558 (win32_EnumProcessModules, win32_GetModuleInformation)
559 (win32_GetModuleFileNameExA, load_psapi, psapi_get_dll_name)
560 (winapi_CreateToolhelp32Snapshot, winapi_Module32First)
561 (winapi_Module32Next, win32_CreateToolhelp32Snapshot)
562 (win32_Module32First, win32_Module32Next, load_toolhelp)
563 (toolhelp_get_dll_name, handle_load_dll, handle_unload_dll): New.
564 (get_child_debug_event): Handle DLL events.
565 (win32_wait): Likewise.
566
0d37add9
DJ
5672007-07-12 Daniel Jacobowitz <dan@codesourcery.com>
568
569 * configure.srv: Set srv_linux_regsets for sh*-*-linux*.
570 * linux-sh-low.c (sh_fill_gregset, target_regsets): New.
571
45e2715e
PA
5722007-07-08 Pedro Alves <pedro_alves@portugalmail.pt>
573
574 * win32-low.c (handle_output_debug_string): Ignore event if not
575 waiting.
576
c5674cf1
PA
5772007-07-08 Pedro Alves <pedro_alves@portugalmail.pt>
578
579 * win32-arm-low.c (arm_wince_breakpoint): Fix typo.
580
2bbe3cc1
DJ
5812007-07-03 Daniel Jacobowitz <dan@codesourcery.com>
582
583 * remote-utils.c (look_up_one_symbol): Handle 'm' packets.
584
ae13219e
DJ
5852007-07-02 Daniel Jacobowitz <dan@codesourcery.com>
586
587 * inferiors.c (change_inferior_id): Add comment.
588 * linux-low.c (check_removed_breakpoint): Add an early
589 prototype. Improve debug output.
590 (linux_attach): Doc update.
591 (linux_detach_one_process, linux_detach): Clean up before releasing
592 each process.
593 (send_sigstop, wait_for_sigstop): Improve comments and debug output.
594 * linux-low.h (struct process_info): Doc improvement.
595 * mem-break.c (delete_all_breakpoints): New.
596 * mem-break.h (delete_all_breakpoints): New prototype.
597 * thread-db.c (find_first_thread): New.
598 (thread_db_create_event): Call it instead of
599 thread_db_find_new_threads. Clean up unused variables.
600 (maybe_attach_thread): Remove first thread handling.
601 (thread_db_find_new_threads): Use find_first_thread.
602 (thread_db_get_tls_address): Likewise.
603
4105de34
DJ
6042007-06-27 Daniel Jacobowitz <dan@codesourcery.com>
605
606 * thread-db.c (thread_db_find_new_threads): Add prototype.
607 (thread_db_create_event): Check for the main thread before adding
608 a new thread.
609 (maybe_attach_thread): Only enable event reporting if TID == 0.
610 (thread_db_get_tls_address): Check for new threads.
611
2b876972
DJ
6122007-06-20 Daniel Jacobowitz <dan@codesourcery.com>
613
614 * linux-low.c (linux_create_inferior): Try execv before execvp.
615 * spu-low.c (spu_create_inferior): Likewise.
616
7a245884
DJ
6172007-06-13 Mike Frysinger <vapier@gentoo.org>
618
619 * linux-low.c (linux_create_inferior): Change execv to execvp.
620 * spu-low.c (spu_create_inferior): Likewies.
621
117ce543
DJ
6222007-06-13 Daniel Jacobowitz <dan@codesourcery.com>
623
624 * Makefile.in (clean): Clean new files instead of deleted ones.
625 (reg-mips.o, reg-mips.c, reg-mips64.o, reg-mips64.c): Delete.
626 (mips-linux.o, mips-linux.c, mips64-linux.o, mips64-linux.c): New
627 rules.
628 * configure.srv: Specify XML files and new regformats for MIPS and
629 MIPS64 GNU/Linux.
630 * linux-mips-low.c (mips_num_regs): Set to only used registers.
631 (mips_regmap): Do not fetch $0. Remove unused registers. Add
632 an entry for the restart register.
633 (mips_cannot_fetch_register, mips_cannot_store_register)
634 (mips_reinsert_addr, mips_fill_fpregset, mips_store_fpregset): Update
635 register names to match the XML descriptions.
636 (mips_fill_gregset, mips_store_gregset): Likewise. Handle the
637 restart register instead of $0.
638
0e7f50da
UW
6392007-06-12 Ulrich Weigand <uweigand@de.ibm.com>
640 Markus Deuling <deuling@de.ibm.com>
641
642 * remote-utils.c (decode_xfer_write): New function.
643 * server.h (decode_xfer_write): Add prototype.
644 * server.c (handle_query): Add PACKET_LEN argument. Support
645 qXfer:spu:read and qXfer:spu:write packets.
646 (main): Pass packet_len to handle_query.
647 * spu-low.c (spu_target_ops): Add spu_proc_xfer_spu.
648 * target.h (target_ops): Add qxfer_spu.
649
374c1d38
UW
6502007-06-12 Ulrich Weigand <uweigand@de.ibm.com>
651
652 * spu-low.c (spu_proc_xfer_spu): Do not return failure when
653 accessing non-seekable spufs files.
654
bb63802a
UW
6552007-05-16 Markus Deuling <deuling@de.ibm.com>
656
657 * server.c (handle_query): Add reply for qC packet.
658
7390519e
PA
6592007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
660 Leo Zayas <lerele@champenstudios@com>
661
662 * server.h (check_remote_input_interrupt_request): New function.
663 * remote_utils.c (INVALID_DESCRIPTOR): New define.
664 (remote_desc): Initialize with INVALID_DESCRIPTOR.
665 (input_interrupt): Expose on USE_WIN32API too. Fix whitespace.
666 (check_remote_input_interrupt_request): New function.
667 * server.h (check_remote_input_interrupt_request): Declare.
3ecf0694 668 * win32-low.c (winapi_DebugBreakProcess,
7390519e
PA
669 winapi_GenerateConsoleCtrlEvent): New typedefs.
670 (get_child_debug_event): Lower Win32 debug event polling from 1 sec
671 to 250 ms.
672 (win32_wait): Check for remote interrupt request
673 with check_remote_input_interrupt_request.
674 (win32_request_interrupt): New function.
675 (win32_target_op): Set request_interrupt to win32_request_interrupt.
676
34b34921
PA
6772007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
678
679 * win32-low.c (debug_registers_changed,
680 debug_registers_used, CONTEXT_EXTENDED_REGISTERS,
681 CONTEXT_FLOATING_POINT, CONTEXT_DEBUG_REGISTERS,
682 CONTEXT_DEBUGGER, CONTEXT_DEBUGGER_DR): Delete.
683 (thread_rec): Get context using the low target.
684 (child_add_thread): Call thread_added on the low target,
685 which does the same thing.
686 (regptr): Delete.
687 (do_initial_child_stuff): Remove debug registers references.
688 Set context using the low target. Resume threads after
689 setting the contexts.
690 (child_continue): Remove dead variable. Remove debug
691 registers references.
692 (child_fetch_inferior_registers): Go through the low target.
693 (do_child_store_inferior_registers): Remove.
694 (child_store_inferior_registers): Go through the low target.
695 (win32_resume): Remove debug registers references.
696 Set context using the low target.
697 (handle_exception): Change return type to void. Don't record
698 context here. Set status to TARGET_WAITKIND_SPURIOUS on a
699 first chance exception.
700 (get_child_debug_event): Change return type to void. Remove
701 goto loop. Always return after waiting for debug event.
702 (win32_wait): Convert to switch statement. Handle spurious
703 events.
704
705 * win32-i386-low.c (debug_registers_changed,
706 debug_registers_used): New.
707 (initial_stuff): Rename to ...
708 (i386_initial_stuff): ... this. Clear debug registers
709 state variables.
710 (store_debug_registers): Delete.
711 (i386_get_thread_context): New.
712 (load_debug_registers): Delete.
713 (i386_set_thread_context): New.
714 (i386_thread_added): New.
715 (single_step): Rename to ...
716 (i386_single_step): ... this.
717 (do_fetch_inferior_registers): Rename to ...
718 (i386_fetch_inferior_register): ... this.
719 (i386_store_inferior_register): New.
720 (the_low_target): Adapt to new interface.
721
722 * win32-arm-low.c (CONTEXT_FLOATING_POINT): Define.
723 (arm_get_thread_context): New.
724 (arm_set_thread_context): New.
725 (regptr): New.
726 (do_fetch_inferior_registers): Rename to ...
727 (arm_fetch_inferior_register): ... this.
728 (arm_store_inferior_register): New.
729 (arm_wince_breakpoint): Reimplement as unsigned long.
730 (arm_wince_breakpoint_len): Define.
731 (the_low_target): Adapt to new interface.
732
733 * win32-low.h (target_ops): Remove regmap, store_debug_registers and
734 load_debug_registers. Add get_thread_context, set_thread_context,
735 thread_added and store_inferior_register. Rename
736 fetch_inferior_registers to fetch_inferior_register.
737 (regptr): Remove declaration.
738
dd6953e1
PA
7392007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
740
741 * linux-low.c (linux_detach): Change return type to int. Return 0.
742 * spu-low.c (spu_detach): Likewise.
743
444d6139
PA
7442007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
745
746 * target.h (target_ops): Change return type of detach to int.
747 Add join.
748 (join_inferior): New.
749 * server.c (main): Don't skip detach support on mingw32.
750 If the inferior doesn't support detaching return error.
751 Call join_inferior instead of using waitpid.
752 * linux-low.c (linux_join): New.
753 (linux_target_op): Add linux_join.
754 * spu-low.c (spu_join): New.
755 (spu_target_ops): Add spu_join.
756 * win32-low.c (win32_detach): Adapt to new interface.
757 Reopen current_process_handle before detaching. Issue a child
758 resume before detaching.
759 (win32_join): New.
760 (win32_target_op): Add win32_join.
761
1d5315fe
PA
7622007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
763
764 * win32-low.c (win32-attach): Fix return value.
765 * target.h (target_ops): Describe ATTACH return values.
766
bf914831
PA
7672007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
768
769 * win32-low.c (GETPROCADDRESS): Define.
770 (winapi_DebugActiveProcessStop): Add WINAPI. typedef as pointer.
771 (winapi_DebugSetProcessKillOnExit): Likewise.
772 (win32_create_inferior): Force usage of ansi CreateProcessA.
773 (win32_attach): Use GETPROCADDRESS.
774 (win32_detach): Likewise.
775
f72f3e60
PA
7762007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
777
778 * win32-low.c (win32_wait): Don't use WSTOPSIG.
779
ed50f18f
PA
7802007-03-30 Pedro Alves <pedro_alves@portugalmail.pt>
781
782 * win32-low.c: Commit leftover changes from 2007-03-29.
783
0c2ead7e
DJ
7842007-03-30 Daniel Jacobowitz <dan@codesourcery.com>
785
786 * i387-fp.c (struct i387_fsave, struct i387_fxsave): Make 16-bit
787 fields short instead of int. Add explicit padding.
788 (i387_cache_to_fsave): Remove unnecessary casts.
789 (i387_fsave_to_cache): Doc fix.
790 (i387_cache_to_fxsave): Remove unnecessary casts and masking.
791
73725ff3
DJ
7922007-03-30 Daniel Jacobowitz <dan@codesourcery.com>
793
794 * i387-fp.c (i387_cache_to_fxsave): Reinitialize val2 before use.
795 (i387_fxsave_to_cache): Check fp->ftag while building ftag value.
796
d99f33d8
PA
7972007-03-29 Pedro Alves <pedro_alves@portugalmail.pt>
798
799 * configure.srv (arm*-*-mingw32ce*): Move near the other
800 arm targets.
801
68070c10
PA
8022007-03-29 Pedro Alves <pedro_alves@portugalmail.pt>
803
2482afc6 804 * configure.ac: Add errno checking.
68070c10
PA
805 (AC_CHECK_HEADERS): Add errno.h, fcntl.h, signal.h,
806 sys/file.h and malloc.h.
807 (AC_CHECK_DECLS): Add perror.
808 (srv_mingwce): Handle.
2482afc6 809 * configure.srv (i[34567]86-*-cygwin*): Add
68070c10
PA
810 win32-i386-low.o to srv_tgtobj.
811 (i[34567]86-*-mingw*): Likewise.
812 (arm*-*-mingw32ce*): Add case.
813 * gdbreplay.c [HAVE_SYS_FILE_H, HAVE_SIGNAL_H,
814 HAVE_FCNTL_H, HAVE_ERRNO_H, HAVE_MALLOC_H]: Check.
815 [__MINGW32CE__] (strerror): New function.
816 [__MINGW32CE__] (errno): Define to GetLastError.
817 [__MINGW32CE__] (COUNTOF): New macro.
818 (remote_open): Remove extra close call.
819 * mem-break.c (delete_breakpoint_at): New function.
820 * mem-break.h (delete_breakpoint_at): Declare.
821 * remote-utils.c [HAVE_SYS_FILE_H, HAVE_SIGNAL_H,
822 HAVE_FCNTL_H, HAVE_UNISTD_H, HAVE_ERRNO_H]: Check.
823 [USE_WIN32API] (read, write): Add char* casts.
824 * server.c [HAVE_UNISTD_H, HAVE_SIGNAL_H]: Check.
825 * server.h: Include wincecompat.h on Windows CE.
826 [HAVE_ERRNO_H]: Check.
827 (perror): Declare if not declared.
828 * utils.c: Add stdlib.h, errno.h and malloc.h includes.
829 (perror_with_name): Remove errno declaration.
830 * wincecompat.h: New.
831 * wincecompat.c: New.
832 * win32-low.h: New.
833 * win32-arm-low.c: New.
834 * win32-i386-low.c: New.
835 (win32-low.c): Include mem-break.h and win32-low.h, and winnt.h.
836 (OUTMSG2): Make it safe.
837 (_T): New macro.
838 (COUNTOF): New macro.
839 (NUM_REGS): Get it from the low target.
840 (CONTEXT_EXTENDED_REGISTERS, CONTEXT_FLOATING_POINT,
841 CONTEXT_DEBUG_REGISTERS): Add fallbacks to 0.
842 (thread_rec): Let low target handle debug registers.
843 (child_add_thread): Likewise.
844 (child_init_thread_list): Likewise.
845 (continue_one_thread): Likewise.
846 (regptr): New.
847 (do_child_fetch_inferior_registers): Move to ...
848 * win32-i386-low.c: ... here, and rename to ...
849 (do_fetch_inferior_registers): ... this.
850 * win32-low.c (child_fetch_inferior_registers):
851 Go through the low target.
852 (do_child_store_inferior_registers): Use regptr.
853 (strwinerror): New function.
854 (win32_create_inferior): Handle Windows CE.
855 Use strwinerror instead of strerror on Windows error
856 codes. Add program to the error output.
857 Don't close the main thread handle on Windows CE.
858 (win32_attach): Use coredll.dll on Windows CE.
859 (win32_kill): Close current process and current
860 thread handles.
861 (win32_detach): Use coredll.dll on Windows CE.
862 (win32_resume): Let low target handle debug registers, and
863 step request.
864 (handle_exception): Add/Remove initial breakpoint. Avoid
865 non-existant WSTOPSIG on Windows CE.
866 (win32_read_inferior_memory): Cast to remove warning.
867 (win32_arch_string): Go through the low target.
868 (initialize_low): Call set_breakpoint_data with the low
869 target's breakpoint.
870 * win32-low.c (dr, FLAG_TRACE_BIT, FCS_REGNUM,
871 FOP_REGNUM, mappings): Move to ...
872 * win32-i386-low.c: ... here.
873 * win32-low.c (win32_thread_info): Move to ...
874 * win32-low.h: ... here.
875 * Makefile.in (SFILES): Add win32-low.c, win32-i386-low.c,
876 win32-arm-low.c and wincecompat.c.
877 (all:): Add $EXEEXT.
878 (install-only:): Likewise.
879 (gdbserver:): Likewise.
880 (gdbreplay:): Likewise.
881 * config.in: Regenerate.
882 * configure: Regenerate.
883
41093d81
PA
8842007-03-28 Pedro Alves <pedro_alves@portugalmail.pt>
885
886 * win32-low.c: Rename typedef thread_info to
887 win32_thread_info throughout.
888
544afa54
PA
8892007-03-28 Pedro Alves <pedro_alves@portugalmail.pt>
890
891 * win32-i386-low.c: Rename to ...
892 * win32-low.c: ... this.
893 * configure.srv: Replace win32-i386-low.o with win32-low.o.
894 * Makefile.in: Likewise.
895
bce7165d
PA
8962007-03-27 Pedro Alves <pedro_alves@portugalmail.pt>
897
898 * remote-utils.c (monitor_output): Constify msg parameter.
899 * server.h (monitor_output): Likewise.
900 * win32-i386-low.c (handle_output_debug_string): New.
901 (win32_kill): Handle OUTPUT_DEBUG_STRING_EVENT events using
902 handle_output_debug_string.
903 (get_child_debug_event): Likewise.
904
506c7aa0
DJ
9052007-03-27 Mat Hostetter <mat@lcs.mit.edu>
906
907 * server.c (main): Correct strtoul check.
908
42c81e2a
DJ
9092007-03-27 Jon Ringle <jon@ringle.org>
910
911 * linux-low.c: Check __ARCH_HAS_MMU__ also.
912
9453113a
DJ
9132007-03-27 Brooks Moses <brooks.moses@codesourcery.com>
914
915 * Makefile.in: Add dummy "pdf" and "install-pdf" targets.
916
64a69107
DJ
9172007-02-27 Daniel Jacobowitz <dan@codesourcery.com>
918
919 * terminal.h: Check HAVE_SGTTY_H.
920
9212007-02-27 Mat Hostetter <mat@lcs.mit.edu>
6f8486da
DJ
922
923 * remote-utils.c (remote_open): Print out the assigned port number.
924
c74d0ad8
DJ
9252007-02-26 Daniel Jacobowitz <dan@codesourcery.com>
926
927 * remote-utils.c (monitor_output): New function.
928 * server.c (debug_threads): Define here.
929 (monitor_show_help): New function.
930 (handle_query): Handle qRcmd.
931 (main): Do not handle 'd' packet.
932 * server.h (debug_threads, remote_debug, monitor_output): Declare.
933 * linux-low.c, spu-low.c, win32-i386-low.c: Remove definitions
934 of debug_threads.
935
de7c3b4a
PA
9362007-02-25 Pedro Alves <pedro_alves@portugalmail.pt>
937
938 * Makefile.in (EXEEXT): New.
939 (clean): Use $(EXEEXT).
940
ef57601b
PA
9412007-02-25 Pedro Alves <pedro_alves@portugalmail.pt>
942
943 * target.h (target_ops): Rename send_signal to request_interrupt,
944 and remove enum target_signal parameter.
945 * linux-low.c (linux_request_interrupt): Rename from
946 linux_send_signal, and always send SIGINT.
947 * spu-low.c (spu_request_interrupt): Rename from spu_send_signal,
948 and always send SIGINT.
949 * remote-utils.c (putpkt_binary): Call request_interrupt, instead
950 of send_signal.
951 (input_interrupt): Likewise.
952
820f2bda
PA
9532007-02-25 Pedro Alves <pedro_alves@portugalmail.pt>
954
955 * server.c (get_features_xml): Check if target implemented
956 arch_string.
957 * win32-i386-low.c (win32_arch_string): New.
958 (win32_target_ops): Add win32_arch_string as arch_string member.
959
ab39bf24
UW
9602007-02-22 Markus Deuling <deuling@de.ibm.com>
961
962 * spu-low.c (spu_arch_string): New.
963 (spu_target_ops): Add spu_arch_string.
964
61ff6e04
DJ
9652007-02-16 Daniel Jacobowitz <dan@codesourcery.com>
966
967 * remote-utils.c: Remove HAVE_TERMINAL_H check.
968 * configure.ac: Do not check for terminal.h.
969 * configure, config.in: Regenerated.
970
fb1e4ffc
DJ
9712007-02-08 Daniel Jacobowitz <dan@codesourcery.com>
972
973 * Makefile.in (OBS): Add $(XML_BUILTIN).
974 (XML_DIR, XML_TARGET, XML_FILES, XML_BUILTIN): New.
975 (clean): Update.
976 (target.xml, xml-builtin.c, stamp-xml, arm-with-iwmmxt.o)
977 (arm-with-iwmmxt.c): New.
978 * config.in, configure: Regenerate.
979 * configure.ac: Check for iWMMXt. Handle srv_xmltarget,
980 srv_xmlbuiltin, and srv_xmlfiles. Define USE_XML.
981 * configure.srv: Mention srv_xmltarget and srv_xmlfiles.
982 (arm*-*-linux*): Add iWMMXt and regset support.
983 * linux-arm-low.c (PTRACE_GETWMMXREGS, PTRACE_SETWMMXREGS): Define.
984 (arm_fill_gregset, arm_store_gregset, arm_fill_wmmxregset)
985 (arm_store_wmmxregset, target_regsets): New.
986 * server.c (get_features_xml): Take annex argument. Check builtin
987 XML documents.
988 (handle_query): Handle multiple annexes.
989
0f48aa01
DJ
9902007-01-29 Daniel Jacobowitz <dan@codesourcery.com>
991
992 * remote-utils.c [USE_WIN32API] (read, write): Define.
993 (putpkt_binary, input_interrupt, readchar, getpkt): Use read and
994 write.
995
23181151
DJ
9962007-01-09 Daniel Jacobowitz <dan@codesourcery.com>
997
998 * linux-i386-low.c (the_low_target): Set arch_string.
999 * linux-x86-64-low.c (the_low_target): Likewise.
1000 * linux-low.c (linux_arch_string): New.
1001 (linux_target_ops): Add it.
1002 * linux-low.h (struct linux_target_ops): Add arch_string.
1003 * server.c (write_qxfer_response): Use const void * for DATA.
1004 (get_features_xml): New.
1005 (handle_query): Handle qXfer:features:read. Report it for qSupported.
1006 * target.h (struct target_ops): Add arch_string method.
1007
9d606399
DJ
10082007-01-03 Denis Pilat <denis.pilat@st.com>
1009 Daniel Jacobowitz <dan@codesourcery.com>
1010
1011 * linux-low.c (linux_kill): Handle being called with no threads.
1012 * win32-i386-low.c (win32_kill): Likewise.
1013 (get_child_debug_event): Clear current_process_handle.
1014
10152006-12-30 Denis PILAT <denis.pilat@st.com>
8264bb58
DJ
1016 Daniel Jacobowitz <dan@codesourcery.com>
1017
1018 * remote-utils.c (remote_open): Check the type of specified
1019 serial port devices before opening them.
1020 * server.c (main): Kill the inferior if an error occurs during
1021 the first remote_open.
1022
a5e13d24
DJ
10232006-12-05 Markus Deuling <deuling@de.ibm.com>
1024
1025 * README: Update supported targets.
1026
186947f7
DJ
10272006-11-28 Daniel Jacobowitz <dan@codesourcery.com>
1028
1029 * Makefile.in (clean): Remove reg-mips64.c.
1030 (reg-mips64.c, reg-mips64.o): New rules.
1031 * configure.srv: Handle mips64. Include regset support for mips.
1032 * linux-mips-low.c (union mips_register): New.
1033 (mips_get_pc, mips_set_pc, mips_reinsert_addr): Use it.
1034 (mips_breakpoint, mips_breakpoint_at): Use int.
1035 (mips_collect_register, mips_supply_register)
1036 (mips_collect_register_32bit, mips_supply_register_32bit)
1037 (mips_fill_gregset, mips_store_gregset, mips_fill_fpregset)
1038 (mips_store_fpregset, target_regsets): New.
1039 * thread-db.c (thread_db_get_tls_address): Use uintptr_t.
1040
a13e2c95
UW
10412006-11-22 Ulrich Weigand <uweigand@de.ibm.com>
1042
1043 * configure.srv: Add target "spu*-*-*".
1044 * Makefile.in (clean): Remove reg-spu.c.
1045 (reg-spu.c, reg-spu.o, spu-low.o): Add dependencies.
1046 * spu-low.c: New file.
1047
cb7283db
DJ
10482006-11-16 Daniel Jacobowitz <dan@codesourcery.com>
1049
1050 * configure.ac: Correct td_thr_tls_get_addr test.
1051 * configure: Regenerated.
1052
89be2091
DJ
10532006-11-16 Daniel Jacobowitz <dan@codesourcery.com>
1054
1055 * linux-low.c (linux_wait_for_event): Reformat. Use the
1056 pass_signals array.
1057 * remote-utils.c (decode_address_to_semicolon): New.
1058 * server.c (pass_signals, handle_general_set): New.
1059 (handle_query): Mention QPassSignals for qSupported.
1060 (main): Call handle_general_set.
1061 * server.h (pass_signals, decode_address_to_semicolon): New.
1062
000ef4f0
DJ
10632006-11-06 Daniel Jacobowitz <dan@codesourcery.com>
1064
1065 * server.c (handle_query): Correct error handling for read_auxv.
1066
b7149293
UW
10672005-10-19 Ulrich Weigand <uweigand@de.ibm.com>
1068
1069 * configure.srv [s390-*-linux*, s390x-*-linux*]: Set srv_linux_regsets
1070 and srv_linux_thread_db to yes.
1071 * linux-s390-low.c (s390_fill_gregset): New function.
1072 (target_regsets): Define data structure.
1073
dae5f5cf
DJ
10742006-10-17 Daniel Jacobowitz <dan@codesourcery.com>
1075
1076 * acinclude.m4 (SRV_CHECK_TLS_GET_ADDR): New.
1077 * configure.ac: Use it. Define HAVE_TD_THR_TLS_GET_ADDR.
1078 * config.in, configure: Regenerated.
1079 * inferiors.c (gdb_id_to_thread): New function.
1080 (gdb_id_to_thread_id): Use it.
1081 * linux-low.c (linux_target_ops): Use thread_db_get_tls_address.
1082 * linux-low.h (struct process_info): Add th member.
1083 (thread_db_get_tls_address): New prototype.
1084 * remote-utils.c (decode_address): Make non-static.
1085 * server.c (handle_query): Handle qGetTLSAddr.
1086 * server.h (gdb_id_to_thread, decode_address): New prototypes.
1087 * target.h (struct target_ops): Add get_tls_address.
1088 * thread-db.c (maybe_attach_thread): Save the thread handle.
1089 (thread_db_get_tls_address): New.
1090
32ca6d61
DJ
10912006-09-28 Daniel Jacobowitz <dan@codesourcery.com>
1092
1093 * linux-low.c (PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
1094 (linux_resume_one_process): Take a siginfo_t *. Update all
1095 callers. Queue it if necessary. Use PTRACE_SETSIGINFO.
1096 (struct pending_signals): Add a siginfo_t.
1097 (linux_wait_for_process): Always set last_status.
1098 (linux_wait_for_event): Use PTRACE_GETSIGINFO.
1099 (linux_queue_one_thread): Use PTRACE_GETSIGINFO.
1100 * linux-low.h (struct process_info): Add last_status.
1101
5ffff7c1
DJ
11022006-09-21 Daniel Jacobowitz <dan@codesourcery.com>
1103
1104 * remote-utils.c (try_rle): New function.
1105 (putpkt_binary): Use it.
1106
8695c747
DJ
11072006-08-19 Daniel Jacobowitz <dan@codesourcery.com>
1108
1109 * Makefile.in (clean): Clean reg-x86-64-linux.c.
1110 (reg-x86-64-linux.o, reg-x86-64-linux.c): New.
1111 * configure.srv (x86_64-*-linux*): Use reg-x86-64-linux.o.
1112 * linux-x86-64-low.c (x86_64_regmap): Include ORIG_RAX.
1113 (x86_64_fill_gregset, x86_64_store_gregset): Skip floating
1114 point registers.
1115
290fadea
RS
11162006-08-08 Richard Sandiford <richard@codesourcery.com>
1117
1118 * server.c (terminal_fd): New variable.
1119 (old_foreground_pgrp): Likewise.
1120 (restore_old_foreground_pgrp): New function.
1121 (start_inferior): Record the terminal file descriptor in terminal_fd
1122 and its original foreground group in old_foreground_pgrp. Register
1123 restore_old_foreground_pgrp with atexit().
1124
9f2e1e63
DJ
11252006-07-26 Daniel Jacobowitz <dan@codesourcery.com>
1126
1127 * server.c (handle_query): Correct qPart to qXfer.
1128
b80864fb
DJ
11292006-07-22 Daniel Jacobowitz <dan@codesourcery.com>
1130
1131 * configure.ac: Check for more headers which are missing on
1132 Windows. Automatically supply -lwsock32 and USE_WIN32API.
1133 * configure.srv: Add Cygwin and mingw32.
1134 * remote-utils.c: Don't include headers unconditionally which
1135 are missing on mingw32. Include <winsock.h> for mingw32.
1136 (remote_open): Adjust for mingw32 support. Flush
1137 standard error after writing to it.
1138 (remote_close, putpkt_binary, input_interrupt, block_async_io)
1139 (unblock_async_io, enable_async_io, disable_async_io)
1140 (readchar, getpkt): Update for Winsock support.
1141 (prepare_resume_reply): Expect a protocol signal number.
1142 * server.c: Disable <sys/wait.h> on mingw32.
1143 (start_inferior): Adjust for mingw32 support. Flush
1144 standard error after writing to it.
1145 (attach_inferior): Likewise. Use protocol signal
1146 numbers.
1147 (main): Skip 'D' packet on mingw32. Use protocol signal numbers
1148 and names.
1149 * win32-i386-low.c: New file.
1150 * Makefile.in (XM_CLIBS): Set.
1151 (gdbserver, gdbreplay): Use $(INTERNAL_CFLAGS).
1152 (win32-i386-low.o): New dependency rule.
1153 * linux-low.c (linux_wait): Use target signal numbers.
1154 * target.h (struct target_ops): Doc fix.
1155 * server.h (target_signal_to_name): New prototype.
1156 * gdbreplay.c: Don't include headers unconditionally which
1157 are missing on mingw32. Include <winsock.h> for mingw32.
1158 (remote_close, remote_open): Adjust for Winsock support.
1159 * configure, config.in: Regenerated.
1160
0876f84a
DJ
11612006-07-12 Daniel Jacobowitz <dan@codesourcery.com>
1162
1163 * server.c (decode_xfer_read, write_qxfer_response): New.
1164 (handle_query): Take a packet length argument. Handle
1165 qXfer:auxv:read instead of qPart:auxv:read. Mention it in
1166 the qSupported response.
1167 (main): Update call to handle_query.
1168
01f9e8fa
DJ
11692006-06-22 Daniel Jacobowitz <dan@codesourcery.com>
1170
1171 * remote-utils.c (remote_escape_output, remote_unescape_input): New.
1172 (putpkt_binary): Renamed from putpkt and adjusted for binary
1173 data.
1174 (putpkt): New wrapper for putpkt_binary.
1175 (readchar): Don't mask off the high bit.
1176 (decode_X_packet): New function.
1177 * server.c (main): Call putpkt_binary if a handler sets the packet
1178 length. Save the length of the incoming packet. Handle 'X'.
1179 * server.h (gdb_byte, remote_escape_output, decode_X_packet): New.
1180
be2a5f71
DJ
11812006-06-21 Daniel Jacobowitz <dan@codesourcery.com>
1182
1183 * server.c (handle_query): Handle qSupported.
1184
ea025f5f
DJ
11852006-05-30 Daniel Jacobowitz <dan@codesourcery.com>
1186
1187 * remote-utils.c (all_symbols_looked_up): New variable.
1188 (look_up_one_symbol): Check it.
1189 * server.h (look_up_one_symbol): New declaration.
1190 * thread-db.c (thread_db_init): Set all_symbols_looked_up.
1191
9308fc88
DJ
11922006-05-30 Daniel Jacobowitz <dan@codesourcery.com>
1193
1194 * Makefile.in (linux-arm-low.o): Update dependencies.
66f338c7 1195 * linux-arm-low.c: Include "gdb_proc_service.h".
9308fc88
DJ
1196 (PTRACE_GET_THREAD_AREA): Define.
1197 (ps_get_thread_area): New function.
1198
52fb6437
NS
11992006-05-09 Nathan Sidwell <nathan@codesourcery.com>
1200
1201 * configure.srv (m68k*-*-uclinux*): New target.
1202 * linux-low.c (linux_create_inferior): Use vfork on mmuless systems.
1203 (linux_resume_one_process): Remove extraneous cast.
1204 (linux_read_offsets): New.
1205 (linux_target_op): Add linux_read_offsets on mmuless systems.
1206 * server.c (handle_query): Add qOffsets logic.
1207 * target.h (struct target_ops): Add read_offsets.
1208
21b0f40c
DJ
12092006-03-15 Daniel Jacobowitz <dan@codesourcery.com>
1210
1211 * linux-mips-low.c: Include <sys/ptrace.h> and "gdb_proc_service.h".
1212 (PTRACE_GET_THREAD_AREA): Define.
1213 (ps_get_thread_area): New function.
1214 * Makefile.in (linux-i386-low.o, linux-mips-low.o)
1215 (linux-x86-64-low.o): Update.
1216
0050a760
DJ
12172006-03-15 Daniel Jacobowitz <dan@codesourcery.com>
1218
1219 * configure.ac: Remove checks for prfpregset_t.
1220 * gdb_proc_service.h: New file.
1221 * linux-i386-low.c, linux-x86-64-low.c, thread-db.c: Use the
1222 new "gdb_proc_service.h".
1223 * proc-service.c: Likewise.
1224 (ps_pglobal_lookup, ps_pdread, ps_pdwrite): Use psaddr_t.
1225 (ps_lgetfpregs, ps_lsetfpregs): Use a void* argument.
1226 * Makefile.in (gdb_proc_service_h): Updated.
1227 * configure, config.in: Regenerated.
1228
b92a518e
DJ
12292006-03-03 Daniel Jacobowitz <dan@codesourcery.com>
1230
1231 * remote-utils.c (prepare_resume_reply): Move declaration
1232 of gdb_id_from_wait to the top of the block.
1233
545587ee
DJ
12342006-02-15 Daniel Jacobowitz <dan@codesourcery.com>
1235
1236 * linux-low.c (regsets_store_inferior_registers): Read the regset
1237 from the target before filling it.
1238
9db87ebd
DJ
12392006-02-08 Daniel Jacobowitz <dan@codesourcery.com>
1240
1241 * server.c (attach_inferior): Return SIGTRAP for a successful
1242 attach.
1243
dd24457d
DJ
12442006-02-01 Daniel Jacobowitz <dan@codesourcery.com>
1245
1246 * Makefile.in (OBS): Add version.o.
1247 (STAGESTUFF): Delete.
1248 (version.o): Add dependencies.
1249 (version.c): Replace rule.
1250 (clean): Remove version.c.
1251 * server.c (gdbserver_version): New.
1252 (gdbserver_usage): Use printf.
1253 (main): Handle --version and --help.
1254 * server.h (version, host_name): Add declarations.
1255
6f0f660e
EZ
12562005-12-23 Eli Zaretskii <eliz@gnu.org>
1257
1258 * linux-arm-low.c:
1259 * linux-arm-low.c:
1260 * inferiors.c:
1261 * i387-fp.h:
1262 * i387-fp.c:
1263 * gdbreplay.c:
1264 * regcache.c:
1265 * proc-service.c:
1266 * mem-break.h:
1267 * mem-break.c:
1268 * linux-x86-64-low.c:
1269 * linux-sh-low.c:
1270 * linux-s390-low.c:
1271 * linux-ppc64-low.c:
1272 * linux-ppc-low.c:
1273 * linux-mips-low.c:
1274 * linux-m68k-low.c:
1275 * linux-m32r-low.c:
1276 * linux-low.h:
1277 * linux-low.c:
1278 * linux-ia64-low.c:
1279 * linux-i386-low.c:
1280 * linux-crisv32-low.c:
1281 * thread-db.c:
1282 * terminal.h:
1283 * target.h:
1284 * target.c:
1285 * server.h:
1286 * server.c:
1287 * remote-utils.c:
1288 * regcache.h:
1289 * utils.c:
1290 * Makefile.in:
1291 * configure.ac:
1292 * gdbserver.1: Add (C) after Copyright. Update the FSF
1293 address.
1294
9d1fb177
DJ
12952005-11-13 Daniel Jacobowitz <dan@codesourcery.com>
1296
1297 * linux-arm-low.c (arm_eabi_breakpoint): New variable.
1298 (arm_breakpoint_at): Recognize both breakpoints.
1299 (the_low_target): Use the correct breakpoint instruction.
1300
011a70c2
DJ
13012005-11-02 Daniel Jacobowitz <dan@codesourcery.com>
1302
1303 * configure.srv (x86_64-*-linux*): Turn on thread_db support.
1304 * linux-x86-64-low.c (x86_64_breakpoint, x86_64_breakpoint_len)
1305 (x86_64_get_pc, x86_64_set_pc, x86_64_breakpoint_at): New.
1306 (the_low_target): Update.
1307
7fb85e41
AS
13082005-10-25 Andreas Schwab <schwab@suse.de>
1309
1310 * server.c (main): Allocate mem_buf with PBUFSIZ bytes.
1311
1312 * linux-ia64-low.c (ia64_regmap): Remove NAT registers.
1313 (ia64_num_regs): Reduce to 462.
1314
3db0444b
DJ
13152005-09-17 Daniel Jacobowitz <dan@codesourcery.com>
1316
1317 * acinclude.m4: Correct quoting.
1318 * aclocal.m4: Regenerated.
1319
1320 Suggested by SZOKOVACS Robert <szo@ies.hu>:
1321 * thread-db.c (thread_db_err_str): Handle TD_VERSION.
1322 (thread_db_init): Call thread_db_err_str.
1323 * configure.ac: Check for TD_VERSION.
1324 * config.in, configure: Regenerated.
1325
bee0189a
DJ
13262005-07-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1327
1328 * server.h (error, fatal, warning): Add ATTR_FORMAT.
1329
e9d25b98
DJ
13302005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
1331
1332 * configure.ac: Define HAVE_LINUX_REGSETS even if PTRACE_GETREGS
1333 is not available. Define HAVE_PTRACE_GETREGS if it is.
1334 * config.in, configure: Regenerated.
1335 * configure.srv: Set srv_linux_regsets for PowerPC and PowerPC64.
1336 * linux-i386-low.c, linux-m68k-low.c: Update to use
1337 HAVE_PTRACE_GETREGS.
1338 * linux-low.c (regsets_fetch_inferior_registers)
1339 (regsets_store_inferior_registers): Only return 0 if we processed
1340 GENERAL_REGS.
1341 * linux-ppc-low.c (ppc_fill_gregset, target_regsets): New.
1342 * linux-ppc64-low.c (ppc_fill_gregset, target_regsets): New.
1343
a06660f7
DJ
13442005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
1345
1346 * inferiors.c (struct thread_info): Add gdb_id.
1347 (add_thread): Add gdb_id argument.
1348 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id): New.
1349 * linux-low.c (linux_create_inferior, linux_attach_lwp): Update
1350 calls to add_thread.
1351 * remote-utils.c (prepare_resume_reply: Use thread_to_gdb_id.
1352 * server.c (handle_query): Use thread_to_gdb_id.
1353 (handle_v_cont, main): Use gdb_id_to_thread_id.
1354 * server.h (add_thread): Update prototype.
1355 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id): New
1356 prototypes.
1357
5a1f5858
DJ
13582005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
1359
1360 * linux-low.c (fetch_register, usr_store_inferior_registers): Handle
1361 left-padded registers.
1362 * linux-low.h (struct linux_target_ops): Add left_pad_xfer.
1363 * linux-ppc64-low.c (the_low_target): Set left_pad_xfer.
1364
e122f1f5
SE
13652005-07-01 Steve Ellcey <sje@cup.hp.com>
1366
1367 * configure.ac (BFD_NEED_DECLARATION): Replace with AC_CHECK_DECLS.
1368 * configure: Regenerate.
1369 * config.in: Regenerate.
1370 * server.h (NEED_DECLARATION_STRERROR):
1371 Replace with !HAVE_DECL_STRERROR.
1372
d592fa2f
DJ
13732005-06-16 Daniel Jacobowitz <dan@codesourcery.com>
1374
1375 * linux-low.c (linux_wait, linux_send_signal): Don't test
1376 an unsigned long variable for > 0 if it could be MAX_ULONG.
1377 * server.c (myresume): Likewise.
1378 * target.c (set_desired_inferior): Likewise.
1379
ccbd4912
MK
13802005-06-13 Mark Kettenis <kettenis@gnu.org>
1381
1382 * configure.ac: Simplify and improve check for socklen_t.
1383 * configure, config.in: Regenerate.
1384
f450004a
DJ
13852005-06-12 Daniel Jacobowitz <dan@codesourcery.com>
1386
1387 * acconfig.h: Remove.
1388 * configure.ac: Add a test for socklen_t. Use three-argument
1389 AC_DEFINE throughout.
1390 * config.in: Regenerated using autoheader 2.59.
1391 * configure: Regenerated.
1392
1393 * gdbreplay.c (socklen_t): Provide a default.
1394 (remote_open): Use socklen_t.
1395 * remote-utils.c (socklen_t): Provide a default.
1396 (remote_open): Use socklen_t.
1397 (convert_int_to_ascii, convert_ascii_to_int, decode_M_packet): Use
1398 unsigned char.
1399
1400 * i387-fp.c (struct i387_fsave, struct i387_fxsave): Use unsigned
1401 char for buffers.
1402 * linux-low.c (linux_read_memory, linux_write_memory)
1403 (linux_read_auxv): Likewise.
1404 * mem-break.c (breakpoint_data, set_breakpoint_data, check_mem_read)
1405 (check_mem_write): Likewise.
1406 * mem-break.h (set_breakpoint_data, check_mem_read, check_mem_write):
1407 Likewise.
1408 * regcache.c (struct inferior_rgcache_data, registers_to_string)
1409 (registers_from_string, register_data): Likewise.
1410 * server.c (handle_query, main): Likewise.
1411 * server.h (convert_ascii_to_int, convert_int_to_ascii)
1412 (decode_M_packet): Likewise.
1413 * target.c (read_inferior_memory, write_inferior_memory): Likewise.
1414 * target.h (struct target_ops): Update read_memory, write_memory,
1415 and read_auxv.
1416 (read_inferior_memory, write_inferior_memory): Update.
1417 * linux-low.h (struct linux_target_ops): Change type of breakpoint
1418 to unsigned char *.
1419 * linux-arm-low.c, linux-cris-low.c, linux-crisv32-low.c,
1420 linux-i386-low.c, linux-m32r-low.c, linux-m68k-low.c,
1421 linux-mips-low.c, linux-ppc-low.c, linux-ppc64-low.c,
1422 linux-s390-low.c, linux-sh-low.c: Update for changes in
1423 read_inferior_memory and the_low_target->breakpoint.
1424
eee84df1
DJ
14252005-05-28 Daniel Jacobowitz <dan@codesourcery.com>
1426
1427 * Makefile.in (SFILES): Add linux-ppc64-low.c.
1428 (linux-ppc64-low.o, reg-ppc64.c, reg-ppc64.o): New targets.
1429 * configure.srv: Add powerpc64-*-linux*.
1430 * linux-ppc64-low.c: New file.
1431
45b134e5
OF
14322005-05-23 Orjan Friberg <orjanf@axis.com>
1433
1434 * linux-cris-low.c: New file with support for CRIS.
1435 * linux-crisv32-low.c: Ditto for CRISv32.
1436 * Makefile.in (SFILES): Add linux-cris-low.c, linux-crisv32-low.c.
1437 (clean): Add reg-cris.c and reg-crisv32.c.
1438 Add linux-cris-low.o, linux-crisv32-low.o, reg-cris.o, reg-cris.c,
1439 reg-crisv32.o, and reg-crisv32.c to make rules.
1440 * configure.srv: Add cris-*-linux* and crisv32-*-linux* to list of
1441 recognized targets.
1442
48d93c75
UW
14432005-05-16 Ulrich Weigand <uweigand@de.ibm.com>
1444
1445 * linux-low.c (fetch_register): Ensure buffer size is a multiple
1446 of sizeof (PTRACE_XFER_TYPE).
1447 (usr_store_inferior_registers): Likewise. Zero out excess bytes.
1448
e013ee27
OF
14492005-05-12 Orjan Friberg <orjanf@axis.com>
1450
1451 * target.h (struct target_ops): Add insert_watchpoint,
1452 remove_watchpoint, stopped_by_watchpoint, stopped_data_address function
1453 pointers for hardware watchpoint support.
1454 * linux-low.h (struct linux_target_ops): Ditto.
1455 * linux-low.c (linux_insert_watchpoint, linux_remove_watchpoint)
1456 (linux_stopped_by_watchpoint, linux_stopped_data_address): New. Add
1457 to linux_target_ops.
1458 * remote-utils.c (prepare_resume_reply): Add watchpoint information to
1459 reply packet.
1460 * server.c (main): Recognize 'Z' and 'z' packets.
1461
b0ded00b
UW
14622005-05-10 Ulrich Weigand <uweigand@de.ibm.com>
1463
1464 * linux-s390-low.c (s390_breakpoint, s390_breakpoint_len): Define.
1465 (s390_get_pc, s390_set_pc, s390_breakpoint_at): New functions.
1466 (the_low_target): Add new members.
1467
8643e2ad
DJ
14682005-05-04 Daniel Jacobowitz <dan@codesourcery.com>
1469
1470 * proc-service.c (ps_lgetregs): Search all_processes instead of
1471 all_threads.
1472
fc620387
DJ
14732005-05-04 Daniel Jacobowitz <dan@codesourcery.com>
1474
1475 * server.c (start_inferior): Change return type to int.
1476 (attach_inferior): Change sigptr to int *.
1477 (handle_v_cont, handle_v_requests): Change signal to int *.
1478 (main): Change signal to int.
1479
14802005-04-15 Kei Sakamoto <sakamoto.kei@renesas.com>
7cfbc4a0
KI
1481
1482 * Makefile.in: Add linux-m32r-low.o, reg-m32r.c and reg-m32r.o.
1483 * configure.srv: Add m32r*-*-linux*.
1484 * linux-m32r-low.c: New file.
1485
e0e76420
DJ
14862005-03-04 Daniel Jacobowitz <dan@codesourcery.com>
1487
1488 * Makefile.in (stamp-h): Set CONFIG_HEADERS explicitly.
1489
a1928bad
DJ
14902005-03-03 Daniel Jacobowitz <dan@codesourcery.com>
1491
1492 * inferiors.c (change_inferior_id, add_thread, find_inferior_id):
1493 Take unsigned long arguments for PIDs.
1494 * linux-low.c (add_process, linux_attach_lwp, linux_attach)
1495 (linux_thread_alive, linux_wait_for_event, kill_lwp, send_sigstop)
1496 (wait_for_sigstop, linux_resume_one_process)
1497 (regsets_fetch_inferior_registers, linux_send_signal)
1498 (linux_read_auxv): Likewise. Update the types of variables holding
1499 PIDs. Update format string specifiers.
1500 * linux-low.h (struct process_info, linux_attach_lwp): Likewise.
1501 * remote-utils.c (prepare_resume_reply): Likewise.
1502 * server.c (cont_thread, general_thread, step_thread)
1503 (thread_from_wait, old_thread_from_wait, signal_pid): Change type to
1504 unsigned long.
1505 (handle_query): Update format specifiers.
1506 (handle_v_cont, main): Use strtoul for thread IDs.
1507 * server.h (struct inferior_list_entry): Use unsigned long for ID.
1508 (add_thread, find_inferior_id, change_inferior_id, cont_thread)
1509 (general_thread, step_thread, thread_from_wait)
1510 (old_thread_from_wait): Update.
1511 * target.h (struct thread_resume): Use unsigned long for THREAD.
1512 (struct target_ops): Use unsigned long for arguments to attach and
1513 thread_alive.
1514
dcdb98d2
DJ
15152005-02-24 Daniel Jacobowitz <dan@codesourcery.com>
1516
1517 * acinclude.m4: Include bfd/bfd.m4 directly.
1518 * configure.ac: Use AC_ARG_PROGRAM. Suggested by Aron Griffis
1519 <agriffis@toolchain.org>.
1520 * aclocal.m4, configure: Regenerated.
1521
bec39cab
AC
15222005-01-07 Andrew Cagney <cagney@gnu.org>
1523
1524 * configure.ac: Rename configure.in, require autoconf 2.59.
1525 * configure: Re-generate.
1526
434c4c77
DJ
15272004-12-08 Daniel Jacobowitz <dan@debian.org>
1528
1529 * acinclude.m4 (SRV_CHECK_THREAD_DB): Add ps_get_thread_area. Reset
1530 LIBS when finished.
1531 * aclocal.m4: Regenerated.
1532 * configure: Regenerated.
1533
db1d3e1b
AS
15342004-11-21 Andreas Schwab <schwab@suse.de>
1535
1536 * linux-m68k-low.c (m68k_num_gregs): Define.
1537 (m68k_fill_gregset, m68k_store_gregset, m68k_fill_fpregset)
1538 (m68k_store_fpregset, target_regsets) [HAVE_LINUX_REGSETS]: New.
1539 (m68k_breakpoint, m68k_breakpoint_len, m68k_get_pc, m68k_set_pc)
1540 (m68k_breakpoint_at): New. Add to the_low_target.
1541
1542 * configure.srv (m68*-*-linux*): Set srv_linux_regsets and
1543 srv_linux_thread_db to yes.
1544
43360365
JB
15452004-10-20 Joel Brobecker <brobecker@gnat.com>
1546
1547 * linux-x86-64-low.c (ARCH_SET_GS): Add definition if missing.
1548 (ARCH_SET_FS): Likewise.
1549 (ARCH_GET_FS): Likewise.
1550 (ARCH_GET_GS): Likewise.
1551
fd500816
DJ
15522004-10-16 Daniel Jacobowitz <dan@debian.org>
1553
1554 * linux-i386-low.c (ps_get_thread_area): New.
1555 * linux-x86-64-low.c (ps_get_thread_area): New.
1556 * linux-low.c: Include <sys/syscall.h>.
1557 (linux_kill_one_process): Don't kill the first thread here.
1558 (linux_kill): Kill the first thread here.
1559 (kill_lwp): New function.
1560 (send_sigstop, linux_send_signal): Use it.
1561 * proc-service.c: Clean up #ifdefs.
1562 (fpregset_info): Delete.
1563 (ps_lgetregs): Update and enable implementation.
1564 (ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs): Remove disabled
1565 implementations.
1566 * remote-utils.c (struct sym_cache, symbol_cache): New.
1567 (input_interrupt): Print a clearer message.
1568 (async_io_enabled): New variable.
1569 (enable_async_io, disable_async_io): Use it. Update comments.
1570 (look_up_one_symbol): Use the symbol cache.
1571 * thread-db.c (thread_db_look_up_symbols): New function.
1572 (thread_db_init): Update comments. Call thread_db_look_up_symbols.
1573
f6de3c42
DJ
15742004-10-16 Daniel Jacobowitz <dan@debian.org>
1575
1576 * configure.in: Test for -rdynamic.
1577 * configure: Regenerated.
1578 * Makefile (INTERNAL_LDFLAGS): New.
1579 (gdbserver, gdbreplay): Use it.
1580
2c0fc042
AC
15812004-09-02 Andrew Cagney <cagney@gnu.org>
1582
1583 * Makefile.in (TAGS): Replace TM_FILE with DEPRECATED_TM_FILE.
1584
075b3282
DJ
15852004-03-23 Daniel Jacobowitz <drow@mvista.com>
1586
1587 * linux-low.c (linux_wait): Clear all_processes list also.
1588
fa6a77dc
DJ
15892004-03-12 Daniel Jacobowitz <drow@mvista.com>
1590
1591 * linux-low.c: Include <errno.h>. Remove extern declaration of
1592 errno.
1593
6d782a97
DJ
15942004-03-12 Daniel Jacobowitz <drow@mvista.com>
1595
1596 * gdbreplay.c, server.h, utils.c: Update copyright years.
1597
3a7fb99b
DJ
15982004-03-04 Nathan J. Williams <nathanw@wasabisystems.com>
1599
1600 * server.c (main): Print child status or termination signal from
1601 variable 'signal', not 'sig'.
1602
c3e735a6
DJ
16032004-03-04 Nathan J. Williams <nathanw@wasabisystems.com>
1604
1605 * linux-low.c (linux_read_memory): Change return type to
1606 int. Check for and return error from ptrace().
1607 * target.c (read_inferior_memory): Change return type to int. Pass
1608 back return status from the_target->read_memory().
1609 * target.h (struct target_ops): Adapt *read_memory() prototype.
1610 Update comment.
1611 (read_inferior_memory): Adapt prototype.
1612 * server.c (main): Return an error packet if
1613 read_inferior_memory() returns an error.
1614
a59d1c82
DJ
16152004-03-04 Daniel Jacobowitz <drow@mvista.com>
1616
1617 * Makefile.in (distclean): Remove config.h, stamp-h, and config.log.
1618 Unify with other clean targets.
1619
dc3f8883
DJ
16202004-02-29 Daniel Jacobowitz <drow@mvista.com>
1621
1622 * server.c (handle_v_cont): Call set_desired_inferior.
1623
89a208da
DJ
16242004-02-29 Daniel Jacobowitz <drow@mvista.com>
1625
1626 * remote-utils.c (prepare_resume_reply): Always supply "thread:".
1627
62ea82f5
DJ
16282004-02-29 Daniel Jacobowitz <drow@mvista.com>
1629
1630 * linux-low.c (linux_wait): Unblock async I/O.
1631 (linux_resume): Block and enable async I/O.
1632 * remote-utils.c (block_async_io, unblock_async_io): New functions.
1633 * server.h (block_async_io, unblock_async_io): Add prototypes.
1634
6910d122
DJ
16352004-02-29 Daniel Jacobowitz <drow@mvista.com>
1636
1637 * remote-utils.c (remote_open): Print a status notice after
1638 opening a TCP port.
1639 * server.c (attach_inferior): Print a status notice after
1640 attaching.
1641
16422004-02-29 Daniel Jacobowitz <drow@mvista.com>
d677d77d
DJ
1643
1644 * linux-arm-low.c (arm_get_pc): Print out stop PC in debug mode.
1645
c89dc5d4
DJ
16462004-02-26 Daniel Jacobowitz <drow@mvista.com>
1647
1648 * remote-utils.c (write_enn): Use "E01" instead of "ENN" for the
1649 error packet.
1650 * server.c, target.h: Update copyright years.
1651
4b8dad4a
RM
16522004-02-25 Roland McGrath <roland@redhat.com>
1653
1654 * target.h (struct target_ops): New member `read_auxv'.
1655 * server.c (handle_query): Handle qPart:auxv:read: query using that.
1656 * linux-low.c (linux_read_auxv): New function.
1657 (linux_target_ops): Initialize `read_auxv' member to that.
1658
d7446758
JB
16592004-02-17 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1660
1661 Committed by Jim Blandy <jimb@redhat.com>.
1662
1663 * linux-s390-low.c (s390_num_regs): Update.
4b8dad4a 1664 (s390_regmap): Remove control registers. Use __s390x__ predefine
d7446758
JB
1665 instead of GPR_SIZE to distiguish s390 and s390x targets.
1666
5544ad89
DJ
16672004-01-31 Daniel Jacobowitz <drow@mvista.com>
1668
1669 * linux-low.c: Update copyright year.
1670 (check_removed_breakpoint): Clear pending_is_breakpoint.
1671 (linux_set_resume_request, linux_queue_one_thread)
1672 (resume_status_pending_p): New functions.
1673 (linux_continue_one_thread): Use process->resume.
1674 (linux_resume): Only resume threads if there are no pending events.
1675 * linux-low.h (struct process_info): Add resume request
1676 pointer.
1677
2a68b70e
DJ
16782004-01-30 Daniel Jacobowitz <drow@mvista.com>
1679
1680 * regcache.c (new_register_cache): Clear the allocated register
1681 buffer. Suggested by Atsushi Nemoto <anemo@mba.ocn.ne.jp>.
1682
64386c31
DJ
16832003-10-13 Daniel Jacobowitz <drow@mvista.com>
1684
1685 * linux-low.c (linux_resume): Take a struct thread_resume *
1686 argument.
1687 (linux_wait): Update call.
1688 (resume_ptr): New static variable.
1689 (linux_continue_one_thread): Renamed from
1690 linux_continue_one_process. Use resume_ptr.
1691 (linux_resume): Use linux_continue_one_thread.
1692 * server.c (handle_v_cont, handle_v_requests): New functions.
1693 (myresume): New function.
1694 (main): Handle 'v' case.
1695 * target.h (struct thread_resume): New type.
1696 (struct target_ops): Change argument of "resume" to struct
1697 thread_resume *.
1698 (myresume): Delete macro.
1699
c938e9b0
L
17002003-08-08 H.J. Lu <hongjiu.lu@intel.com>
1701
1702 * Makefile.in (install-only): Create dest dir. Support DESTDIR.
1703 (uninstall): Support DESTDIR.
1704
7f313d07
BC
1705Mon Jul 21 20:09:34 UTC 2003 Brendan Conoboy <blc@redhat.com>
1706
1707 * configure.srv: Add xscale*linux copy of arm*linux entry.
1708
3b2fc2ea
DJ
17092003-07-24 Daniel Jacobowitz <drow@mvista.com>
1710
1711 * linux-arm-low.c (arm_reinsert_addr): New function.
1712 (the_low_target): Add arm_reinsert_addr.
1713
1c0a559e
MK
17142003-07-08 Mark Kettenis <kettenis@gnu.org>
1715
1716 * mem-break.c: Remove whitespace at end of file.
1717
43d5792c
DJ
17182003-06-28 Daniel Jacobowitz <drow@mvista.com>
1719
1720 * configure.in: Check whether we need to prototype strerror.
1721 * server.h: Optionally prototype strerror.
1722 * gdbreplay.c (perror_with_name): Use strerror.
1723 * linux-low.c (linux_attach_lwp): Use strerror.
1724 * utils.c (perror_with_name): Use strerror.
1725 * config.in, configure: Regenerated.
1726
c8a86edf
DJ
17272003-06-28 Daniel Jacobowitz <drow@mvista.com>
1728
1729 * linux-sh-low.c (sh_regmap): Fix FP register offsets, reported by
1730 SUGIOKA Toshinobu <sugioka@itonet.co.jp>.
1731
73d37363
DJ
17322003-06-20 Daniel Jacobowitz <drow@mvista.com>
1733
1734 * Makefile.in (SFILES): Update.
1735 * low-hppabsd.c, low-lynx.c, low-nbsd.c, low-sim.c, low-sparc.c,
1736 low-sun3.c: Remove files.
1737
6ad8ae5c
DJ
17382003-06-17 Daniel Jacobowitz <drow@mvista.com>
1739
1740 * linux-low.c: Move comment to linux_thread_alive where it belonged.
1741 (linux_detach_one_process, linux_detach): New functions.
1742 (linux_target_ops): Add linux_detach.
1743 * server.c (main): Handle 'D' packet.
1744 * target.h (struct target_ops): Add "detach" member.
1745 (detach_inferior): Define.
1746
1581182a
MK
17472003-06-13 Mark Kettenis <kettenis@gnu.org>
1748
1749 From Kelley Cook <kelleycook@wideopenwest.com>:
1750 * configure.srv: Accept i[34567]86 variants.
1751
e5379b03
DJ
17522003-06-05 Daniel Jacobowitz <drow@mvista.com>
1753
1754 * linux-low.c (linux_wait_for_event): Correct comment typos.
1755 (linux_resume_one_process): Call check_removed_breakpoint.
1756 (linux_send_signal): New function.
1757 (linux_target_ops): Add linux_send_signal.
1758 * remote-utils.c (putpkt, input_interrupt): Use send_signal instead
1759 of kill.
1760 * target.h (struct target_ops): Add send_signal.
1761
2ff29de4
JB
17622003-05-29 Jim Blandy <jimb@redhat.com>
1763
1764 * linux-low.c (usr_store_inferior_registers): Transfer buf in
1765 PTRACE_XFER_TYPE-sized chunks, not int-sized chunks. Otherwise,
1766 if 'int' is smaller than PTRACE_XFER_TYPE, you end up throwing
1767 away part of the register's value.
1768
254787d4
DJ
17692003-03-26 Daniel Jacobowitz <drow@mvista.com>
1770
1771 * linux-low.c (linux_create_inferior): Use __SIGRTMIN.
1772 (linux_wait_for_event, linux_init_signals): Likewise.
1773
94e10508
DJ
17742003-03-17 Daniel Jacobowitz <drow@mvista.com>
1775
1776 * configure.in: Check for stdlib.h.
1777 * configure: Regenerated.
1778 * config.in: Regenerated.
1779
4c0711e0
DJ
17802003-01-04 Andreas Schwab <schwab@suse.de>
1781
1782 * linux-m68k-low.c (m68k_num_regs): Define to 29 instead of 31.
1783
ef66e766
AC
17842003-01-02 Andrew Cagney <ac131313@redhat.com>
1785
1786 * Makefile.in: Remove obsolete code.
1787
a1358604
DJ
17882002-11-20 Daniel Jacobowitz <drow@mvista.com>
1789
1790 * linux-s390-low.c (s390_regmap): Check GPR_SIZE instead of
1791 defined(PT_FPR0_HI).
1792
23ce3b1c
DJ
17932002-11-17 Stuart Hughes <seh@zee2.com>
1794
1795 * linux-arm-low.c (arm_num_regs): Increase.
1796 (arm_regmap): Include status register.
1797
17982002-11-17 Daniel Jacobowitz <drow@mvista.com>
1799
1800 * linux-low.c (register_addr): Remove incorrect -1 check.
1801
a9fa9f7d
DJ
18022002-08-29 Daniel Jacobowitz <drow@mvista.com>
1803
1804 * linux-low.c (linux_create_inferior): Call setpgid. Return
1805 the new PID.
1806 (unstopped_p, linux_signal_pid): Remove.
1807 (linux_target_ops): Remove linux_signal_pid.
1808 * remote-utils.c (putpkt, input_interrupt): Use signal_pid
1809 global instead of target method.
1810 * target.h (struct target_ops): Remove signal_pid. Update comment
1811 for create_inferior.
1812 * server.c (signal_pid): New variable.
1813 (create_inferior): Set signal_pid. Block SIGTTOU and SIGTTIN in
4b8dad4a 1814 gdbserver. Set the child to be the foreground process group.
a9fa9f7d
DJ
1815 (attach_inferior): Set signal_pid.
1816
17574093
DJ
18172002-08-23 Daniel Jacobowitz <drow@mvista.com>
1818
1819 * ChangeLog: New file, with entries from gdb/ChangeLog after GDB 5.2.
1820
18212002-08-20 Jim Blandy <jimb@redhat.com>
1822
1823 * Makefile.in (LDFLAGS): Allow the configure script to establish a
1824 default for this.
1825
18262002-08-01 Andrew Cagney <cagney@redhat.com>
1827
1828 * Makefile.in: Make chill references obsolete.
1829
18302002-07-24 Kevin Buettner <kevinb@redhat.com>
1831
1832 * configure.in (unistd.h): Add to AC_CHECK_HEADERS list.
1833 * configure: Regenerate.
1834 * config.in: Regenerate.
1835
18362002-07-09 David O'Brien <obrien@FreeBSD.org>
1837
1838 * gdbreplay.c (stdlib.h, unistd.h): Conditionaly include.
1839 (perror_with_name, remote_close, remote_open, expect, play): Static.
1840
18412002-07-04 Michal Ludvig <mludvig@suse.cz>
1842
4b8dad4a 1843 * linux-x86-64-low.c (x86_64_regmap): Make it an array of
17574093
DJ
1844 byte offsets instead of an array of indexes.
1845 (x86_64_store_gregset, x86_64_store_fpregset): Parameter made const.
1846
18472002-06-13 Daniel Jacobowitz <drow@mvista.com>
1848
1849 * regcache.c: Add comment.
1850
18512002-06-11 Daniel Jacobowitz <drow@mvista.com>
1852
1853 * thread-db.c: New file.
1854 * proc-service.c: New file.
1855 * acinclude.m4: New file.
1856 * Makefile.in: Add GDBSERVER_LIBS, gdb_proc_service_h,
1857 proc-service.o, and thread-db.o.
1858 (linux-low.o): Add USE_THREAD_DB.
1859 * acconfig.h: Add HAVE_PRGREGSET_T, HAVE_PRFPREGSET_T,
1860 HAVE_LWPID_T, HAVE_PSADDR_T, and PRFPREGSET_T_BROKEN.
1861 * aclocal.m4: Regenerated.
1862 * config.in: Regenerated.
1863 * configure: Regenerated.
1864 * configure.in: Check for proc_service.h, sys/procfs.h,
1865 thread_db.h, and linux/elf.h headrs.
1866 Check for lwpid_t, psaddr_t, prgregset_t, prfpregset_t, and
1867 PRFPREGSET_T_BROKEN. Introduce srv_thread_depfiles and USE_THREAD_DB.
1868 Check for -lthread_db and thread support.
1869 * configure.srv: Enable thread_db support for ARM, i386, MIPS,
1870 PowerPC, and SuperH.
1871 * i387-fp.c: Constify arguments.
1872 * i387-fp.h: Likewise.
1873 * inferiors.c: (struct thread_info): Renamed from
1874 `struct inferior_info'. Remove PID member. Use generic inferior
1875 list header. All uses updated.
1876 (inferiors, signal_pid): Removed.
1877 (all_threads): New variable.
1878 (get_thread): Define.
1879 (add_inferior_to_list): New function.
1880 (for_each_inferior): New function.
1881 (change_inferior_id): New function.
1882 (add_inferior): Removed.
1883 (remove_inferior): New function.
1884 (add_thread): New function.
1885 (free_one_thread): New function.
1886 (remove_thread): New function.
1887 (clear_inferiors): Use for_each_inferior and free_one_thread.
1888 (find_inferior): New function.
1889 (find_inferior_id): New function.
1890 (inferior_target_data): Update argument type.
1891 (set_inferior_target_data): Likewise.
1892 (inferior_regcache_data): Likewise.
1893 (set_inferior_regcache_data): Likewise.
1894 * linux-low.c (linux_bp_reinsert): Remove.
1895 (all_processes, stopping_threads, using_thrads)
1896 (struct pending_signals, debug_threads, pid_of): New.
1897 (inferior_pid): Replace with macro.
1898 (struct inferior_linux_data): Remove.
1899 (get_stop_pc, add_process): New functions.
1900 (linux_create_inferior): Restore SIGRTMIN+1 before calling exec.
1901 Use add_process and add_thread.
1902 (linux_attach_lwp): New function, based on old linux_attach. Use
1903 add_process and add_thread. Set stop_expected for new threads.
1904 (linux_attach): New function.
1905 (linux_kill_one_process): New function.
1906 (linux_kill): Kill all LWPs.
1907 (linux_thread_alive): Use find_inferior_id.
1908 (check_removed_breakpoints, status_pending_p): New functions.
1909 (linux_wait_for_process): Renamed from linux_wait_for_one_inferior.
1910 Update. Use WNOHANG. Wait for cloned processes also. Update process
1911 struct for the found process.
1912 (linux_wait_for_event): New function.
1913 (linux_wait): Use it. Support LWPs.
1914 (send_sigstop, wait_for_sigstop, stop_all_processes)
1915 (linux_resume_one_process, linux_continue_one_process): New functions.
1916 (linux_resume): Support LWPs.
1917 (REGISTER_RAW_SIZE): Remove.
1918 (fetch_register): Use register_size instead. Call supply_register.
1919 (usr_store_inferior_registers): Likewise. Call collect_register.
1920 Fix recursive case.
1921 (regsets_fetch_inferior_registers): Improve error message.
1922 (regsets_store_inferior_registers): Add debugging.
1923 (linux_look_up_symbols): Call thread_db_init if USE_THREAD_DB.
1924 (unstopped_p, linux_signal_pid): New functions.
1925 (linux_target_ops): Add linux_signal_pid.
1926 (linux_init_signals): New function.
1927 (initialize_low): Call it. Initialize using_threads.
1928 * regcache.c (inferior_regcache_data): Add valid
1929 flag.
1930 (get_regcache): Fetch registers lazily. Add fetch argument
1931 and update all callers.
1932 (regcache_invalidate_one, regcache_invalidate): New
1933 functions.
1934 (new_register_cache): Renamed from create_register_cache.
1935 Return the new regcache.
1936 (free_register_cache): Change argument to a void *.
1937 (registers_to_string, registers_from_string): Call get_regcache
1938 with fetch flag set.
1939 (register_data): Make static. Pass fetch flag to get_regcache.
1940 (supply_register): Call get_regcache with fetch flag clear.
1941 (collect_register): Call get_regcache with fetch flag set.
1942 (collect_register_as_string): New function.
1943 * regcache.h: Update.
1944 * remote-utils.c (putpkt): Flush after debug output and use
1945 stderr.
1946 Handle input interrupts while waiting for an ACK.
1947 (input_interrupt): Use signal_pid method.
1948 (getpkt): Flush after debug output and use stderr.
1949 (outreg): Use collect_register_as_string.
1950 (new_thread_notify, dead_thread_notify): New functions.
1951 (prepare_resume_reply): Check using_threads. Set thread_from_wait
1952 and general_thread.
1953 (look_up_one_symbol): Flush after debug output.
1954 * server.c (step_thread, server_waiting): New variables.
1955 (start_inferior): Don't use signal_pid. Update call to mywait.
1956 (attach_inferior): Update call to mywait.
1957 (handle_query): Handle qfThreadInfo and qsThreadInfo.
1958 (main): Don't fetch/store registers explicitly. Use
1959 set_desired_inferior. Support proposed ``Hs'' packet. Update
1960 calls to mywait.
1961 * server.h: Update.
1962 (struct inferior_list, struct_inferior_list_entry): New.
1963 * target.c (set_desired_inferior): New.
1964 (write_inferior_memory): Constify.
1965 (mywait): New function.
1966 * target.h: Update.
1967 (struct target_ops): New signal_pid method.
1968 (mywait): Removed macro, added prototype.
1969
1970 * linux-low.h (regset_func): Removed.
1971 (regset_fill_func, regset_store_func): New.
1972 (enum regset_type): New.
1973 (struct regset_info): Add type field. Use new operation types.
1974 (struct linux_target_ops): stop_pc renamed to get_pc.
1975 Add decr_pc_after_break and breakpoint_at.
1976 (get_process, get_thread_proess, get_process_thread)
1977 (strut process_info, all_processes, linux_attach_lwp)
1978 (thread_db_init): New.
1979
1980 * linux-arm-low.c (arm_get_pc, arm_set_pc,
1981 arm_breakpoint, arm_breakpoint_len, arm_breakpoint_at): New.
1982 (the_low_target): Add new members.
1983 * linux-i386-low.c (i386_store_gregset, i386_store_fpregset)
1984 (i386_store_fpxregset): Constify.
1985 (target_regsets): Add new kind identifier.
1986 (i386_get_pc): Renamed from i386_stop_pc. Simplify.
1987 (i386_set_pc): Add debugging.
1988 (i386_breakpoint_at): New function.
1989 (the_low_target): Add new members.
1990 * linux-mips-low.c (mips_get_pc, mips_set_pc)
1991 (mips_breakpoint, mips_breakpoint_len, mips_reinsert_addr)
1992 (mips_breakpoint_at): New.
1993 (the_low_target): Add new members.
1994 * linux-ppc-low.c (ppc_get_pc, ppc_set_pc)
1995 (ppc_breakpoint, ppc_breakpoint_len, ppc_breakpoint_at): New.
1996 (the_low_target): Add new members.
1997 * linux-sh-low.c (sh_get_pc, sh_set_pc)
1998 (sh_breakpoint, sh_breakpoint_len, sh_breakpoint_at): New.
1999 (the_low_target): Add new members.
2000 * linux-x86-64-low.c (target_regsets): Add new kind
2001 identifier.
2002
20032002-05-15 Daniel Jacobowitz <drow@mvista.com>
2004
2005 From Martin Pool <mbp@samba.org>:
2006 * server.c (gdbserver_usage): New function.
2007 (main): Call it.
2008
20092002-05-14 Daniel Jacobowitz <drow@mvista.com>
2010
2011 * mem-break.c (reinsert_breakpoint_by_bp): Correct typo
2012 stop_at -> stop_pc.
2013
20142002-05-04 Andrew Cagney <ac131313@redhat.com>
2015
2016 * Makefile.in: Remove obsolete code.
2017
20182002-04-24 Michal Ludvig <mludvig@suse.cz>
2019
2020 * linux-low.c (regsets_fetch_inferior_registers),
2021 (regsets_store_inferior_registers): Removed cast to int from
2022 ptrace() calls.
2023 * regcache.h: Added declaration of struct inferior_info.
2024
20252002-04-20 Daniel Jacobowitz <drow@mvista.com>
2026
2027 * inferiors.c (struct inferior_info): Add regcache_data.
2028 (add_inferior): Call create_register_cache.
2029 (clear_inferiors): Call free_register_cache.
2030 (inferior_regcache_data, set_inferior_regcache_data): New functions.
2031 * regcache.c (struct inferior_regcache_data): New.
2032 (registers): Remove.
2033 (get_regcache): New function.
2034 (create_register_cache, free_register_cache): New functions.
2035 (set_register_cache): Don't initialize the register cache here.
2036 (registers_to_string, registers_from_string, register_data): Call
2037 get_regcache.
2038 * regcache.h: Add prototypes.
2039 * server.h: Likewise.
2040
20412002-04-20 Daniel Jacobowitz <drow@mvista.com>
2042
2043 * mem-break.c: New file.
2044 * mem-break.h: New file.
2045 * Makefile.in: Add mem-break.o rule; update server.h
2046 dependencies.
2047 * inferiors.c (struct inferior_info): Add target_data
2048 member.
2049 (clear_inferiors): Free target_data member if set.
2050 (inferior_target_data, set_inferior_target_data): New functions.
2051 * linux-i386-low.c (i386_breakpoint, i386_breakpoint_len)
2052 (i386_stop_pc, i386_set_pc): New. Add to the_low_target.
2053 * linux-low.c (linux_bp_reinsert): New variable.
2054 (struct inferior_linux_data): New.
2055 (linux_create_inferior): Use set_inferior_target_data.
2056 (linux_attach): Likewise. Call add_inferior.
2057 (linux_wait_for_one_inferior): New function.
2058 (linux_wait): Call it.
2059 (linux_write_memory): Add const.
2060 (initialize_low): Call set_breakpoint_data.
2061 * linux-low.h (struct linux_target_ops): Add breakpoint
2062 handling members.
2063 * server.c (attach_inferior): Remove extra add_inferior
2064 call.
2065 * server.h: Include mem-break.h. Update inferior.c
2066 prototypes.
2067 * target.c (read_inferior_memory)
2068 (write_inferior_memory): New functions.
2069 * target.h (read_inferior_memory)
2070 (write_inferior_memory): Change macros to prototypes.
2071 (struct target_ops): Update comments. Add const to write_memory
2072 definition.
2073
20742002-04-11 Daniel Jacobowitz <drow@mvista.com>
2075
2076 * linux-low.c (usr_store_inferior_registers): Support
2077 registers which are allowed to fail to store.
2078 * linux-low.h (linux_target_ops): Likewise.
2079 * linux-ppc-low.c (ppc_regmap): Support FPSCR.
2080 (ppc_cannot_store_register): FPSCR may not be storable.
2081
20822002-04-09 Daniel Jacobowitz <drow@mvista.com>
2083
2084 * server.h: Include <string.h> if HAVE_STRING_H.
2085 * ChangeLog: Correct paths in last ChangeLog entry.
2086
20872002-04-09 Daniel Jacobowitz <drow@mvista.com>
2088
2089 * linux-low.h: Remove obsolete prototypes.
2090 (struct linux_target_ops): New.
2091 (extern the_low_target): New.
2092 * linux-low.c (num_regs, regmap): Remove declarations.
2093 (register_addr): Use the_low_target explicitly.
2094 (fetch_register): Likewise.
2095 (usr_fetch_inferior_registers): Likewise.
2096 (usr_store_inferior_registers): Likewise.
2097 * linux-arm-low.c (num_regs): Remove.
2098 (arm_num_regs): Define.
2099 (arm_regmap): Renamed from regmap, made static.
2100 (arm_cannot_fetch_register): Renamed from cannot_fetch_register,
2101 made static.
2102 (arm_cannot_store_register): Renamed from cannot_store_register,
2103 made static.
2104 (the_low_target): New.
2105 * linux-i386-low.c (num_regs): Remove.
2106 (i386_num_regs): Define.
2107 (i386_regmap): Renamed from regmap, made static.
2108 (i386_cannot_fetch_register): Renamed from cannot_fetch_register,
2109 made static.
2110 (i386_cannot_store_register): Renamed from cannot_store_register,
2111 made static.
2112 (the_low_target): New.
2113 * linux-ia64-low.c (num_regs): Remove.
2114 (ia64_num_regs): Define.
2115 (ia64_regmap): Renamed from regmap, made static.
2116 (ia64_cannot_fetch_register): Renamed from cannot_fetch_register,
2117 made static.
2118 (ia64_cannot_store_register): Renamed from cannot_store_register,
2119 made static.
2120 (the_low_target): New.
2121 * linux-m68k-low.c (num_regs): Remove.
2122 (m68k_num_regs): Define.
2123 (m68k_regmap): Renamed from regmap, made static.
2124 (m68k_cannot_fetch_register): Renamed from cannot_fetch_register,
2125 made static.
2126 (m68k_cannot_store_register): Renamed from cannot_store_register,
2127 made static.
2128 (the_low_target): New.
2129 * linux-mips-low.c (num_regs): Remove.
2130 (mips_num_regs): Define.
2131 (mips_regmap): Renamed from regmap, made static.
2132 (mips_cannot_fetch_register): Renamed from cannot_fetch_register,
2133 made static.
2134 (mips_cannot_store_register): Renamed from cannot_store_register,
2135 made static.
2136 (the_low_target): New.
2137 * linux-ppc-low.c (num_regs): Remove.
2138 (ppc_num_regs): Define.
2139 (ppc_regmap): Renamed from regmap, made static.
2140 (ppc_cannot_fetch_register): Renamed from cannot_fetch_register,
2141 made static.
2142 (ppc_cannot_store_register): Renamed from cannot_store_register,
2143 made static.
2144 (the_low_target): New.
2145 * linux-s390-low.c (num_regs): Remove.
2146 (s390_num_regs): Define.
2147 (s390_regmap): Renamed from regmap, made static.
2148 (s390_cannot_fetch_register): Renamed from cannot_fetch_register,
2149 made static.
2150 (s390_cannot_store_register): Renamed from cannot_store_register,
2151 made static.
2152 (the_low_target): New.
2153 * linux-sh-low.c (num_regs): Remove.
2154 (sh_num_regs): Define.
2155 (sh_regmap): Renamed from regmap, made static.
2156 (sh_cannot_fetch_register): Renamed from cannot_fetch_register,
2157 made static.
2158 (sh_cannot_store_register): Renamed from cannot_store_register,
2159 made static.
2160 (the_low_target): New.
2161 * linux-x86-64-low.c (x86_64_regmap): Renamed from regmap.
2162 (the_low_target): New.
2163
21642002-04-09 Daniel Jacobowitz <drow@mvista.com>
2165
2166 * Makefile.in: Add stamp-h target.
2167 * configure.in: Create stamp-h.
2168 * configure: Regenerated.
2169
21702002-04-09 Daniel Jacobowitz <drow@mvista.com>
2171
2172 * inferiors.c: New file.
2173 * target.c: New file.
2174 * target.h: New file.
2175 * Makefile.in: Add target.o and inferiors.o. Update
2176 dependencies.
2177 * linux-low.c (inferior_pid): New static variable,
2178 moved from server.c.
2179 (linux_create_inferior): Renamed from create_inferior.
2180 Call add_inferior. Return 0 on success instead of a PID.
2181 (linux_attach): Renamed from myattach.
2182 (linux_kill): Renamed from kill_inferior. Call clear_inferiors ().
2183 (linux_thread_alive): Renamed from mythread_alive.
2184 (linux_wait): Renamed from mywait. Call clear_inferiors () if the
2185 child dies.
2186 (linux_resume): Renamed from myresume. Add missing ``return 0''.
2187 (regsets_store_inferior_registers): Correct error message.
2188 Add missing ``return 0''.
2189 (linux_fetch_registers): Renamed from fetch_inferior_registers.
2190 (linux_store_registers): Renamed from store_inferior_registers.
2191 (linux_read_memory): Renamed from read_inferior_memory.
2192 (linux_write_memory): Renamed from write_inferior_memory.
2193 (linux_target_ops): New structure.
2194 (initialize_low): Call set_target_ops ().
2195 * remote-utils.c (unhexify): New function.
2196 (hexify): New function.
2197 (input_interrupt): Send signals to ``signal_pid''.
2198 * server.c (inferior_pid): Remove.
2199 (start_inferior): Update create_inferior call.
2200 (attach_inferior): Call add_inferior.
2201 (handle_query): New function.
2202 (main): Call handle_query for `q' packets.
2203 * server.h: Include "target.h". Remove obsolete prototypes.
2204 Add prototypes for "inferiors.c", "target.c", hexify, and unhexify.
2205
22062002-04-09 Daniel Jacobowitz <drow@mvista.com>
2207
2208 * Makefile.in: Add WARN_CFLAGS. Update configury
2209 dependencies.
2210 * configure.in: Check for <string.h>
2211 * configure: Regenerate.
2212 * config.in: Regenerate.
2213 * gdbreplay.c: Include needed system headers.
2214 (remote_open): Remove strchr prototype.
2215 * linux-low.h: Correct #ifdef to HAVE_LINUX_USRREGS.
2216 * regcache.c (supply_register): Change buf argument to const void *.
2217 (supply_register_by_name): Likewise.
2218 (collect_register): Change buf argument to void *.
2219 (collect_register_by_name): Likewise.
2220 * regcache.h: Add missing prototypes.
2221 * remote-utils.c: Include <arpa/inet.h> for inet_ntoa.
2222 * server.c (handle_query): New function.
2223 (attached): New static variable, moved out of main.
2224 (main): Quiet longjmp clobber warnings.
2225 * server.h: Add ATTR_NORETURN and ATTR_FORMAT. Update prototypes.
2226 * utils.c (error): Remove NORETURN.
2227 (fatal): Likewise.