]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - gdb/gdbserver/ChangeLog
Enable range stepping if software single step is supported
[thirdparty/binutils-gdb.git] / gdb / gdbserver / ChangeLog
1 2016-10-27 Yao Qi <yao.qi@linaro.org>
2
3 * linux-low.c (linux_supports_range_stepping): Return true if
4 can_software_single_step return true.
5
6 2016-10-27 Yao Qi <yao.qi@linaro.org>
7
8 * inferiors.c (find_inferior_in_random): New function.
9 * inferiors.h (find_inferior_in_random): Declare.
10 * linux-low.c (linux_wait_for_event_filtered): Call
11 find_inferior_in_random instead of find_inferior.
12
13 2016-10-27 Yao Qi <yao.qi@linaro.org>
14
15 * linux-low.c (linux_wait_1): If single-step breakpoints are
16 inserted, remove them.
17
18 2016-10-26 Pedro Alves <palves@redhat.com>
19
20 * linux-low.c (handle_extended_wait): Link parent/child fork
21 threads.
22 (linux_wait_1): Unlink them.
23 (linux_set_resume_request): Ignore resume requests for
24 already-resumed and unhandled fork child threads.
25 * linux-low.h (struct lwp_info) <fork_relative>: New field.
26 * server.c (in_queued_stop_replies_ptid, in_queued_stop_replies):
27 New functions.
28 (handle_v_requests) <vCont>: Don't call require_running.
29 * server.h (in_queued_stop_replies): New declaration.
30
31 2016-10-24 Yao Qi <yao.qi@linaro.org>
32
33 PR server/20733
34 * linux-aarch64-low.c (append_insns): Cast the return value to
35 'uint32_t *'.
36
37 2016-10-10 Yao Qi <yao.qi@linaro.org>
38
39 * linux-aarch32-low.c (enum arm_breakpoint_kinds): Remove.
40
41 2016-10-06 Sergio Durigan Junior <sergiodj@redhat.com>
42
43 * target.c (target_supports_multi_process): New function, moved
44 from...
45 * target.h (target_supports_multi_process): ... here. Remove
46 macro.
47
48 2016-10-05 Tom Tromey <tom@tromey.com>
49
50 PR remote/20655:
51 * tracepoint.c (handle_tracepoint_bkpts): Check
52 ipa_error_tracepoint, not ipa_stopping_tracepoint.
53
54 2016-10-05 Yao Qi <yao.qi@linaro.org>
55
56 * configure.srv: Update the path of arm-*.xml files.
57
58 2016-10-05 Terry Guo <terry.guo@arm.com>
59 Yao Qi <yao.qi@linaro.org>
60
61 * Makefile.in: Adjust the path of rules.
62 * configure.srv: Update the path of xml files.
63 * regformats/arm-with-iwmmxt.dat: Regenerated.
64 * regformats/arm-with-neon.dat: Likewise.
65 * regformats/arm-with-vfpv2.dat: Likewise.
66 * regformats/arm-with-vfpv3.dat Likewise.
67
68 2016-09-30 Yao Qi <yao.qi@linaro.org>
69
70 PR gdbserver/20627
71 * target.c (target_stop_and_wait): Don't call
72 target_continue_no_signal, use resume_stop instead.
73
74 2016-09-26 Yao Qi <yao.qi@linaro.org>
75
76 * linux-low.c (linux_wait_1): Call debug_exit.
77
78 2016-09-23 Pedro Alves <palves@redhat.com>
79
80 * Makefile.in (SFILES): Add common/new-op.c.
81 (OBS): Add common/new-op.o.
82 (new-op.o): New rule.
83
84 2016-09-21 Simon Marchi <simon.marchi@ericsson.com>
85
86 * .gitinore: Ignore more files.
87
88 2016-09-21 Yao Qi <yao.qi@linaro.org>
89
90 * linux-aarch32-low.c (arm_fill_gregset): Keep bits 20 to
91 23.
92
93 2016-09-19 Sergio Durigan Junior <sergiodj@redhat.com>
94
95 * server.c (start_inferior): Call target_mourn_inferior instead of
96 mourn_inferior; pass ptid_t argument to it.
97 (resume): Likewise.
98 (handle_target_event): Likewise.
99 * target.c (target_mourn_inferior): New function.
100 * target.h (mourn_inferior): Delete macro.
101
102 2016-09-16 Andreas Arnez <arnez@linux.vnet.ibm.com>
103
104 * linux-low.c (lwp_is_stepping): New function.
105
106 2016-09-06 Carl Love <cel@us.ibm.com>
107
108 * server.c (start_inferior): Fixed comment, requested comment change
109 didn't get updated correctly. Removed reference to ptrace () call as
110 it is only true on Linux systems.
111
112 2016-09-06 Carl Love <cel@us.ibm.com>
113
114 * server.c (start_inferior): Do not call
115 function target_post_create_inferior () if the
116 inferior process has already exited.
117
118 2016-09-05 Pedro Alves <palves@redhat.com>
119
120 * Makefile.in (COMPILER, COMPILER_CFLAGS): Remove.
121 (COMPILE.pre, CC_LD): Use CXX directly.
122 (INTERNAL_CFLAGS_BASE): Use CXXFLAGS directly.
123 * acinclude.m4: Don't include build-with-cxx.m4.
124 * configure.ac: Remove GDB_AC_BUILD_WITH_CXX call.
125 * configure: Regenerate.
126
127 2016-09-02 Akash Trehan <akash.trehan123@gmail.com>
128
129 PR gdb/19495
130 * remote-utils.c (relocate_instruction): Remove redundant strcpy()
131 call writing data to own_buf.
132
133 2016-09-01 Sergio Durigan Junior <sergiodj@redhat.com>
134
135 * target.c (mywait): Call target_wait instead of
136 the_target->wait.
137 (target_wait): New function.
138
139 2016-09-01 Sergio Durigan Junior <sergiodj@redhat.com>
140
141 * server.c (start_inferior): New variable 'ptid'. Replace calls
142 to the_target->resume by target_continue{,_no_signal}, depending
143 on the case.
144 * target.c (target_stop_and_wait): Call target_continue_no_signal
145 instead of the_target->resume.
146 (target_continue): New function.
147
148 2016-08-31 Antoine Tremblay <antoine.tremblay@ericsson.com>
149
150 * linux-low.c (linux_wait_1): Move event switch after unsuspend_lwps.
151
152 2016-08-25 Adhemerval Zanella <adhemerval.zanella@linaro.org>
153
154 PR server/20491
155 * gdb_proc_service.h (ps_get_thread_area): Remove const from struct
156 ps_prochandle.
157 * linux-aarch64-low.c (ps_get_thread_area): Likewise.
158 * linux-arm-low.c (ps_get_thread_area): Likewise.
159 * linux-crisv32-low.c (ps_get_thread_area): Likewise.
160 * linux-m68k-low.c (ps_get_thread_area): Likewise.
161 * linux-mips-low.c (ps_get_thread_area): Likewise.
162 * linux-nios2-low.c (ps_get_thread_area): Likewise.
163 * linux-tic6x-low.c (ps_get_thread_area): Likewise.
164 * linux-x86-low.c (ps_get_thread_area): Likewise.
165 * linux-xtensa-low.c (ps_get_thread_area): Likewise.
166
167 2016-08-19 Pedro Alves <palves@redhat.com>
168
169 * linux-x86-low.c (amd64_emit_call): Emit missing call opcode.
170
171 2016-08-19 Pedro Alves <palves@redhat.com>
172
173 * linux-x86-low.c (amd64_install_fast_tracepoint_jump_pad): Fix
174 comment. Use memcpy instead of casting through unsigned long.
175
176 2016-08-19 Pedro Alves <palves@redhat.com>
177
178 * linux-amd64-ipa.c (alloc_jump_pad_buffer) [__ILP32__]: Try
179 allocating around 0x80000000.
180
181 2016-08-19 Pedro Alves <palves@redhat.com>
182
183 PR gdb/20415
184 * Makefile.in (x32-linux-ipa.o, x32-avx-linux-ipa.o)
185 (x32-avx512-linux-ipa.o): New rules.
186 * configure.ac (x86_64-*-linux*): New x32 check.
187 * configure.srv (ipa_x32_linux_regobj): New.
188 (x86_64-*-linux*): Use $ipa_x32_linux_regobj if building for x32.
189 * linux-amd64-ipa.c (get_ipa_tdesc) [__ILP32__]: Return x32
190 descriptions.
191 (initialize_low_tracepoint) [__ILP32__]: Initialize x32
192 descriptions.
193 * configure: Regenerate.
194
195 2016-08-09 Pedro Alves <palves@redhat.com>
196
197 PR gdb/18653
198 * Makefile.in (OBS): Add signals-state-save-restore.o.
199 (signals-state-save-restore.o): New rule.
200 * config.in: Regenerate.
201 * configure: Regenerate.
202 * linux-low.c: Include "signals-state-save-restore.h".
203 (linux_create_inferior): Call
204 restore_original_signals_state.
205 * server.c: Include "dispositions-save-restore.h".
206 (captured_main): Call save_original_signals_state.
207
208 2016-08-05 Pedro Alves <palves@redhat.com>
209
210 * configure: Regenerate.
211
212 2016-08-04 Yao Qi <yao.qi@linaro.org>
213
214 * linux-low.c (regsets_fetch_inferior_registers): Check
215 errno is ESRCH or not.
216
217 2016-08-02 Yao Qi <yao.qi@linaro.org>
218
219 * thread-db.c (struct thread_db) <td_ta_event_getmsg_p>: Remove.
220 <td_ta_set_event_p, td_ta_event_addr_p>: Remove.
221 (thread_db_load_search): Update.
222 (try_thread_db_load_1): Don't look for td_ta_event_addr,
223 td_ta_set_event and td_ta_event_getmsg.
224
225 2016-07-26 Pedro Alves <palves@redhat.com>
226
227 PR server/20414
228 * linux-x86-low.c (x86_get_pc, x86_set_pc): Use uint64_t instead
229 of unsigned long for 64-bit registers and use uint32_t instead of
230 unsigned int for 32-bit registers.
231
232 2016-07-26 Pedro Alves <palves@redhat.com>
233
234 * linux-x86-low.c (x86_siginfo_fixup): Rename 'native' parameter
235 to 'ptrace'.
236
237 2016-07-21 Tom Tromey <tom@tromey.com>
238
239 * configure: Rebuild.
240
241 2016-07-21 Yao Qi <yao.qi@linaro.org>
242
243 * mem-break.c (find_gdb_breakpoint): Cast bp to
244 'struct gdb_breakpoint *' rather than 'gdb_breakpoint *'.
245
246 2016-07-21 Yao Qi <yao.qi@linaro.org>
247
248 * server.c (handle_v_requests): Support s and S actions
249 if target_supports_software_single_step return true.
250
251 2016-07-21 Yao Qi <yao.qi@linaro.org>
252
253 * linux-low.c (resume_stopped_resumed_lwps): If resume request
254 is resume_step, call maybe_hw_step.
255 (linux_wait_1): Stop all threads, remove reinsert breakpoints,
256 and unstop them.
257 (linux_resume_one_lwp_throw): Don't assert the thread has reinsert
258 breakpoints or not.
259 (proceed_one_lwp): If resume request is resume_step, install
260 reinsert breakpoints and call maybe_hw_step.
261
262 2016-07-21 Yao Qi <yao.qi@linaro.org>
263
264 * linux-low.c (proceed_one_lwp): Declare.
265 (linux_resume_one_thread): Remove local variable 'step'.
266 Lift code enqueue signal. Call proceed_one_lwp instead of
267 linux_resume_one_lwp.
268
269 2016-07-21 Yao Qi <yao.qi@linaro.org>
270
271 * linux-low.c (linux_resume_one_thread): Call
272 enqueue_pending_signal.
273
274 2016-07-21 Yao Qi <yao.qi@linaro.org>
275
276 * gdbthread.h (make_cleanup_restore_current_thread): Declare.
277 * inferiors.c (do_restore_current_thread_cleanup): New function.
278 (make_cleanup_restore_current_thread): Likewise.
279 * linux-low.c (install_software_single_step_breakpoints): Call
280 make_cleanup_restore_current_thread. Switch current_thread to
281 thread.
282
283 2016-07-21 Yao Qi <yao.qi@linaro.org>
284
285 * mem-break.c (struct reinsert_breakpoint) <ptid>: New field.
286 (set_reinsert_breakpoint): New parameter ptid. Callers updated.
287 (clone_one_breakpoint): Likewise.
288 (delete_reinsert_breakpoints): Change parameter to thread.
289 Callers updated.
290 (has_reinsert_breakpoints): Likewise.
291 (uninsert_reinsert_breakpoints): Likewise.
292 (reinsert_reinsert_breakpoints): Likewise.
293 * mem-break.h (set_reinsert_breakpoint): Update declaration.
294 (delete_reinsert_breakpoints): Likewise.
295 (reinsert_reinsert_breakpoints): Likewise.
296 (uninsert_reinsert_breakpoints): Likewise.
297 (has_reinsert_breakpoints): Likewise.
298
299 2016-07-21 Yao Qi <yao.qi@linaro.org>
300
301 * inferiors.c (get_thread_process): Make parameter const.
302 * inferiors.h (get_thread_process): Update declaration.
303 * mem-break.c (clone_all_breakpoints): Remove all parameters.
304 Add new parameters child_thread and parent_thread. Callers
305 updated.
306 * mem-break.h (clone_all_breakpoints): Update declaration.
307
308 2016-07-21 Yao Qi <yao.qi@linaro.org>
309
310 * mem-break.c (struct breakpoint) <cond_list>: Remove.
311 <command_list, handler>: Remove.
312 (struct gdb_breakpoint): New.
313 (struct other_breakpoint): New.
314 (struct reinsert_breakpoint): New.
315 (is_gdb_breakpoint): New function.
316 (any_persistent_commands): Update command_list if
317 is_gdb_breakpoint returns true.
318 (set_breakpoint): Create breakpoints according to their types.
319 (find_gdb_breakpoint): Return 'struct gdb_breakpoint *'.
320 (set_gdb_breakpoint_1): Likewise.
321 (set_gdb_breakpoint): Likewise.
322 (clear_breakpoint_conditions): Change parameter type to
323 'struct gdb_breakpoint *'.
324 (clear_breakpoint_commands): Likewise.
325 (clear_breakpoint_conditions_and_commands): Likewise.
326 (add_condition_to_breakpoint): Likewise.
327 (add_breakpoint_condition): Likewise.
328 (add_commands_to_breakpoint): Likewise.
329 (check_breakpoints): Check other_breakpoint.
330 (clone_one_breakpoint): Clone breakpopint according to its type.
331 * mem-break.h (struct gdb_breakpoint): Declare.
332 (set_gdb_breakpoint): Update declaration.
333 (clear_breakpoint_conditions_and_commands): Likewise.
334 (add_breakpoint_condition): Likewise.
335 (add_breakpoint_commands): Likewise.
336 * server.c (process_point_options): Change parameter type to
337 'struct gdb_breakpoint *'.
338
339 2016-07-21 Yao Qi <yao.qi@linaro.org>
340
341 * mem-break.c (set_breakpoint_at): Rename it to ...
342 (set_breakpoint_type_at): ... it.
343 (set_breakpoint_at): Call set_breakpoint_type_at.
344 (set_reinsert_breakpoint): Call set_breakpoint_type_at.
345 * mem-break.h (set_breakpoint_at): Update comments.
346
347 2016-07-12 Chung-Lin Tang <cltang@codesourcery.com>
348
349 * linux-nios2-low.c (nios2_fill_gregset): Add type cast
350 to buf parameter.
351 (nios2_store_gregset): Likewise.
352
353 2016-07-01 Pedro Alves <palves@redhat.com>
354 Antoine Tremblay <antoine.tremblay@ericsson.com>
355
356 * linux-low.c: Change interface to take the target lwp_info
357 pointer directly and return void. Handle detaching from a zombie
358 thread.
359 (linux_detach_lwp_callback): New function.
360 (linux_detach): Detach from the leader thread after detaching from
361 the clone threads.
362
363 2016-06-28 Yao Qi <yao.qi@linaro.org>
364
365 * linux-aarch64-low.c (aarch64_ftrace_insn_reloc_b): Use int64_t
366 for variable new_offset.
367 (aarch64_ftrace_insn_reloc_b_cond): Likewise.
368 (aarch64_ftrace_insn_reloc_cb): Likewise.
369 (aarch64_ftrace_insn_reloc_tb): Likewise.
370 (aarch64_install_fast_tracepoint_jump_pad): Likewise. Use
371 PRIx64 instead of PRIx32.
372
373 2016-06-28 Yao Qi <yao.qi@linaro.org>
374
375 * linux-arm-low.c (arm_get_syscall_trapinfo): New function.
376 (the_low_target): Install arm_get_syscall_trapinfo.
377
378 2016-06-28 Yao Qi <yao.qi@linaro.org>
379
380 * linux-aarch64-low.c (aarch64_get_syscall_trapinfo): New
381 function.
382 (the_low_target): Install aarch64_get_syscall_trapinfo.
383
384 2016-06-28 Yao Qi <yao.qi@linaro.org>
385
386 * linux-low.c (get_syscall_trapinfo): Remove parameter sysret.
387 Callers updated.
388 * linux-low.h (struct linux_target_ops) <get_syscall_trapinfo>:
389 Remove parameter sysno.
390 * linux-x86-low.c (x86_get_syscall_trapinfo): Remove parameter
391 sysret.
392
393 2016-06-21 Andreas Arnez <arnez@linux.vnet.ibm.com>
394
395 * linux-s390-low.c (s390_emit_eq_goto): Mark function static.
396 (s390_emit_ne_goto): Likewise.
397 (s390_emit_lt_goto): Likewise.
398 (s390_emit_le_goto): Likewise.
399 (s390_emit_gt_goto): Likewise.
400 (s390_emit_ge_goto): Likewise.
401 (s390x_emit_eq_goto): Likewise.
402 (s390x_emit_ne_goto): Likewise.
403 (s390x_emit_lt_goto): Likewise.
404 (s390x_emit_le_goto): Likewise.
405 (s390x_emit_gt_goto): Likewise.
406 (s390x_emit_ge_goto): Likewise.
407 (s390_emit_ops_impl): Mark variable static.
408 (s390x_emit_ops): Likewise.
409
410 2016-06-17 Yao Qi <yao.qi@linaro.org>
411
412 * linux-low.c (handle_extended_wait): Call
413 uninsert_reinsert_breakpoints for the parent process. Remove
414 reinsert breakpoints from the child process. Reinsert them to
415 the parent process when vfork is done.
416 * mem-break.c (uninsert_reinsert_breakpoints): New function.
417 (reinsert_reinsert_breakpoints): New function.
418 * mem-break.h (uninsert_reinsert_breakpoints): Declare
419 (reinsert_reinsert_breakpoints): Declare.
420
421 2016-06-17 Yao Qi <yao.qi@linaro.org>
422
423 * linux-low.c (handle_extended_wait): If the parent is doing
424 step-over, remove the reinsert breakpoints from the forked child.
425
426 2016-06-17 Yao Qi <yao.qi@linaro.org>
427
428 * linux-low.c (unsuspend_all_lwps): Declare.
429 (linux_low_filter_event): If thread exited, call finish_step_over.
430 If step-over is finished, unsuspend other threads.
431
432 2016-06-17 Yao Qi <yao.qi@linaro.org>
433
434 * linux-low.c (linux_resume_one_lwp_throw): Assert
435 has_reinsert_breakpoints returns false.
436 * mem-break.c (delete_disabled_breakpoints): Assert
437 bp type isn't reinsert_breakpoint.
438
439 2016-06-17 Yao Qi <yao.qi@linaro.org>
440
441 * linux-low.c (maybe_hw_step): New function.
442 (linux_resume_one_lwp_throw): Call maybe_hw_step.
443 (finish_step_over): Switch current_thread to lwp temporarily,
444 and assert has_reinsert_breakpoints returns true.
445 (proceed_one_lwp): Call maybe_hw_step.
446 * mem-break.c (has_reinsert_breakpoints): New function.
447 * mem-break.h (has_reinsert_breakpoints): Declare.
448
449 2016-06-02 Jon Turney <jon.turney@dronecode.org.uk>
450
451 * win32-low.c (win32_create_inferior): Add pointer casts for C++.
452
453 2016-05-17 Yao Qi <yao.qi@linaro.org>
454
455 * linux-low.c (linux_stabilize_threads): Call unsuspend_all_lwps
456 instead of find_inferior.
457
458 2016-05-05 Yao Qi <yao.qi@linaro.org>
459
460 * linux-arm-low.c (get_next_pcs_read_memory_unsigned_integer):
461 Initialize res to zero.
462
463 2016-05-05 Yao Qi <yao.qi@linaro.org>
464
465 * linux-arm-low.c (arm_sigreturn_next_pc): Change type of cpsr
466 to uint32_t.
467
468 2016-05-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
469
470 * spu-low.c (fetch_ppc_register): Cast PowerPC-Linux-specific value
471 used as first ptrace argument to PTRACE_TYPE_ARG1 for C++.
472 (fetch_ppc_memory_1, store_ppc_memory_1): Likewise.
473
474 2016-04-28 Par Olsson <par.olsson@windriver.com>
475 Simon Marchi <simon.marchi@ericsson.com>
476
477 * tracepoint.c (write_inferior_int8): New function.
478 (cmd_qtenable_disable): Write enable flag using
479 write_inferior_int8.
480
481 2016-04-25 Yao Qi <yao.qi@linaro.org>
482
483 * linux-low.c (lwp_signal_can_be_delivered): Adjust.
484 (need_step_over_p): Return zero if the LWP has pending signals
485 can be delivered on software single step target.
486
487 2016-04-25 Yao Qi <yao.qi@linaro.org>
488
489 * linux-low.c (reinsert_raw_breakpoint): If bp->inserted is true
490 return instead of error.
491
492 2016-04-22 Yao Qi <yao.qi@linaro.org>
493
494 * linux-aarch32-low.c (arm_store_gregset): Clear CPSR bits 20
495 to 23.
496
497 2016-04-22 Yao Qi <yao.qi@linaro.org>
498
499 * linux-low.c (lwp_signal_can_be_delivered): Don't deliver
500 signal when stepping over breakpoint with software single
501 step.
502
503 2016-04-21 Pedro Alves <palves@redhat.com>
504
505 * linux-s390-low.c (s390_collect_ptrace_register)
506 (s390_supply_ptrace_register, s390_get_hwcap): Use gdb_byte * and
507 add casts.
508 (s390_check_regset): Use void * instead of gdb_byte *.
509
510 2016-04-20 Pedro Alves <palves@redhat.com>
511
512 * configure: Renegerate.
513
514 2016-04-20 Yao Qi <yao.qi@linaro.org>
515
516 * linux-aarch32-low.c: Include "arch/arm-linux.h".
517 (arm_fill_gregset): Use ARM_CPSR_GREGNUM rather than magic
518 number 16.
519 (arm_store_gregset): Likewise.
520
521 2016-04-16 Walfred Tedeschi <walfred.tedeschi@intel.com>
522
523 * Makefile.in (clean): Add removal for i386-avx-mpx.c,
524 i386-avx-mpx-linux.c, amd64-avx-mpx.c and amd64-avx-mpx-linux.c.
525 (i386-avx-mpx.c, i386-avx-mpx-linux.c, amd64-avx-mpx.c)
526 (amd64-avx-mpx-linux.c): New rules.
527 (amd64-avx-mpx-linux-ipa.o, i386-avx-mpx-linux-ipa.o): New rule.
528 * configure.srv (srv_i386_regobj): Add i386-avx-mpx.o.
529 (srv_i386_linux_regobj): Add i386-avx-mpx-linux.o.
530 (srv_amd64_regobj): Add amd64-avx-mpx.o.
531 (srv_amd64_linux_regobj): Add amd64-avx-mpx-linux.o.
532 (srv_i386_xmlfiles): Add i386/i386-avx-mpx.xml.
533 (srv_amd64_xmlfiles): Add i386/amd64-avx-mpx.xml.
534 (srv_i386_linux_xmlfiles): Add i386/i386-avx-mpx-linux.xml.
535 (srv_amd64_linux_xmlfiles): Add i386/amd64-avx-mpx-linux.xml.
536 (ipa_i386_linux_regobj): Add i386-avx-mpx-linux-ipa.o.
537 (ipa_amd64_linux_regobj): Add amd64-avx-mpx-linux-ipa.o.
538 * linux-x86-low.c (x86_linux_read_description): Add case for
539 X86_XSTATE_AVX_MPX_MASK.
540 (x86_get_ipa_tdesc_idx): Add cases for avx_mpx.
541 (initialize_low_arch): Call init_registers_amd64_avx_mpx_linux and
542 init_registers_i386_avx_mpx_linux.
543 * linux-i386-ipa.c (get_ipa_tdesc): Add case for avx_mpx.
544 (initialize_low_tracepoint): Call
545 init_registers_i386_avx_mpx_linux.
546 * linux-amd64-ipa.c (get_ipa_tdesc): Add case for avx_mpx.
547 (initialize_low_tracepoint): Call
548 init_registers_amd64_avx_mpx_linux.
549 * linux-x86-tdesc.h (X86_TDESC_AVX_MPX): New enum value.
550 (init_registers_amd64_avx_mpx_linux, tdesc_amd64_avx_mpx_linux)
551 (init_registers_i386_avx_mpx_linux, tdesc_i386_avx_mpx_linux): New
552 declarations.
553
554 2016-04-18 Pedro Alves <palves@redhat.com>
555
556 * configure: Regenerate.
557
558 2016-04-13 Antoine Tremblay <antoine.tremblay@ericsson.com>
559
560 * linux-aarch64-low.c (aarch64_emit_add): Switch x1 and x0.
561 (aarch64_emit_sub): Likewise.
562
563 2016-04-12 Pedro Alves <palves@redhat.com>
564
565 * utils.c (prepare_to_throw_exception): Delete.
566
567 2016-04-05 Simon Marchi <simon.marchi@ericsson.com>
568
569 * Makefile.in ($(IPA_LIB)): Set SONAME of the IPA lib.
570
571 2016-04-05 Marcin Kościelnicki <koriakin@0x04.net>
572
573 * tracepoint.c (getauxval): Move to #ifdef IN_PROCESS_AGENT.
574
575 2016-04-03 Marcin Kościelnicki <koriakin@0x04.net>
576
577 * linux-aarch64-ipa.c: Add <elf.h> include.
578 * linux-ppc-ipa.c: Add <elf.h> include.
579 * linux-s390-ipa.c: Add <elf.h> include.
580
581 2016-03-31 Marcin Kościelnicki <koriakin@0x04.net>
582
583 * tracepoint.c (gdb_collect_ptr): Remove const qualifier.
584 (get_raw_reg_ptr): Likewise.
585 (get_trace_state_variable_value_ptr): Likewise.
586 (set_trace_state_variable_value_ptr): Likewise.
587 (initialize_tracepoint): Cast alloc_jump_pad_buffer result to
588 char *.
589
590 2016-03-31 Wei-cheng Wang <cole945@gmail.com>
591 Marcin Kościelnicki <koriakin@0x04.net>
592
593 PR/17221
594 * linux-ppc-low.c (emit_insns): New function.
595 (__EMIT_ASM, _EMIT_ASM, EMIT_ASM): New macros.
596 (ppc_emit_prologue): New function.
597 (ppc_emit_epilogue): New function.
598 (ppc_emit_add): New function.
599 (ppc_emit_sub): New function.
600 (ppc_emit_mul): New function.
601 (ppc_emit_lsh): New function.
602 (ppc_emit_rsh_signed): New function.
603 (ppc_emit_rsh_unsigned): New function.
604 (ppc_emit_ext): New function.
605 (ppc_emit_zero_ext): New function.
606 (ppc_emit_log_not): New function.
607 (ppc_emit_bit_and): New function.
608 (ppc_emit_bit_or): New function.
609 (ppc_emit_bit_xor): New function.
610 (ppc_emit_bit_not): New function.
611 (ppc_emit_equal): New function.
612 (ppc_emit_less_signed): New function.
613 (ppc_emit_less_unsigned): New function.
614 (ppc_emit_ref): New function.
615 (ppc_emit_const): New function.
616 (ppc_emit_reg): New function.
617 (ppc_emit_pop): New function.
618 (ppc_emit_stack_flush): New function.
619 (ppc_emit_swap): New function.
620 (ppc_emit_stack_adjust): New function.
621 (ppc_emit_call): New function.
622 (ppc_emit_int_call_1): New function.
623 (ppc_emit_void_call_2): New function.
624 (ppc_emit_if_goto): New function.
625 (ppc_emit_goto): New function.
626 (ppc_emit_eq_goto): New function.
627 (ppc_emit_ne_goto): New function.
628 (ppc_emit_lt_goto): New function.
629 (ppc_emit_le_goto): New function.
630 (ppc_emit_gt_goto): New function.
631 (ppc_emit_ge_goto): New function.
632 (ppc_write_goto_address): New function.
633 (ppc_emit_ops_impl): New static variable.
634 (ppc64v1_emit_prologue): New function.
635 (ppc64v2_emit_prologue): New function.
636 (ppc64_emit_epilogue): New function.
637 (ppc64_emit_add): New function.
638 (ppc64_emit_sub): New function.
639 (ppc64_emit_mul): New function.
640 (ppc64_emit_lsh): New function.
641 (ppc64_emit_rsh_signed): New function.
642 (ppc64_emit_rsh_unsigned): New function.
643 (ppc64_emit_ext): New function.
644 (ppc64_emit_zero_ext): New function.
645 (ppc64_emit_log_not): New function.
646 (ppc64_emit_bit_and): New function.
647 (ppc64_emit_bit_or): New function.
648 (ppc64_emit_bit_xor): New function.
649 (ppc64_emit_bit_not): New function.
650 (ppc64_emit_equal): New function.
651 (ppc64_emit_less_signed): New function.
652 (ppc64_emit_less_unsigned): New function.
653 (ppc64_emit_ref): New function.
654 (ppc64_emit_const): New function.
655 (ppc64v1_emit_reg): New function.
656 (ppc64v2_emit_reg): New function.
657 (ppc64_emit_pop): New function.
658 (ppc64_emit_stack_flush): New function.
659 (ppc64_emit_swap): New function.
660 (ppc64v1_emit_call): New function.
661 (ppc64v2_emit_call): New function.
662 (ppc64v1_emit_int_call_1): New function.
663 (ppc64v2_emit_int_call_1): New function.
664 (ppc64v1_emit_void_call_2): New function.
665 (ppc64v2_emit_void_call_2): New function.
666 (ppc64_emit_if_goto): New function.
667 (ppc64_emit_eq_goto): New function.
668 (ppc64_emit_ne_goto): New function.
669 (ppc64_emit_lt_goto): New function.
670 (ppc64_emit_le_goto): New function.
671 (ppc64_emit_gt_goto): New function.
672 (ppc64_emit_ge_goto): New function.
673 (ppc64v1_emit_ops_impl): New static variable.
674 (ppc64v2_emit_ops_impl): New static variable.
675 (ppc_emit_ops): New function.
676 (linux_low_target): Wire in ppc_emit_ops.
677
678 2016-03-31 Wei-cheng Wang <cole945@gmail.com>
679 Marcin Kościelnicki <koriakin@0x04.net>
680
681 PR/17221
682 * Makefile.in: Add powerpc-*-ipa.o
683 * configure.srv: Add ipa_obj for powerpc*-linux.
684 * linux-ppc-ipa.c: New file.
685 * linux-ppc-low.c: Added linux-ppc-tdesc.h, ax.h, tracepoint.h
686 includes.
687 (PPC_FIELD): New macro.
688 (PPC_SEXT): New macro.
689 (PPC_OP6): New macro.
690 (PPC_BO): New macro.
691 (PPC_LI): New macro.
692 (PPC_BD): New macro.
693 (init_registers_*): Move prototype to linux-ppc-tdesc.h.
694 (tdesc_*): Move declaration to linux-ppc-tdesc.h.
695 (ppc_get_hwcap): Rename to ppc_get_auxv and add type parameter.
696 (ppc_get_thread_area): New function.
697 (is_elfv2_inferior): New function.
698 (gen_ds_form): New function.
699 (GEN_STD): New macro.
700 (GEN_STDU): New macro.
701 (GEN_LD): New macro.
702 (GEN_LDU): New macro.
703 (gen_d_form): New function.
704 (GEN_ADDI): New macro.
705 (GEN_ADDIS): New macro.
706 (GEN_LI): New macro.
707 (GEN_LIS): New macro.
708 (GEN_ORI): New macro.
709 (GEN_ORIS): New macro.
710 (GEN_LWZ): New macro.
711 (GEN_STW): New macro.
712 (GEN_STWU): New macro.
713 (gen_xfx_form): New function.
714 (GEN_MFSPR): New macro.
715 (GEN_MTSPR): New macro.
716 (GEN_MFCR): New macro.
717 (GEN_MTCR): New macro.
718 (GEN_SYNC): New macro.
719 (GEN_LWSYNC): New macro.
720 (gen_x_form): New function.
721 (GEN_OR): New macro.
722 (GEN_MR): New macro.
723 (GEN_LWARX): New macro.
724 (GEN_STWCX): New macro.
725 (GEN_CMPW): New macro.
726 (gen_md_form): New function.
727 (GEN_RLDICL): New macro.
728 (GEN_RLDICR): New macro.
729 (gen_i_form): New function.
730 (GEN_B): New macro.
731 (GEN_BL): New macro.
732 (gen_b_form): New function.
733 (GEN_BNE): New macro.
734 (GEN_LOAD): New macro.
735 (GEN_STORE): New macro.
736 (gen_limm): New function.
737 (gen_atomic_xchg): New function.
738 (gen_call): New function.
739 (ppc_relocate_instruction): New function.
740 (ppc_install_fast_tracepoint_jump_pad): New function.
741 (ppc_get_min_fast_tracepoint_insn_len): New function.
742 (ppc_get_ipa_tdesc_idx): New function.
743 (the_low_target): Wire in the new functions.
744 (initialize_low_arch) [!__powerpc64__]: Don'it initialize 64-bit
745 tdescs.
746 * linux-ppc-tdesc.h: New file.
747
748 2016-03-31 Marcin Kościelnicki <koriakin@0x04.net>
749
750 * linux-aarch64-ipa.c: Add <sys/mman.h> and <sys/auxv.h> includes.
751 (alloc_jump_pad_buffer): New function.
752 * linux-amd64-ipa.c: Add <sys/mman.h> include.
753 (alloc_jump_pad_buffer): New function.
754 * linux-i386-ipa.c (alloc_jump_pad_buffer): New function.
755 * linux-s390-ipa.c: Add <sys/mman.h> and <sys/auxv.h> includes.
756 (alloc_jump_pad_buffer): New function.
757 * tracepoint.c (getauxval) [!HAVE_GETAUXVAL]: New function.
758 (initialize_tracepoint): Delegate to alloc_jump_pad_buffer.
759 * tracepoint.h (alloc_jump_pad_buffer): New prototype.
760 (getauxval) [!HAVE_GETAUXVAL]: New prototype.
761
762 2016-03-30 Marcin Kościelnicki <koriakin@0x04.net>
763
764 * linux-aarch64-ipa.c: Rename gdb_agent_get_raw_reg to get_raw_reg.
765 * linux-amd64-ipa.c: Likewise.
766 * linux-i386-ipa.c: Likewise.
767 * linux-s390-ipa.c: Likewise.
768 * tracepoint.c: IPA-export gdb_collect_ptr instead of gdb_collect,
769 ditto for get_raw_reg_ptr, get_trace_state_variable_value_ptr,
770 set_trace_state_variable_value_ptr.
771 (struct ipa_sym_addresses): Likewise.
772 (symbol_list): Likewise.
773 (install_fast_tracepoint): Dereference gdb_collect_ptr instead of
774 accessing gdb_collect directly.
775 (gdb_collect_ptr_type): New typedef.
776 (get_raw_reg_ptr_type): New typedef.
777 (get_trace_state_variable_value_ptr_type): New typedef.
778 (set_trace_state_variable_value_ptr_type): New typedef.
779 (gdb_collect_ptr): New global.
780 (get_raw_reg_ptr): New global.
781 (get_trace_state_variable_value_ptr): New global.
782 (set_trace_state_variable_value_ptr): New global.
783 (get_raw_reg_func_addr): Dereference get_raw_reg_ptr instead of
784 accessing get_raw_reg directly.
785 (get_get_tsv_func_addr): Likewise for
786 get_trace_state_variable_value_ptr.
787 (get_set_tsv_func_addr): Likewise for
788 set_trace_state_variable_value_ptr.
789 * tracepoint.h: Rename gdb_agent_get_raw_reg to get_raw_reg.
790
791 2016-03-30 Simon Marchi <simon.marchi@ericsson.com>
792
793 * tracepoint.c (cmd_qtenable_disable): Remove whitespace.
794
795 2016-03-30 Marcin Kościelnicki <koriakin@0x04.net>
796
797 * remote-utils.c (look_up_one_symbol): Remove own_buf, handle 'v'
798 packets.
799 (relocate_instruction): Remove own_buf.
800 * server.c (own_buf): Make global.
801 (handle_v_requests): Make global.
802 * server.h (own_buf): New declaration.
803 (handle_v_requests): New prototype.
804
805 2016-03-29 Marcin Kościelnicki <koriakin@0x04.net>
806
807 PR 18377
808 * linux-s390-low.c (add_insns): New function.
809 (s390_emit_prologue): New function.
810 (s390_emit_epilogue): New function.
811 (s390_emit_add): New function.
812 (s390_emit_sub): New function.
813 (s390_emit_mul): New function.
814 (s390_emit_lsh): New function.
815 (s390_emit_rsh_signed): New function.
816 (s390_emit_rsh_unsigned): New function.
817 (s390_emit_ext): New function.
818 (s390_emit_log_not): New function.
819 (s390_emit_bit_and): New function.
820 (s390_emit_bit_or): New function.
821 (s390_emit_bit_xor): New function.
822 (s390_emit_bit_not): New function.
823 (s390_emit_equal): New function.
824 (s390_emit_less_signed): New function.
825 (s390_emit_less_unsigned): New function.
826 (s390_emit_ref): New function.
827 (s390_emit_if_goto): New function.
828 (s390_emit_goto): New function.
829 (s390_write_goto_address): New function.
830 (s390_emit_litpool): New function.
831 (s390_emit_const): New function.
832 (s390_emit_call): New function.
833 (s390_emit_reg): New function.
834 (s390_emit_pop): New function.
835 (s390_emit_stack_flush): New function.
836 (s390_emit_zero_ext): New function.
837 (s390_emit_swap): New function.
838 (s390_emit_stack_adjust): New function.
839 (s390_emit_set_r2): New function.
840 (s390_emit_int_call_1): New function.
841 (s390_emit_void_call_2): New function.
842 (s390_emit_eq_goto): New function.
843 (s390_emit_ne_goto): New function.
844 (s390_emit_lt_goto): New function.
845 (s390_emit_le_goto): New function.
846 (s390_emit_gt_goto): New function.
847 (s390_emit_ge_goto): New function.
848 (s390x_emit_prologue): New function.
849 (s390x_emit_epilogue): New function.
850 (s390x_emit_add): New function.
851 (s390x_emit_sub): New function.
852 (s390x_emit_mul): New function.
853 (s390x_emit_lsh): New function.
854 (s390x_emit_rsh_signed): New function.
855 (s390x_emit_rsh_unsigned): New function.
856 (s390x_emit_ext): New function.
857 (s390x_emit_log_not): New function.
858 (s390x_emit_bit_and): New function.
859 (s390x_emit_bit_or): New function.
860 (s390x_emit_bit_xor): New function.
861 (s390x_emit_bit_not): New function.
862 (s390x_emit_equal): New function.
863 (s390x_emit_less_signed): New function.
864 (s390x_emit_less_unsigned): New function.
865 (s390x_emit_ref): New function.
866 (s390x_emit_if_goto): New function.
867 (s390x_emit_const): New function.
868 (s390x_emit_call): New function.
869 (s390x_emit_reg): New function.
870 (s390x_emit_pop): New function.
871 (s390x_emit_stack_flush): New function.
872 (s390x_emit_zero_ext): New function.
873 (s390x_emit_swap): New function.
874 (s390x_emit_stack_adjust): New function.
875 (s390x_emit_int_call_1): New function.
876 (s390x_emit_void_call_2): New function.
877 (s390x_emit_eq_goto): New function.
878 (s390x_emit_ne_goto): New function.
879 (s390x_emit_lt_goto): New function.
880 (s390x_emit_le_goto): New function.
881 (s390x_emit_gt_goto): New function.
882 (s390x_emit_ge_goto): New function.
883 (s390_emit_ops): New function.
884 (struct linux_target_ops): Fill in emit_ops hook.
885
886 2016-03-29 Marcin Kościelnicki <koriakin@0x04.net>
887
888 PR 18377
889 * Makefile.in: Add s390 IPA files.
890 * configure.srv: Build IPA for s390.
891 * linux-s390-ipa.c: New file.
892 * linux-s390-low.c: New includes - inttypes.h and linux-s390-tdesc.h.
893 (init_registers_s390_linux32): Move declaration to linux-s390-tdesc.h.
894 (tdesc_s390_linux32): Likewise.
895 (init_registers_s390_linux32v1): Likewise.
896 (tdesc_s390_linux32v1): Likewise.
897 (init_registers_s390_linux32v2): Likewise.
898 (tdesc_s390_linux32v2): Likewise.
899 (init_registers_s390_linux64): Likewise.
900 (tdesc_s390_linux64): Likewise.
901 (init_registers_s390_linux64v1): Likewise.
902 (tdesc_s390_linux64v1): Likewise.
903 (init_registers_s390_linux64v2): Likewise.
904 (tdesc_s390_linux64v2): Likewise.
905 (init_registers_s390_te_linux64): Likewise.
906 (tdesc_s390_te_linux64): Likewise.
907 (init_registers_s390_vx_linux64): Likewise.
908 (tdesc_s390_vx_linux64): Likewise.
909 (init_registers_s390_tevx_linux64): Likewise.
910 (tdesc_s390_tevx_linux64): Likewise.
911 (init_registers_s390x_linux64): Likewise.
912 (tdesc_s390x_linux64): Likewise.
913 (init_registers_s390x_linux64v1): Likewise.
914 (tdesc_s390x_linux64v1): Likewise.
915 (init_registers_s390x_linux64v2): Likewise.
916 (tdesc_s390x_linux64v2): Likewise.
917 (init_registers_s390x_te_linux64): Likewise.
918 (tdesc_s390x_te_linux64): Likewise.
919 (init_registers_s390x_vx_linux64): Likewise.
920 (tdesc_s390x_vx_linux64): Likewise.
921 (init_registers_s390x_tevx_linux64): Likewise.
922 (tdesc_s390x_tevx_linux64): Likewise.
923 (have_hwcap_s390_vx): New static variable.
924 (s390_arch_setup): Fill have_hwcap_s390_vx.
925 (s390_get_thread_area): New function.
926 (s390_ft_entry_gpr_esa): New const.
927 (s390_ft_entry_gpr_zarch): New const.
928 (s390_ft_entry_misc): New const.
929 (s390_ft_entry_fr): New const.
930 (s390_ft_entry_vr): New const.
931 (s390_ft_main_31): New const.
932 (s390_ft_main_64): New const.
933 (s390_ft_exit_fr): New const.
934 (s390_ft_exit_vr): New const.
935 (s390_ft_exit_misc): New const.
936 (s390_ft_exit_gpr_esa): New const.
937 (s390_ft_exit_gpr_zarch): New const.
938 (append_insns): New function.
939 (s390_relocate_instruction): New function.
940 (s390_install_fast_tracepoint_jump_pad): New function.
941 (s390_get_min_fast_tracepoint_insn_len): New function.
942 (s390_get_ipa_tdesc_idx): New function.
943 (struct linux_target_ops): Wire in the above functions.
944 (initialize_low_arch) [!__s390x__]: Don't initialize s390x tdescs.
945 * linux-s390-tdesc.h: New file.
946
947 2016-03-29 Marcin Kościelnicki <koriakin@0x04.net>
948
949 * linux-s390-low.c (s390_supports_tracepoints): New function.
950 (struct linux_target_ops): Fill supports_tracepoints hook.
951
952 2016-03-18 Yao Qi <yao.qi@linaro.org>
953
954 * linux-low.c (lwp_signal_can_be_delivered): New function.
955 (linux_resume_one_lwp_throw): Use lwp_signal_can_be_delivered.
956
957 2016-03-18 Yao Qi <yao.qi@linaro.org>
958
959 * linux-low.c (linux_resume_one_lwp_throw): Set 'signal' to
960 0 if signal is enqueued. Remove 'signal' from one debugging
961 message. Move one debugging message to some lines below.
962 Remove code setting 'signal' to 0.
963
964 2016-03-18 Yao Qi <yao.qi@linaro.org>
965
966 * linux-low.c (linux_low_filter_event): Remove redundant
967 WIFSTOPPED check together with linux_wstatus_maybe_breakpoint.
968
969 2016-03-09 Marcin Kościelnicki <koriakin@0x04.net>
970
971 * linux-ppc-low.c (ppc_supports_tracepoints): New function.
972 (struct linux_target_ops): Wire in the above.
973
974 2016-03-03 Yao Qi <yao.qi@linaro.org>
975
976 * linux-low.c: Update comments to start_step_over.
977
978 2016-03-03 Yao Qi <yao.qi@linaro.org>
979
980 PR server/19736
981 * linux-low.c (handle_extended_wait): Set child suspended
982 if event_lwp->bp_reinsert isn't zero.
983
984 2016-03-02 Yao Qi <yao.qi@linaro.org>
985
986 * linux-low.c (linux_resume_one_lwp_throw): Replace code with
987 enqueue_pending_signal.
988
989 2016-03-02 Marcin Kościelnicki <koriakin@0x04.net>
990
991 * tracepoint.c (cmd_qtstart): Only set ipa_tdesc_idx if agent
992 is actually loaded.
993
994 2016-02-25 Marcin Kościelnicki <koriakin@0x04.net>
995
996 * linux-s390-low.c (s390_num_regs_3264): Define on 31-bit too.
997 (s390_regmap_3264) [!__s390x__]: New global.
998 (s390_collect_ptrace_register): Skip map entries containing -1.
999 (s390_supply_ptrace_register): Ditto.
1000 (s390_fill_gprs_high): New function.
1001 (s390_store_gprs_high): New function.
1002 (s390_regsets): Add NT_S390_HIGH_GPRS.
1003 (s390_get_hwcap): Enable on 31-bit.
1004 (have_hwcap_s390_high_gprs): Enable on 31-bit.
1005 (s390_arch_setup): Enable detection of high GPRs, TDB, VX on 31-bit.
1006 Detect NT_S390_HIGH_GPRS.
1007 (s390_usrregs_info_3264): Enable on 31-bit.
1008 (s390_regs_info): Enable regs_info_3264 on 31-bit.
1009 (initialize_low_arch): Initialize s390_regsets_info_3264 on 31-bit.
1010
1011 2016-02-25 Marcin Kościelnicki <koriakin@0x04.net>
1012
1013 PR gdb/13808
1014 * Makefile.in: Add i386-*-linux-ipa.o and amd64-*-linux-ipa.o.
1015 * configure.srv: Ditto.
1016 * linux-aarch64-ipa.c (get_ipa_tdesc): New function.
1017 (initialize_low_tracepoint): Remove ipa_tdesc assignment.
1018 * linux-amd64-ipa.c: Add "linux-x86-tdesc.h" include.
1019 (init_registers_amd64_linux): Remove prototype.
1020 (tdesc_amd64_linux): Remove declaration.
1021 (get_ipa_tdesc): New function.
1022 (initialize_low_tracepoint): Remove ipa_tdesc assignment,
1023 initialize remaining tdescs.
1024 * linux-i386-ipa.c: Add "linux-x86-tdesc.h" include.
1025 (init_registers_i386_linux): Remove prototype.
1026 (tdesc_i386_linux): Remove declaration.
1027 (get_ipa_tdesc): New function.
1028 (initialize_low_tracepoint): Remove ipa_tdesc assignment,
1029 initialize remaining tdescs.
1030 * linux-low.c (linux_get_ipa_tdesc_idx): New function.
1031 (linux_target_ops): wire in linux_get_ipa_tdesc_idx.
1032 * linux-low.h (struct linux_target_ops): Add get_ipa_tdesc_idx.
1033 * linux-x86-low.c: Move tdesc declarations to linux-x86-tdesc.h.
1034 (x86_get_ipa_tdesc_idx): New function.
1035 (the_low_target): Wire in x86_get_ipa_tdesc_idx.
1036 * linux-x86-tdesc.h: New file.
1037 * target.h (struct target_ops): Add get_ipa_tdesc_idx.
1038 (target_get_ipa_tdesc_idx): New macro.
1039 * tracepoint.c (ipa_tdesc_idx): New macro.
1040 (struct ipa_sym_addresses): Add addr_ipa_tdesc_idx.
1041 (symbol_list): Add ipa_tdesc_idx.
1042 (cmd_qtstart): Write ipa_tdesc_idx in the target.
1043 (ipa_tdesc): Remove.
1044 (ipa_tdesc_idx): New variable.
1045 (get_context_regcache): Use get_ipa_tdesc.
1046 (gdb_collect): Ditto.
1047 (gdb_probe): Ditto.
1048 * tracepoint.h (get_ipa_tdesc): New prototype.
1049 (ipa_tdesc): Remove.
1050
1051 2016-02-24 Pedro Alves <palves@redhat.com>
1052
1053 * linux-low.c (check_stopped_by_breakpoint): Rename to ...
1054 (save_stop_reason): ... this. Use GDB_ARCH_IS_TRAP_HWBKPT and
1055 handle ambiguous GDB_ARCH_IS_TRAP_BRKPT / GDB_ARCH_IS_TRAP_HWBKPT.
1056 Factor out common code between the USE_SIGTRAP_SIGINFO and
1057 !USE_SIGTRAP_SIGINFO blocks.
1058 (linux_low_filter_event): Call save_stop_reason instead of
1059 check_stopped_by_breakpoint and check_stopped_by_watchpoint.
1060 Update comments.
1061 (linux_wait_1): Update comments.
1062
1063 2016-02-24 Wei-cheng Wang <cole945@gmail.com>
1064
1065 * linux-ppc-low.c (ppc_supports_z_point_type): New function:
1066 (ppc_insert_point, ppc_remove_point): Insert/remove z-packet breakpoints.
1067 (ppc64_emit_ops_vector): Add target ops - ppc_supports_z_point_type,
1068 ppc_insert_point, ppc_remove_point.
1069
1070 2016-02-17 Marcin Kościelnicki <koriakin@0x04.net>
1071
1072 * linux-s390-low.c (s390_supports_z_point_type): New function.
1073 (struct linux_target_ops): Wire s390_supports_z_point_type in.
1074
1075 2016-02-16 Yao Qi <yao.qi@linaro.org>
1076
1077 * linux-arm-low.c (get_next_pcs_syscall_next_pc): Remove argument
1078 PC. Get pc from regcache_read_pc.
1079
1080 2016-02-12 Yao Qi <yao.qi@linaro.org>
1081
1082 * linux-aarch64-low.c (aarch64_get_pc): Call linux_get_pc_64bit
1083 or linux_get_pc_32bit.
1084 (aarch64_set_pc): Call linux_set_pc_64bit or linux_set_pc_32bit.
1085
1086 2016-02-12 Yao Qi <yao.qi@linaro.org>
1087
1088 * linux-arm-low.c (get_next_pcs_ops): Initialize it with
1089 arm_linux_get_next_pcs_fixup.
1090
1091 2016-02-12 Marcin Kościelnicki <koriakin@0x04.net>
1092
1093 * tracepoint.c (x_tracepoint_action_download): Change
1094 write_inferior_data_ptr to write_inferior_data_pointer.
1095 (cmd_qtstart): Likewise.
1096 (write_inferior_data_ptr): Remove.
1097 (download_agent_expr): Change write_inferior_data_ptr to
1098 write_inferior_data_pointer.
1099 (download_tracepoint_1): Likewise.
1100 (download_tracepoint): Likewise.
1101 (download_trace_state_variables): Likewise.
1102
1103 2016-02-11 Wei-cheng Wang <cole945@gmail.com>
1104 Marcin Kościelnicki <koriakin@0x04.net>
1105
1106 * tracepoint.c (struct tracepoint_action_ops): Remove.
1107 (struct tracepoint_action): Remove ops.
1108 (m_tracepoint_action_download, r_tracepoint_action_download)
1109 (x_tracepoint_action_download, l_tracepoint_action_download): Adjust
1110 size and offset accordingly.
1111 (m_tracepoint_action_ops, r_tracepoint_action_ops)
1112 (x_tracepoint_action_ops, l_tracepoint_action_ops): Remove.
1113 (tracepoint_action_send, tracepoint_action_download): New functions.
1114 Helpers for trace action handlers.
1115 (add_tracepoint_action): Remove setup actions ops.
1116 (download_tracepoint_1, tracepoint_send_agent): Call helper functions.
1117
1118 2016-02-10 Yao Qi <yao.qi@linaro.org>
1119
1120 * regcache.c (regcache_raw_read_unsigned): Clear *VAL.
1121
1122 2016-02-09 Simon Marchi <simon.marchi@ericsson.com>
1123
1124 * configure.ac: Use AC_CONFIG_FILES instead of passing arguments
1125 to AC_OUTPUT.
1126 * configure: Regenerate.
1127
1128 2016-02-09 Simon Marchi <simon.marchi@ericsson.com>
1129
1130 * linux-aarch64-low.c (aarch64_linux_siginfo_fixup): Change
1131 void * to gdb_byte *.
1132 * linux-low.c (siginfo_fixup): Likewise.
1133 (linux_xfer_siginfo): Likewise.
1134 * linux-low.h (struct linux_target_ops) <siginfo_fixup>:
1135 Likewise.
1136 * linux-x86-low.c (x86_siginfo_fixup): Likewise.
1137
1138 2016-02-02 Walfred Tedeschi <walfred.tedeschi@intel.com>
1139
1140 * configure.srv (x86_64-*-linux*): Add amd64-linux-siginfo.o
1141 to srv_tgtobj.
1142 (i[34567]86-*-linux*): Add amd64-linux-siginfo.o
1143 to srv_tgtobj.
1144 * linux-x86-low.c [__x86_64__]: Include
1145 "nat/amd64-linux-siginfo.h".
1146 (compat_siginfo_from_siginfo, siginfo_from_compat_siginfo)
1147 (compat_x32_siginfo_from_siginfo, siginfo_from_compat_x32_siginfo)
1148 (compat_timeval, compat_sigval, compat_x32_clock, cpt_si_pid)
1149 (cpt_si_uid, cpt_si_timerid, cpt_si_overrun, cpt_si_status)
1150 (cpt_si_utime, cpt_si_stime, cpt_si_ptr, cpt_si_addr, cpt_si_band)
1151 (cpt_si_fd, si_timerid, si_overrun): Move from
1152 nat/amd64-linux-siginfo.c.
1153 * Makefile.in (amd64-linux-siginfo.o:): New rule.
1154
1155 2016-01-28 Simon Marchi <simon.marchi@ericsson.com>
1156
1157 * server.c (skip_to_semicolon): Remove.
1158 (process_point_options): Use strchrnul instead of
1159 skip_to_semicolon.
1160
1161 2016-01-26 Yao Qi <yao.qi@linaro.org>
1162
1163 * linux-arm-low.c (arm_gdbserver_get_next_pcs): Remove argument pc.
1164 * linux-low.c (install_software_single_step_breakpoints): Don't
1165 call regcache_read_pc.
1166 * linux-low.h (struct linux_target_ops) <get_next_pcs>: Remove
1167 argument pc.
1168
1169 2016-01-26 Yao Qi <yao.qi@linaro.org>
1170
1171 * linux-low.c (install_software_single_step_breakpoints): Call
1172 regcache_read_pc instead of get_pc.
1173
1174 2016-01-26 Yao Qi <yao.qi@linaro.org>
1175
1176 * remote-utils.c (remote_close) [!USE_WIN32API]: Ignore SIGIO.
1177 (unblock_async_io): Rename to ...
1178 (block_unblock_async_io): ... it. New function.
1179 (enable_async_io): Don't install SIGIO handler. Unblock it
1180 instead.
1181 (disable_async_io): Don't ignore SIGIO. Block it instead.
1182 (initialize_async_io): Install SIGIO handler. Don't call
1183 unblock_async_io.
1184
1185 2016-01-26 Yao Qi <yao.qi@linaro.org>
1186
1187 * remote-utils.c (getpkt): If the buffer isn't empty, and the
1188 first character is '\003', call *the_target->request_interrupt.
1189
1190 2016-01-25 Yao Qi <yao.qi@linaro.org>
1191
1192 * remote-utils.c (new_thread_notify): Remove.
1193 (dead_thread_notify): Likewise.
1194 * remote-utils.h (new_thread_notify): Remove declaration.
1195 (dead_thread_notify): Likewise.
1196
1197 2016-01-23 Marcin Kościelnicki <koriakin@0x04.net>
1198
1199 * gdb.trace/pending.exp: Fix expected message on continue.
1200
1201 2016-01-22 Marcin Kościelnicki <koriakin@0x04.net>
1202
1203 * tracepoint.c (write_inferior_data_ptr): Cast to uintptr_t, so that
1204 it works properly on big-endian machines where sizeof (CORE_ADDR)
1205 != sizeof (void *).
1206
1207 2016-01-21 Pedro Alves <palves@redhat.com>
1208
1209 * Makefile.in (COMPILER_CFLAGS, CXXFLAGS): New.
1210 (INTERNAL_CFLAGS_BASE): Use COMPILER_CFLAGS instead of CFLAGS.
1211 * configure: Regenerate.
1212
1213 2016-01-21 Yao Qi <yao.qi@linaro.org>
1214
1215 * linux-arm-low.c (arm_sigreturn_next_pc): Add parameter
1216 is_thumb and set it according to CPSR saved on the stack.
1217 (get_next_pcs_syscall_next_pc): Pass is_thumb to
1218 arm_sigreturn_next_pc.
1219
1220 2016-01-18 Yao Qi <yao.qi@linaro.org>
1221
1222 * linux-low.c (linux_set_pc_64bit): New function.
1223 (linux_get_pc_64bit): New function.
1224 * linux-low.h (linux_set_pc_64bit, linux_get_pc_64bit):
1225 Declare.
1226 * linux-sparc-low.c (debug_threads): Remove declaration.
1227 (sparc_get_pc): Remove.
1228 (the_low_target): Use linux_get_pc_64bit instead of
1229 sparc_get_pc.
1230 * linux-tile-low.c (tile_get_pc, tile_set_pc): Remove.
1231 (the_low_target): Use linux_get_pc_64bit and
1232 linux_set_pc_64bit.
1233
1234 2016-01-18 Yao Qi <yao.qi@linaro.org>
1235
1236 * linux-arm-low.c (debug_threads): Remove declaration.
1237 (arm_get_pc, arm_set_pc): Remove.
1238 (the_low_target): Use linux_get_pc_32bit and
1239 linux_set_pc_32bit.
1240 * linux-bfin-low.c (bfin_get_pc, bfin_set_pc): Remove.
1241 (the_low_target): Use linux_get_pc_32bit and
1242 linux_set_pc_32bit.
1243 * linux-cris-low.c (debug_threads): Remove declaration.
1244 (cris_get_pc, cris_set_pc,): Remove.
1245 (the_low_target): Use linux_get_pc_32bit and
1246 linux_set_pc_32bit.
1247 * linux-crisv32-low.c (debug_threads): Remove declaration.
1248 (cris_get_pc, cris_set_pc): Remove.
1249 (the_low_target): Use linux_get_pc_32bit and
1250 linux_set_pc_32bit.
1251 * linux-low.c: Include inttypes.h.
1252 (linux_get_pc_32bit, linux_set_pc_32bit): New functions.
1253 * linux-low.h (linux_get_pc_32bit, linux_set_pc_32bit): Declare.
1254 * linux-m32r-low.c (m32r_get_pc, m32r_set_pc): Remove.
1255 (the_low_target): Use linux_get_pc_32bit and
1256 linux_set_pc_32bit.
1257 * linux-m68k-low.c (m68k_get_pc, m68k_set_pc): Remove.
1258 (the_low_target): Use linux_get_pc_32bit and
1259 linux_set_pc_32bit.
1260 * linux-nios2-low.c (nios2_get_pc, nios2_set_pc): Remove.
1261 (the_low_target): Use linux_get_pc_32bit and
1262 linux_set_pc_32bit.
1263 * linux-sh-low.c (sh_get_pc, sh_set_pc): Remove.
1264 (the_low_target): Use linux_get_pc_32bit and
1265 linux_set_pc_32bit.
1266 * linux-xtensa-low.c (xtensa_get_pc, xtensa_set_pc): Remove.
1267 (the_low_target): Use linux_get_pc_32bit and
1268 linux_set_pc_32bit.
1269
1270 2016-01-18 Gary Benson <gbenson@redhat.com>
1271
1272 * configure.ac (AC_FUNC_FORK): New check.
1273 * config.in: Regenerate.
1274 * configure: Likewise.
1275
1276 2016-01-14 Yao Qi <yao.qi@linaro.org>
1277
1278 * linux-aarch32-low.c (thumb2_breakpoint): Make it static.
1279 * linux-aarch32-low.h (thumb2_breakpoint): Remove declaration.
1280 * linux-arm-low.c (arm_gdbserver_get_next_pcs): Pass 1 to
1281 arm_get_next_pcs_ctor.
1282
1283 2016-01-12 Josh Stone <jistone@redhat.com>
1284 Philippe Waroquiers <philippe.waroquiers@skynet.be>
1285
1286 * inferiors.h: Include "gdb_vecs.h".
1287 (struct process_info): Add syscalls_to_catch.
1288 * inferiors.c (remove_process): Free syscalls_to_catch.
1289 * remote-utils.c (prepare_resume_reply): Report syscall_entry and
1290 syscall_return stops.
1291 * server.h (UNKNOWN_SYSCALL, ANY_SYSCALL): Define.
1292 * server.c (handle_general_set): Handle QCatchSyscalls.
1293 (handle_query): Report support for QCatchSyscalls.
1294 * target.h (struct target_ops): Add supports_catch_syscall.
1295 (target_supports_catch_syscall): New macro.
1296 * linux-low.h (struct linux_target_ops): Add get_syscall_trapinfo.
1297 (struct lwp_info): Add syscall_state.
1298 * linux-low.c (handle_extended_wait): Mark syscall_state as an entry.
1299 Maintain syscall_state and syscalls_to_catch across exec.
1300 (get_syscall_trapinfo): New function, proxy to the_low_target.
1301 (linux_low_ptrace_options): Enable PTRACE_O_TRACESYSGOOD.
1302 (linux_low_filter_event): Toggle syscall_state entry/return for
1303 syscall traps, and set it ignored for all others.
1304 (gdb_catching_syscalls_p): New function.
1305 (gdb_catch_this_syscall_p): New function.
1306 (linux_wait_1): Handle SYSCALL_SIGTRAP.
1307 (linux_resume_one_lwp_throw): Add PTRACE_SYSCALL possibility.
1308 (linux_supports_catch_syscall): New function.
1309 (linux_target_ops): Install it.
1310 * linux-x86-low.c (x86_get_syscall_trapinfo): New function.
1311 (the_low_target): Install it.
1312
1313 2016-01-12 Mike Frysinger <vapier@gentoo.org>
1314
1315 * acinclude.m4: Include new ../warning.m4 file.
1316 * configure: Regenerated.
1317 * configure.ac: Replace all warning logic with AM_GDB_WARNINGS.
1318
1319 2016-01-12 Mike Frysinger <vapier@gentoo.org>
1320
1321 * ax.c (is_goto_target): Mark static.
1322 * linux-low.c (register_addr): Likewise.
1323 (linux_fetch_registers, linux_store_registers): Likewise.
1324 * mem-break.c (any_persistent_commands): Fix old prototype.
1325 (add_commands_to_breakpoint): Mark static.
1326 * regcache.c (find_register_by_name): Delete unused func.
1327 * remote-utils.c (hex_or_minus_one): Mark static.
1328 * server.c (monitor_show_help): Mark static.
1329 (handle_query, handle_v_cont, handle_v_attach, handle_v_kill,
1330 handle_v_requests): Likewise.
1331
1332 2016-01-12 Pedro Alves <palves@redhat.com>
1333
1334 Remove use of the registered trademark symbol throughout.
1335
1336 2016-01-08 Yao Qi <yao.qi@linaro.org>
1337
1338 * remote-utils.c (getpkt): If c is '\003', call target hook
1339 request_interrupt.
1340
1341 2016-01-06 Yao Qi <yao.qi@linaro.org>
1342
1343 * linux-aarch32-low.h (arm_abi_breakpoint): Move to
1344 linux-aarch32-low.c.
1345 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
1346 (arm_breakpoint_len, thumb_breakpoint_len): Likewise.
1347 (thumb2_breakpoint, thumb2_breakpoint_len): Likewise.
1348 (thumb2_breakpoint): Declare.
1349 * linux-aarch32-low.c (arm_abi_breakpoint): Moved from
1350 linux-aarch32-low.h.
1351 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
1352 (arm_breakpoint_len, thumb_breakpoint_len): Likewise.
1353 (thumb2_breakpoint, thumb2_breakpoint_len): Likewise.
1354
1355 2016-01-01 Joel Brobecker <brobecker@adacore.com>
1356
1357 * gdbreplay.c (gdbreplay_version): Change copyright year in
1358 version message.
1359 * server.c (gdbserver_version): Likewise.
1360
1361 2015-12-28 Patrick Palka <patrick@parcs.ath.cx>
1362
1363 * server.c (crc32_table): Delete.
1364 (crc32): Use libiberty's xcrc32 function.
1365
1366 2015-12-22 Joel Brobecker <brobecker@adacore.com>
1367
1368 * lynx-low.c (lynx_delete_thread_callback): New function.
1369 (lynx_mourn): Properly delete our process and all of its
1370 threads. Remove call to clear_inferiors.
1371
1372 2015-12-22 Joel Brobecker <brobecker@adacore.com>
1373
1374 * target.c (thread_search_callback): Add check that
1375 the thread_stopped target callback is not NULL before
1376 calling it.
1377
1378 2015-12-21 Yao Qi <yao.qi@linaro.org>
1379
1380 * linux-aarch32-low.h [__aarch64__]: Use arm_abi_breakpoint
1381 arm breakpoint.
1382
1383 2015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
1384
1385 * server.c (handle_query): Call target_supports_software_single_step.
1386
1387 2015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
1388
1389 * linux-low.c (single_step): New function.
1390 (linux_resume_one_lwp_throw): Call single_step.
1391 (start_step_over): Likewise.
1392
1393 2015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
1394
1395 * Makefile.in (SFILES): Append arch/arm-linux.c,
1396 arch/arm-get-next-pcs.c.
1397 (arm-linux.o): New rule.
1398 (arm-get-next-pcs.o): New rule.
1399 * configure.srv (arm*-*-linux*): Add arm-get-next-pcs.o,
1400 arm-linux.o.
1401 * linux-aarch32-low.c (arm_abi_breakpoint): Remove macro. Moved
1402 to linux-aarch32-low.c.
1403 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
1404 (arm_breakpoint_len, thumb_breakpoint): Likewise.
1405 (thumb_breakpoint_len, thumb2_breakpoint): Likewise.
1406 (thumb2_breakpoint_len): Likewise.
1407 (arm_is_thumb_mode): Make non-static.
1408 * linux-aarch32-low.h (arm_abi_breakpoint): New macro. Moved
1409 from linux-aarch32-low.c.
1410 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
1411 (arm_breakpoint_len, thumb_breakpoint): Likewise.
1412 (thumb_breakpoint_len, thumb2_breakpoint): Likewise.
1413 (thumb2_breakpoint_len): Likewise.
1414 (arm_is_thumb_mode): New declaration.
1415 * linux-arm-low.c: Include arch/arm-linux.h
1416 aarch/arm-get-next-pcs.h, sys/syscall.h.
1417 (get_next_pcs_ops): New struct.
1418 (get_next_pcs_addr_bits_remove): New function.
1419 (get_next_pcs_is_thumb): New function.
1420 (get_next_pcs_read_memory_unsigned_integer): Likewise.
1421 (arm_sigreturn_next_pc): Likewise.
1422 (get_next_pcs_syscall_next_pc): Likewise.
1423 (arm_gdbserver_get_next_pcs): Likewise.
1424 (struct linux_target_ops) <arm_gdbserver_get_next_pcs>:
1425 Initialize.
1426 * linux-low.h: Move CORE_ADDR vector definition to gdb_vecs.h.
1427 * server.h: Include gdb_vecs.h.
1428
1429 2015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
1430
1431 * Makefile.in (SFILES): Append common/common-regcache.c.
1432 (OBS): Append common-regcache.o.
1433 (common-regcache.o): New rule.
1434 * regcache.c (init_register_cache): Initialize cache to
1435 REG_UNAVAILABLE.
1436 (regcache_raw_read_unsigned): New function.
1437 * regcache.h (REG_UNAVAILABLE, REG_VALID): Replaced by shared
1438 register_status enum.
1439
1440 2015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
1441
1442 * linux-aarch64-low.c (the_low_targets): Rename
1443 breakpoint_reinsert_addr to get_next_pcs.
1444 * linux-arm-low.c (the_low_targets): Likewise.
1445 * linux-bfin-low.c (the_low_targets): Likewise.
1446 * linux-cris-low.c (the_low_targets): Likewise.
1447 * linux-crisv32-low.c (the_low_targets): Likewise.
1448 * linux-low.c (can_software_single_step): Likewise.
1449 (install_software_single_step_breakpoints): New function.
1450 (start_step_over): Use install_software_single_step_breakpoints.
1451 * linux-low.h: New CORE_ADDR vector.
1452 (struct linux_target_ops) Rename breakpoint_reinsert_addr to
1453 get_next_pcs.
1454 * linux-mips-low.c (the_low_targets): Likewise.
1455 * linux-nios2-low.c (the_low_targets): Likewise.
1456 * linux-sparc-low.c (the_low_targets): Likewise.
1457
1458 2015-12-17 Pedro Alves <palves@redhat.com>
1459
1460 * linux-low.c (linux_kill_one_lwp): Remove references to
1461 LinuxThreads.
1462 (kill_lwp): Remove HAVE_TKILL_SYSCALL check. No longer fall back
1463 to 'kill'.
1464 (linux_init_signals): Delete.
1465 (initialize_low): Adjust.
1466 * thread-db.c (thread_db_init): Remove LinuxThreads reference.
1467
1468 2015-12-16 Pedro Alves <palves@redhat.com>
1469
1470 * configure.ac (compiler warning flags): When testing a
1471 -Wno-foo option, check whether -Wfoo works instead.
1472 * configure: Regenerate.
1473
1474 2015-12-11 Don Breazeal <donb@codesourcery.com>
1475
1476 * server.c (process_serial_event): Don't exit from gdbserver
1477 in remote mode if there are still active inferiors.
1478
1479 2015-12-11 Yao Qi <yao.qi@linaro.org>
1480
1481 * linux-aarch64-low.c (aarch64_breakpoint_at): Call
1482 arm_breakpoint_at if the process is 32-bit.
1483
1484 2015-12-11 Yao Qi <yao.qi@linaro.org>
1485
1486 * linux-aarch32-low.c [__aarch64__]: Use arm_abi_breakpoint
1487 arm breakpoint.
1488
1489 2015-12-07 Yao Qi <yao.qi@linaro.org>
1490
1491 * configure.srv: Append arm.o to srv_tgtobj for
1492 aarch64*-*-linux* target.
1493 * linux-aarch32-low.c (arm_abi_breakpoint): New macro. Moved
1494 from linux-arm-low.c.
1495 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
1496 (arm_breakpoint_len, thumb_breakpoint): Likewise.
1497 (thumb_breakpoint_len, thumb2_breakpoint): Likewise.
1498 (thumb2_breakpoint_len): Likewise.
1499 (arm_is_thumb_mode, arm_breakpoint_at): Likewise.
1500 (arm_breakpoint_kinds): Likewise.
1501 (arm_breakpoint_kind_from_pc): Likewise.
1502 (arm_sw_breakpoint_from_kind): Likewise.
1503 (arm_breakpoint_kind_from_current_state): Likewise.
1504 * linux-aarch32-low.h (arm_breakpoint_kind_from_pc): Declare.
1505 (arm_sw_breakpoint_from_kind): Declare.
1506 (arm_breakpoint_kind_from_current_state): Declare.
1507 (arm_breakpoint_at): Declare.
1508 * linux-aarch64-low.c (aarch64_sw_breakpoint_from_kind): Call
1509 arm_sw_breakpoint_from_kind if process is 32-bit.
1510 (aarch64_breakpoint_kind_from_pc): New function.
1511 (aarch64_breakpoint_kind_from_current_state): New function.
1512 (the_low_target): Initialize fields breakpoint_kind_from_pc
1513 and breakpoint_kind_from_current_state.
1514 * linux-arm-low.c (arm_breakpoint_kinds): Move to
1515 linux-aarch32-low.c.
1516 (arm_abi_breakpoint, arm_eabi_breakpoint): Likewise.
1517 (arm_breakpoint, arm_breakpoint_len): Likewise.
1518 (thumb_breakpoint, thumb_breakpoint_len): Likewise.
1519 (thumb2_breakpoint, thumb2_breakpoint_len): Likewise.
1520 (arm_is_thumb_mode): Likewise.
1521 (arm_breakpoint_at): Likewise.
1522 (arm_breakpoint_kind_from_pc): Likewise.
1523 (arm_sw_breakpoint_from_kind): Likewise.
1524 (arm_breakpoint_kind_from_current_state): Likewise.
1525
1526 Revert:
1527 2015-08-04 Yao Qi <yao.qi@linaro.org>
1528
1529 * linux-aarch64-low.c (aarch64_supports_z_point_type): Return
1530 0 for Z_PACKET_SW_BP if it may be used in multi-arch debugging.
1531 * server.c (extended_protocol): Remove "static".
1532 * server.h (extended_protocol): Declare it.
1533
1534 2015-12-04 Josh Stone <jistone@redhat.com>
1535
1536 * target.h (struct target_ops) <arch_setup>: Rename to ...
1537 (struct target_ops) <post_create_inferior>: ... this.
1538 (target_arch_setup): Rename to ...
1539 (target_post_create_inferior): ... this, calling post_create_inferior.
1540 * server.c (start_inferior): Update target_arch_setup calls to
1541 target_post_create_inferior.
1542 * linux-low.c (linux_low_ptrace_options): Forward declare.
1543 (linux_arch_setup): Update its comment for general use.
1544 (linux_post_create_inferior): New, run arch_setup and setup ptrace.
1545 (struct linux_target_ops): Use linux_post_create_inferior.
1546 * lynx-low.c (struct lynx_target_ops): Update arch_setup stub comment
1547 to post_create_inferior.
1548 * nto-low.c (struct nto_target_ops): Likewise.
1549 * spu-low.c (struct spu_target_ops): Likewise.
1550 * win32-low.c (struct win32_target_ops): Likewise.
1551
1552 2015-12-03 Antoine Tremblay <antoine.tremblay@ericsson.com>
1553
1554 * linux-arm-low.c: Remove duplicate arch/arm.h include.
1555
1556 2015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
1557
1558 * linux-arm-low.c (arm_reinsert_addr): Remove function.
1559 (struct linux_target_ops <breakpoint_reinsert_addr>: Set to NULL.
1560 * linux-cris-low.c (cris_reinsert_addr> Remove function.
1561 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
1562 * linux-crisv32-low.c (cris_reinsert_addr): Remove function.
1563 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
1564 * linux-mips-low.c (mips_reinsert_addr): Remove function.
1565 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
1566 * linux-nios2-low.c (nios2_reinsert_addr): Remove function.
1567 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
1568 * linux-sparc-low.c (sparc_reinsert_addr): Remove function.
1569 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
1570
1571 2015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
1572
1573 * linux-low.c (linux_look_up_symbols): Don't call
1574 linux_supports_traceclone.
1575 * linux-low.h (thread_db_init): Remove use_events argument.
1576 * thread-db.c (thread_db_use_event): Remove global variable.
1577 (struct thread_db) <td_thr_event_enable_p>: Remove field.
1578 (struct thread_db) <td_create_bp>: Remove field.
1579 (thread_db_create_event): Remove function.
1580 (thread_db_enable_reporting): Likewise.
1581 (find_one_thread): Don't check for thread_db_use_events.
1582 (attach_thread): Likewise.
1583 (thread_db_load_search): Remove td_thr_event_enable_p initialization.
1584 (try_thread_db_load_1): Don't check for thread_db_use_events.
1585 (thread_db_init): Remove use_events argument and thread events
1586 handling.
1587 (remove_thread_event_breakpoints): Remove function.
1588 (thread_db_detach): Remove call to remove_thred_event_breakpoints.
1589
1590 2015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
1591
1592 * linux-aarch64-low.c (aarch64_supports_hardware_single_step):
1593 New function.
1594 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
1595 * linux-arm-low.c (arm_supports_hardware_single_step): New function.
1596 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
1597 * linux-bfin-low.c (bfin_supports_hardware_single_step): New function.
1598 (struct linux_target_ops) <bfin_supports_hardware_single_step>:
1599 Initialize.
1600 * linux-crisv32-low.c (cris_supports_hardware_single_step):
1601 New function.
1602 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
1603 * linux-low.c (can_hardware_single_step): Use
1604 supports_hardware_single_step.
1605 (can_software_single_step): New function.
1606 (start_step_over): Call can_software_single_step.
1607 (linux_supports_hardware_single_step): New function.
1608 (struct target_ops) <supports_software_single_step>: Initialize.
1609 * linux-low.h (struct linux_target_ops)
1610 <supports_hardware_single_step>: Initialize.
1611 * linux-m32r-low.c (m32r_supports_hardware_single_step): New function.
1612 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
1613 * linux-ppc-low.c (ppc_supports_hardware_single_step): New function.
1614 (struct linux_target_ops) <supports_hardware_single_step> Initialize.
1615 * linux-s390-low.c (s390_supports_hardware_single_step): New function.
1616 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
1617 * linux-sh-low.c (sh_supports_hardware_single_step): New function.
1618 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
1619 * linux-tic6x-low.c (tic6x_supports_hardware_single_step): New function.
1620 (struct linux_target_ops) <tic6x_supports_hardware_single_step>:
1621 Initialize.
1622 * linux-tile-low.c (tile_supports_hardware_single_step): New function.
1623 (struct linux_target_ops) <tile_supports_hardware_single_step>:
1624 Initialize.
1625 * linux-x86-low.c (x86_supports_hardware_single_step) New function.
1626 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
1627 * linux-xtensa-low.c (xtensa_supports_hardware_single_step):
1628 New function.
1629 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
1630 * target.h (struct target_ops): <supports_software_single_step>:
1631 New field.
1632 (target_supports_software_single_step): New macro.
1633
1634 2015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
1635
1636 * linux-low.c (linux_wait_1): Fix pc advance condition.
1637 * mem-break.c (reinsert_breakpoint_inserted_here): New function.
1638 * mem-break.h (reinsert_breakpoint_inserted_here): New declaration.
1639
1640 2015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
1641
1642 * linux-arm-low.c (arm_is_thumb_mode): New function.
1643 (arm_breakpoint_at): Use arm_is_thumb_mode.
1644 (arm_breakpoint_kind_from_current_state): New function.
1645 (struct linux_target_ops) <breakpoint_kind_from_current_state>:
1646 Initialize.
1647 * linux-low.c (linux_wait_1): Call breakpoint_kind_from_current_state.
1648 (linux_breakpoint_kind_from_current_state): New function.
1649 (struct target_ops <breakpoint_kind_from_current_state>: Initialize.
1650 * linux-low.h (struct linux_target_ops)
1651 <breakpoint_kind_from_current_state>: New field.
1652 * target.h (struct target_ops): Likewise.
1653 (target_breakpoint_kind_from_current_state): New macro.
1654
1655 2015-11-30 Pedro Alves <palves@redhat.com>
1656
1657 * linux-low.c (linux_resume): Wake up the event loop before
1658 returning.
1659
1660 2015-11-30 Pedro Alves <palves@redhat.com>
1661
1662 * mem-break.c (check_gdb_bp_preconditions): Remove current_thread
1663 check.
1664 (set_gdb_breakpoint): If prepare_to_access_memory fails, set *ERR
1665 to -1.
1666 * target.c (struct thread_search): New structure.
1667 (thread_search_callback): New function.
1668 (prev_general_thread): New global.
1669 (prepare_to_access_memory, done_accessing_memory): New functions.
1670 * target.h (prepare_to_access_memory, done_accessing_memory):
1671 Replace macros with function declarations.
1672
1673 2015-11-30 Pedro Alves <palves@redhat.com>
1674
1675 PR 14618
1676 * linux-low.c (linux_wait_1): If the last resumed thread is gone,
1677 report TARGET_WAITKIND_NO_RESUMED.
1678 * remote-utils.c (prepare_resume_reply): Handle
1679 TARGET_WAITKIND_NO_RESUMED.
1680 * server.c (report_no_resumed): New global.
1681 (handle_query) <qSupported>: Handle "no-resumed+". Report
1682 "no-resumed+" support.
1683 (resume): When the target reports TARGET_WAITKIND_NO_RESUMED, only
1684 return error if the client doesn't support no-resumed events.
1685 (push_stop_notification): New function.
1686 (handle_target_event): Use it. Report TARGET_WAITKIND_NO_RESUMED
1687 events if the client supports them.
1688
1689 2015-11-30 Pedro Alves <palves@redhat.com>
1690
1691 * linux-low.c (thread_still_has_status_pending_p): Don't check
1692 vCont;t here.
1693 (lwp_resumed): New function.
1694 (status_pending_p_callback): Return early if the LWP is not
1695 supposed to be resumed.
1696
1697 2015-11-30 Pedro Alves <palves@redhat.com>
1698
1699 * linux-low.c (handle_extended_wait): Assert that the LWP's
1700 waitstatus is TARGET_WAITKIND_IGNORE. If GDB wants to hear about
1701 thread create events, leave the new child's status pending.
1702 (linux_low_filter_event): If GDB wants to hear about thread exit
1703 events, leave the LWP marked dead and don't delete it.
1704 (linux_wait_for_event_filtered): Don't check for thread exit.
1705 (filter_exit_event): New function.
1706 (linux_wait_1): Use it, when returning an exit event.
1707 (linux_resume_one_lwp_throw): Assert that the LWP's
1708 waitstatus is TARGET_WAITKIND_IGNORE.
1709 * remote-utils.c (prepare_resume_reply): Handle
1710 TARGET_WAITKIND_THREAD_CREATED and TARGET_WAITKIND_THREAD_EXITED.
1711 * server.c (report_thread_events): New global.
1712 (handle_general_set): Handle QThreadEvents.
1713 (handle_query) <qSupported>: Handle and report QThreadEvents+;
1714 (handle_target_event): Handle TARGET_WAITKIND_THREAD_CREATED and
1715 TARGET_WAITKIND_THREAD_EXITED.
1716 * server.h (report_thread_events): Declare.
1717
1718 2015-11-30 Pedro Alves <palves@redhat.com>
1719
1720 * linux-low.c (resume_stopped_resumed_lwps): Don't check whether
1721 the thread's last_resume_kind was resume_stop.
1722
1723 2015-11-30 Pedro Alves <palves@redhat.com>
1724
1725 * linux-low.c (linux_attach): In non-stop mode, wait for one stop
1726 before returning.
1727
1728 2015-11-30 Pedro Alves <palves@redhat.com>
1729
1730 * server.c (handle_v_requests): Handle vCtrlC.
1731
1732 2015-11-30 Pedro Alves <palves@redhat.com>
1733
1734 * gdbthread.h (find_any_thread_of_pid): Declare.
1735 * inferiors.c (thread_of_pid, find_any_thread_of_pid): New
1736 functions.
1737 * server.c (handle_query): If current_thread is NULL, look for
1738 another thread of the selected process.
1739
1740 2015-11-26 Daniel Colascione <dancol@dancol.org>
1741 Simon Marchi <simon.marchi@ericsson.com>
1742
1743 * linux-low.c (linux_target_ops): Use linux_proc_tid_get_name.
1744 * server.c (handle_qxfer_threads_worker): Refactor to include thread
1745 name in reply.
1746 * target.h (struct target_ops) <thread_name>: New field.
1747 (target_thread_name): New macro.
1748
1749 2015-11-23 Joel Brobecker <brobecker@adacore.com>
1750
1751 * regcache.h (regcache_invalidate_pid): Add declaration.
1752 * regcache.c (regcache_invalidate_pid): New function, extracted
1753 from regcache_invalidate.
1754 (regcache_invalidate): Reimplement using regcache_invalidate_pid.
1755 Add trivial documentation comment.
1756 * lynx-low.c: Use regcache_invalidate_pid instead of
1757 regcache_invalidate.
1758
1759 2015-11-23 Joel Brobecker <brobecker@adacore.com>
1760
1761 * configure.ac: Do not call AC_CHECK_TYPES for Elf32_auxv_t
1762 and Elf64_auxv_t if the target is Android.
1763
1764 2015-11-22 Doug Evans <xdje42@gmail.com>
1765
1766 * target.h: #include <sys/types.h>.
1767
1768 2015-11-19 Pedro Alves <palves@redhat.com>
1769
1770 * linux-low.c (linux_process_qsupported): Change prototype.
1771 Adjust.
1772 * linux-low.h (struct linux_target_ops) <process_qsupported>:
1773 Change prototype.
1774 * linux-x86-low.c (x86_linux_process_qsupported): Change prototype
1775 and adjust to loop over all features.
1776 * server.c (handle_query) <qSupported>: Adjust to call
1777 target_process_qsupported once, passing it a vector of unprocessed
1778 features.
1779 * target.h (struct target_ops) <process_qsupported>: Change
1780 prototype.
1781 (target_process_qsupported): Adjust.
1782
1783 2015-11-19 Pedro Alves <palves@redhat.com>
1784
1785 * configure.ac (ERROR_ON_WARNING): Don't check whether in C++
1786 mode.
1787 * configure: Regenerate.
1788
1789 2015-11-19 Pedro Alves <palves@redhat.com>
1790
1791 * configure: Regenerate.
1792
1793 2015-11-19 Yao Qi <yao.qi@linaro.org>
1794
1795 * linux-aarch64-low.c (emit_data_processing_reg): Change opcode
1796 type to uint32_t.
1797
1798 2015-11-19 Yao Qi <yao.qi@linaro.org>
1799
1800 * linux-aarch64-low.c (enum aarch64_operand_type): New.
1801 (struct aarch64_operand): Move enum out.
1802
1803 2015-11-19 Yao Qi <yao.qi@linaro.org>
1804
1805 * linux-aarch64-low.c (aarch64_fill_fpregset): Cast buf to
1806 struct user_fpsimd_state *.
1807 (aarch64_store_fpregset): Likewise.
1808
1809 2015-11-19 Yao Qi <yao.qi@linaro.org>
1810
1811 * linux-aarch64-low.c (aarch64_fill_gregset): Cast buf to
1812 struct user_pt_regs *.
1813 (aarch64_store_gregset): Likewise.
1814
1815 2015-11-18 Pedro Alves <palves@redhat.com>
1816
1817 * Makefile.in (all_object_files): Add $IPA_OBJS.
1818
1819 2015-11-17 Pedro Alves <palves@redhat.com>
1820
1821 * win32-low.c (win32_resume): Use gdb_signal_from_host,
1822 GDB_SIGNAL_0 and gdb_signal_to_string.
1823
1824 2015-11-17 Pedro Alves <palves@redhat.com>
1825
1826 * win32-low.c (handle_output_debug_string): Remove parameter.
1827 (win32_kill): Remove our_status local and adjust call to
1828 handle_output_debug_string.
1829 (get_child_debug_event): Adjust call to
1830 handle_output_debug_string.
1831
1832 2015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
1833
1834 * linux-mips-low.c (mips_fill_gregset): Add cast.
1835 (mips_store_gregset): Likewise.
1836 (mips_fill_fpregset): Likewise.
1837 (mips_store_fpregset): Likewise.
1838
1839 2015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
1840
1841 * linux-mips-low.c (mips_add_watchpoint): Rename private to
1842 priv.
1843
1844 2015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
1845
1846 * linux-mips-low.c (mips_linux_new_thread): Change type of
1847 watch_type to enum target_hw_bp_type.
1848
1849 2015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
1850
1851 * linux-arm-low.c (raw_bkpt_type_to_arm_hwbp_type):
1852 Change return type to arm_hwbp_type.
1853
1854 2015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
1855
1856 * linux-aarch32-low.c (arm_fill_gregset): Add cast.
1857 (arm_store_gregset): Likewise.
1858 * linux-arm-low.c (arm_get_hwcap): Likewise.
1859 (arm_read_description): Likewise.
1860
1861 2015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
1862
1863 * linux-aarch32-low.c (aarch32_regsets): Use NULL_REGSET.
1864
1865 2015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
1866
1867 * linux-ppc-low.c (ppc_get_hwcap): Add cast.
1868 (ppc_fill_vsxregset): Likewise.
1869 (ppc_store_vsxregset): Likewise.
1870 (ppc_fill_vrregset): Likewise.
1871 (ppc_store_vrregset): Likewise.
1872 (ppc_fill_evrregset): Likewise.
1873 (ppc_store_evrregset): Likewise.
1874
1875 2015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
1876
1877 * linux-ppc-low.c (ppc_usrregs_info): Remove
1878 forward-declaration.
1879 (ppc_arch_setup): Move lower in file.
1880
1881 2015-10-30 Simon Marchi <simon.marchi@ericsson.com>
1882
1883 * proc-service.c (ps_pdread): Change CORE_ADDR cast to uintptr_t.
1884 (ps_pdwrite): Likewise.
1885
1886 2015-10-29 Henrik Wallin <henrik.wallin@windriver.com>
1887
1888 * linux-arm-low.c (arm_new_thread): Move pointer dereference
1889 to after assert checks.
1890
1891 2015-10-29 Simon Marchi <simon.marchi@ericsson.com>
1892
1893 * proc-service.c (ps_pdread): Add/adjust casts.
1894 (ps_pdwrite): Add/adjust casts.
1895
1896 2015-10-29 Simon Marchi <simon.marchi@polymtl.ca>
1897
1898 * server.c (handle_search_memory_1): Cast return value of
1899 memmem.
1900
1901 2015-10-29 Simon Marchi <simon.marchi@polymtl.ca>
1902
1903 * server.c (write_qxfer_response): Change type of data to
1904 gdb_byte *.
1905
1906 2015-10-29 Pedro Alves <palves@redhat.com>
1907
1908 * mem-break.c (Z_packet_to_bkpt_type): Add cast.
1909
1910 2015-10-29 Pedro Alves <palves@redhat.com>
1911
1912 * tracepoint.c (clear_installed_tracepoints): Add casts.
1913
1914 2015-10-29 Pedro Alves <palves@redhat.com>
1915
1916 * server.c (handle_v_cont, process_serial_event): Add enum
1917 gdb_signal casts to signal parsing code.
1918
1919 2015-10-29 Pedro Alves <palves@redhat.com>
1920
1921 * linux-low.h (NULL_REGSET): Define.
1922 * linux-aarch64-low.c (aarch64_regsets): Use NULL_REGSET.
1923 * linux-arm-low.c (arm_regsets): Likewise.
1924 * linux-crisv32-low.c (cris_regsets): Likewise.
1925 * linux-m68k-low.c (m68k_regsets): Likewise.
1926 * linux-mips-low.c (mips_regsets): Likewise.
1927 * linux-nios2-low.c (nios2_regsets): Likewise.
1928 * linux-ppc-low.c (ppc_regsets): Likewise.
1929 * linux-s390-low.c (s390_regsets): Likewise.
1930 * linux-sh-low.c (sh_regsets): Likewise.
1931 * linux-sparc-low.c (sparc_regsets): Likewise.
1932 * linux-tic6x-low.c (tic6x_regsets): Likewise.
1933 * linux-tile-low.c (tile_regsets): Likewise.
1934 * linux-x86-low.c (x86_regsets): Likewise.
1935 * linux-xtensa-low.c (xtensa_regsets): Likewise.
1936
1937 2015-10-29 Pedro Alves <palves@redhat.com>
1938
1939 * linux-low.h (NULL_REGSET): Define.
1940 * linux-aarch64-low.c (aarch64_regsets): Use NULL_REGSET.
1941 * linux-arm-low.c (arm_regsets): Likewise.
1942 * linux-crisv32-low.c (cris_regsets): Likewise.
1943 * linux-m68k-low.c (m68k_regsets): Likewise.
1944 * linux-mips-low.c (mips_regsets): Likewise.
1945 * linux-nios2-low.c (nios2_regsets): Likewise.
1946 * linux-ppc-low.c (ppc_regsets): Likewise.
1947 * linux-s390-low.c (s390_regsets): Likewise.
1948 * linux-sh-low.c (sh_regsets): Likewise.
1949 * linux-sparc-low.c (sparc_regsets): Likewise.
1950 * linux-tic6x-low.c (tic6x_regsets): Likewise.
1951 * linux-tile-low.c (tile_regsets): Likewise.
1952 * linux-x86-low.c (x86_regsets): Likewise.
1953 * linux-xtensa-low.c (xtensa_regsets): Likewise.
1954
1955 2015-10-26 Doug Evans <dje@google.com>
1956
1957 * linux-low.c (__SIGRTMIN): Move to nat/linux-nat.h.
1958
1959 2015-10-26 Doug Evans <dje@google.com>
1960
1961 * linux-low.c (W_STOPCODE): Moved to common/gdb_wait.h.
1962
1963 2015-10-26 Doug Evans <dje@google.com>
1964
1965 * thread-db.c (find_one_thread): Cast ti.ti_tid to unsigned long
1966 for debug_printf.
1967 (attach_thread, find_new_threads_callback): Ditto.
1968
1969 2015-10-23 Antoine Tremblay <antoine.tremblay@ericsson.com>
1970
1971 * mem-break.h (set_breakpoint_data): Remove.
1972
1973 2015-10-23 Antoine Tremblay <antoine.tremblay@ericsson.com>
1974
1975 * nto-low.c (nto_sw_breakpoint_from_kind): New function.
1976 (struct target_ops) <sw_breakpoint_from_kind>: Initialize.
1977 (initialize_low): Remove set_breakpoint_data call.
1978 * spu-low.c (spu_sw_breakpoint_from_kind): New function.
1979 (struct target_ops) <sw_breakpoint_from_kind>: Iniitalize.
1980 (initialize_low): Remove set_breakpoint_data call.
1981 * win32-low.c (win32_sw_breakpoint_from_kind): New function.
1982 (struct target_ops) <sw_breakpoint_from_kind>: Initialize.
1983 (initialize_low): Remove set_breakpoint_data call.
1984
1985 2015-10-23 Antoine Tremblay <antoine.tremblay@ericsson.com>
1986
1987 * linux-low.c (default_breakpoint_kind_from_pc): Move to target.c.
1988 * mem-break.c (set_breakpoint_at): Use target_breakpoint_kind_from_pc.
1989 * target.c (default_breakpoint_kind_from_pc): Moved from linux-low.c
1990 * target.h (target_breakpoint_kind_from_pc): New macro.
1991
1992 2015-10-22 Antoine Tremblay <antoine.tremblay@ericsson.com>
1993
1994 * linux-low.c (default_breakpoint_kind_from_pc): New function.
1995 (linux_breakpoint_kind_from_pc): Use default_breakpoint_kind_from_pc for
1996 the default breakpoint kind.
1997
1998 2015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
1999
2000 * linux-arm-low.c (arm_supports_z_point_type): Add software
2001 breakpoint support.
2002
2003 2015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
2004
2005 * linux-arm-low.c: Refactor breakpoint definitions.
2006 (arm_breakpoint_at): Adjust for arm_abi_breakpoint.
2007 (arm_sw_breakpoint_from_kind): Adjust for arm_breakpoint.
2008
2009 2015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
2010
2011 * Makefile.in: Add arm.c/o.
2012 * configure.srv: Likewise.
2013 * linux-arm-low.c (arm_breakpoint_kinds): New enum.
2014 (arm_breakpoint_kind_from_pc): New function.
2015 (arm_sw_breakpoint_from_kind): Return proper kind.
2016 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize.
2017
2018 2015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
2019
2020 * linux-low.c (initialize_low): Ajdust for breakpoint global variables
2021 removal.
2022 * mem-break.c : Remove breakpoint_data/breakpoint_len global variables.
2023 (struct raw_breakpoint) <size>: Remove.
2024 (struct raw_breakpoint) <kind>: Add.
2025 (bp_size): New function.
2026 (bp_opcode): Likewise.
2027 (find_raw_breakpoint_at): Adjust for kind.
2028 (insert_memory_breakpoint): Adjust for kind call bp_size,bp_opcode.
2029 (remove_memory_breakpoint): Adjust for kind call bp_size.
2030 (set_raw_breakpoint_at): Adjust for kind.
2031 (set_breakpoint): Likewise.
2032 (set_breakpoint_at): Call breakpoint_kind_from_pc.
2033 (delete_raw_breakpoint): Adjust for kind.
2034 (delete_breakpoint): Likewise.
2035 (find_gdb_breakpoint): Likewise.
2036 (set_gdb_breakpoint_1): Likewise.
2037 (set_gdb_breakpoint): Likewise.
2038 (delete_gdb_breakpoint_1): Likewise.
2039 (delete_gdb_breakpoint): Likewise.
2040 (uninsert_raw_breakpoint): Likewise.
2041 (reinsert_raw_breakpoint): Likewise.
2042 (set_breakpoint_data): Remove.
2043 (validate_inserted_breakpoint): Adjust for kind call bp_size,bp_opcode.
2044 (check_mem_read): Adjust for kind call bp_size.
2045 (check_mem_write): Adjust for kind call bp_size,bp_opcode.
2046 (clone_one_breakpoint): Adjust for kind.
2047 * mem-break.h (set_gdb_breakpoint): Likewise.
2048 (delete_gdb_breakpoint): Likewise.
2049 * server.c (process_serial_event): Likewise.
2050
2051 2015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
2052
2053 * linux-aarch64-low.c (aarch64_sw_breakpoint_from_kind): New function.
2054 (struct linux_target_ops) <breakpoint>: Remove.
2055 (struct linux_target_ops) <breakpoint_len>: Remove.
2056 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
2057 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
2058 * linux-arm-low.c (arm_breakpoint_kind_from_pc): New function.
2059 (arm_sw_breakpoint_from_kind): New function.
2060 * linux-bfin-low.c (bfin_sw_breakpoint_from_kind): New function.
2061 (struct linux_target_ops) <breakpoint>: Remove.
2062 (struct linux_target_ops) <breakpoint_len>: Remove.
2063 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
2064 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
2065 * linux-cris-low.c (cris_sw_breakpoint_from_kind): New function.
2066 (struct linux_target_ops) <breakpoint>: Remove.
2067 (struct linux_target_ops) <breakpoint_len>: Remove.
2068 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
2069 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
2070 * linux-crisv32-low.c (cris_sw_breakpoint_from_kind): New function.
2071 (struct linux_target_ops) <breakpoint>: Remove.
2072 (struct linux_target_ops) <breakpoint_len>: Remove.
2073 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
2074 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
2075 * linux-low.c (linux_wait_1): Call breakpoint_kind_from_pc
2076 and sw_breakpoint_from_kind to increment the pc.
2077 (linux_breakpoint_kind_from_pc): New function.
2078 (linux_sw_breakpoint_from_kind): New function.
2079 (struct target_ops) <sw_breakpoint_from_kind>: Initialize field.
2080 (initialize_low): Call breakpoint_kind_from_pc and
2081 sw_breakpoint_from_kind to replace breakpoint_data/len.
2082 * linux-low.h (struct linux_target_ops) <breakpoint_kind_from_pc>:
2083 New field.
2084 (struct linux_target_ops) <sw_breakpoint_from_kind>: Likewise.
2085 * linux-m32r-low.c (m32r_sw_breakpoint_from_kind): New function.
2086 (struct linux_target_ops) <breakpoint>: Remove.
2087 (struct linux_target_ops) <breakpoint_len>: Remove.
2088 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
2089 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
2090 * linux-m68k-low.c (m68k_sw_breakpoint_from_kind): New function.
2091 (struct linux_target_ops) <breakpoint>: Remove.
2092 (struct linux_target_ops) <breakpoint_len>: Remove.
2093 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
2094 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
2095 * linux-mips-low.c (mips_sw_breakpoint_from_kind): New function.
2096 (struct linux_target_ops) <breakpoint>: Remove.
2097 (struct linux_target_ops) <breakpoint_len>: Remove.
2098 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
2099 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
2100 * linux-nios2-low.c (nios2_sw_breakpoint_from_kind): New function.
2101 (struct linux_target_ops) <breakpoint>: Remove.
2102 (struct linux_target_ops) <breakpoint_len>: Remove.
2103 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
2104 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
2105 * linux-ppc-low.c (ppc_sw_breakpoint_from_kind): New function.
2106 (struct linux_target_ops) <breakpoint>: Remove.
2107 (struct linux_target_ops) <breakpoint_len>: Remove.
2108 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
2109 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
2110 * linux-s390-low.c (s390_sw_breakpoint_from_kind): New function.
2111 (struct linux_target_ops) <breakpoint>: Remove.
2112 (struct linux_target_ops) <breakpoint_len>: Remove.
2113 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
2114 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
2115 * linux-sh-low.c (sh_sw_breakpoint_from_kind): New function.
2116 (struct linux_target_ops) <breakpoint>: Remove.
2117 (struct linux_target_ops) <breakpoint_len>: Remove.
2118 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
2119 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
2120 * linux-sparc-low.c (sparc_sw_breakpoint_from_kind): New function.
2121 (struct linux_target_ops) <breakpoint>: Remove.
2122 (struct linux_target_ops) <breakpoint_len>: Remove.
2123 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
2124 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
2125 * linux-tic6x-low.c (tic6x_sw_breakpoint_from_kind): New function.
2126 (struct linux_target_ops) <breakpoint>: Remove.
2127 (struct linux_target_ops) <breakpoint_len>: Remove.
2128 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
2129 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
2130 * linux-tile-low.c (tile_sw_breakpoint_from_kind): New function.
2131 * linux-x86-low.c (x86_sw_breakpoint_from_kind): New function.
2132 (struct linux_target_ops) <breakpoint>: Remove.
2133 (struct linux_target_ops) <breakpoint_len>: Remove.
2134 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
2135 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
2136 * linux-xtensa-low.c (xtensa_sw_breakpoint_from_kind) New function.
2137 (struct linux_target_ops) <breakpoint>: Remove.
2138 (struct linux_target_ops) <breakpoint_len>: Remove.
2139 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
2140 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
2141
2142 2015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
2143
2144 * linux-cris-low.c (cris_get_pc): Remove void arg.
2145
2146 2015-10-16 Aleksandar Ristovski <aristovski@qnx.com>
2147
2148 * gdbserver/nto-low.c (nto_insert_point, nto_remove_point): Fix
2149 variable name.
2150
2151 2015-10-16 Aleksandar Ristovski <aristovski@qnx.com>
2152
2153 * inferiors.c (thread_pid_matches_callback): New function.
2154 (find_thread_process): New function.
2155 (remove_thread): Reset current_thread.
2156 (remove_process): Assert threads have been removed first.
2157
2158 2015-10-15 Yao Qi <yao.qi@linaro.org>
2159
2160 * linux-aarch64-low.c (aarch64_insert_point): Set len to 2
2161 if it is 3.
2162 (aarch64_remove_point): Likewise.
2163 * regcache.c (regcache_register_size): New function.
2164
2165 2015-10-12 Yao Qi <yao.qi@linaro.org>
2166
2167 * linux-aarch64-low.c: Update all callers as emit_load_store
2168 is renamed to aarch64_emit_load_store.
2169
2170 2015-10-12 Yao Qi <yao.qi@linaro.org>
2171
2172 * linux-aarch64-low.c: Update all callers of function renaming
2173 from emit_insn to aarch64_emit_insn.
2174
2175 2015-10-12 Yao Qi <yao.qi@linaro.org>
2176
2177 * linux-aarch64-low.c (enum aarch64_opcodes): Move to
2178 arch/aarch64-insn.h.
2179 (struct aarch64_memory_operand): Likewise.
2180 (ENCODE): Likewise.
2181 (emit_insn): Move to arch/aarch64-insn.c.
2182 (emit_b, emit_bcond, emit_cb, emit_tb): Remove.
2183 (emit_load_store): Move to arch/aarch64-insn.c.
2184 (emit_ldr, emit_ldrb, emit_ldrsw, emit_nop): Remove.
2185 (can_encode_int32): Remove.
2186
2187 2015-10-12 Yao Qi <yao.qi@linaro.org>
2188
2189 * linux-aarch64-low.c (extract_signed_bitfield): Remove.
2190 (aarch64_decode_ldr_literal): Move to gdb/arch/aarch64-insn.c.
2191 (aarch64_relocate_instruction): Likewise.
2192 (struct aarch64_insn_data): Move to gdb/arch/aarch64-insn.h.
2193 (struct aarch64_insn_visitor): Likewise.
2194
2195 2015-10-12 Yao Qi <yao.qi@linaro.org>
2196
2197 * linux-aarch64-low.c (struct aarch64_insn_data): New.
2198 (struct aarch64_insn_visitor): New.
2199 (struct aarch64_insn_relocation_data): New.
2200 (aarch64_ftrace_insn_reloc_b): New function.
2201 (aarch64_ftrace_insn_reloc_b_cond): Likewise.
2202 (aarch64_ftrace_insn_reloc_cb): Likewise.
2203 (aarch64_ftrace_insn_reloc_tb): Likewise.
2204 (aarch64_ftrace_insn_reloc_adr): Likewise.
2205 (aarch64_ftrace_insn_reloc_ldr_literal): Likewise.
2206 (aarch64_ftrace_insn_reloc_others): Likewise.
2207 (visitor): New.
2208 (aarch64_relocate_instruction): Use visitor.
2209
2210 2015-10-12 Yao Qi <yao.qi@linaro.org>
2211
2212 * linux-aarch64-low.c (aarch64_relocate_instruction): Return
2213 int. Add argument buf.
2214 (aarch64_install_fast_tracepoint_jump_pad): Pass buf to
2215 aarch64_relocate_instruction.
2216
2217 2015-10-12 Yao Qi <yao.qi@linaro.org>
2218
2219 * linux-aarch64-low.c (aarch64_relocate_instruction): Add
2220 argument insn. Remove local variable insn. Don't call
2221 target_read_uint32.
2222 (aarch64_install_fast_tracepoint_jump_pad): Call
2223 target_read_uint32.
2224
2225 2015-09-30 Yao Qi <yao.qi@linaro.org>
2226
2227 * linux-aarch64-low.c (emit_movk): Shorten a long line.
2228 (emit_load_store_pair): Likewise.
2229
2230 2015-09-25 Simon Marchi <simon.marchi@ericsson.com>
2231
2232 * dll.c (match_dll): Add cast(s).
2233 (unloaded_dll): Likewise.
2234 * linux-low.c (second_thread_of_pid_p): Likewise.
2235 (delete_lwp_callback): Likewise.
2236 (count_events_callback): Likewise.
2237 (select_event_lwp_callback): Likewise.
2238 (linux_set_resume_request): Likewise.
2239 * server.c (accumulate_file_name_length): Likewise.
2240 (emit_dll_description): Likewise.
2241 (handle_qxfer_threads_worker): Likewise.
2242 (visit_actioned_threads): Likewise.
2243 * thread-db.c (any_thread_of): Likewise.
2244 * tracepoint.c (same_process_p): Likewise.
2245 (match_blocktype): Likewise.
2246 (build_traceframe_info_xml): Likewise.
2247
2248 2015-09-25 Simon Marchi <simon.marchi@ericsson.com>
2249
2250 * ax.c (gdb_parse_agent_expr): Add cast to allocation result
2251 assignment.
2252 (gdb_unparse_agent_expr): Likewise.
2253 * hostio.c (require_data): Likewise.
2254 (handle_pread): Likewise.
2255 * linux-low.c (disable_regset): Likewise.
2256 (fetch_register): Likewise.
2257 (store_register): Likewise.
2258 (get_dynamic): Likewise.
2259 (linux_qxfer_libraries_svr4): Likewise.
2260 * mem-break.c (delete_fast_tracepoint_jump): Likewise.
2261 (set_fast_tracepoint_jump): Likewise.
2262 (uninsert_fast_tracepoint_jumps_at): Likewise.
2263 (reinsert_fast_tracepoint_jumps_at): Likewise.
2264 (validate_inserted_breakpoint): Likewise.
2265 (clone_agent_expr): Likewise.
2266 * regcache.c (init_register_cache): Likewise.
2267 * remote-utils.c (putpkt_binary_1): Likewise.
2268 (decode_M_packet): Likewise.
2269 (decode_X_packet): Likewise.
2270 (look_up_one_symbol): Likewise.
2271 (relocate_instruction): Likewise.
2272 (monitor_output): Likewise.
2273 * server.c (handle_search_memory): Likewise.
2274 (handle_qxfer_exec_file): Likewise.
2275 (handle_qxfer_libraries): Likewise.
2276 (handle_qxfer): Likewise.
2277 (handle_query): Likewise.
2278 (handle_v_cont): Likewise.
2279 (handle_v_run): Likewise.
2280 (captured_main): Likewise.
2281 * target.c (write_inferior_memory): Likewise.
2282 * thread-db.c (try_thread_db_load_from_dir): Likewise.
2283 * tracepoint.c (init_trace_buffer): Likewise.
2284 (add_tracepoint_action): Likewise.
2285 (add_traceframe): Likewise.
2286 (add_traceframe_block): Likewise.
2287 (cmd_qtdpsrc): Likewise.
2288 (cmd_qtdv): Likewise.
2289 (cmd_qtstatus): Likewise.
2290 (response_source): Likewise.
2291 (response_tsv): Likewise.
2292 (cmd_qtnotes): Likewise.
2293 (gdb_collect): Likewise.
2294 (initialize_tracepoint): Likewise.
2295
2296 2015-09-21 Pierre Langlois <pierre.langlois@arm.com>
2297
2298 * linux-aarch64-low-.c: Include ax.h and tracepoint.h.
2299 (enum aarch64_opcodes) <RET>, <SUBS>, <AND>, <ORR>, <ORN>,
2300 <EOR>, <LSLV>, <LSRV>, <ASRV>, <SBFM>, <UBFM>, <CSINC>, <MUL>,
2301 <NOP>: New.
2302 (enum aarch64_condition_codes): New enum.
2303 (w0): New static global.
2304 (fp): Likewise.
2305 (lr): Likewise.
2306 (struct aarch64_memory_operand) <type>: New
2307 MEMORY_OPERAND_POSTINDEX type.
2308 (postindex_memory_operand): New helper function.
2309 (emit_ret): New function.
2310 (emit_load_store_pair): New function, factored out of emit_stp
2311 with support for MEMORY_OPERAND_POSTINDEX.
2312 (emit_stp): Rewrite using emit_load_store_pair.
2313 (emit_ldp): New function.
2314 (emit_load_store): Likewise.
2315 (emit_ldr): Mention post-index instruction in comment.
2316 (emit_ldrh): New function.
2317 (emit_ldrb): New function.
2318 (emit_ldrsw): Mention post-index instruction in comment.
2319 (emit_str): Likewise.
2320 (emit_subs): New function.
2321 (emit_cmp): Likewise.
2322 (emit_and): Likewise.
2323 (emit_orr): Likewise.
2324 (emit_orn): Likewise.
2325 (emit_eor): Likewise.
2326 (emit_mvn): Likewise.
2327 (emit_lslv): Likewise.
2328 (emit_lsrv): Likewise.
2329 (emit_asrv): Likewise.
2330 (emit_mul): Likewise.
2331 (emit_sbfm): Likewise.
2332 (emit_sbfx): Likewise.
2333 (emit_ubfm): Likewise.
2334 (emit_ubfx): Likewise.
2335 (emit_csinc): Likewise.
2336 (emit_cset): Likewise.
2337 (emit_nop): Likewise.
2338 (emit_ops_insns): New helper function.
2339 (emit_pop): Likewise.
2340 (emit_push): Likewise.
2341 (aarch64_emit_prologue): New function.
2342 (aarch64_emit_epilogue): Likewise.
2343 (aarch64_emit_add): Likewise.
2344 (aarch64_emit_sub): Likewise.
2345 (aarch64_emit_mul): Likewise.
2346 (aarch64_emit_lsh): Likewise.
2347 (aarch64_emit_rsh_signed): Likewise.
2348 (aarch64_emit_rsh_unsigned): Likewise.
2349 (aarch64_emit_ext): Likewise.
2350 (aarch64_emit_log_not): Likewise.
2351 (aarch64_emit_bit_and): Likewise.
2352 (aarch64_emit_bit_or): Likewise.
2353 (aarch64_emit_bit_xor): Likewise.
2354 (aarch64_emit_bit_not): Likewise.
2355 (aarch64_emit_equal): Likewise.
2356 (aarch64_emit_less_signed): Likewise.
2357 (aarch64_emit_less_unsigned): Likewise.
2358 (aarch64_emit_ref): Likewise.
2359 (aarch64_emit_if_goto): Likewise.
2360 (aarch64_emit_goto): Likewise.
2361 (aarch64_write_goto_address): Likewise.
2362 (aarch64_emit_const): Likewise.
2363 (aarch64_emit_call): Likewise.
2364 (aarch64_emit_reg): Likewise.
2365 (aarch64_emit_pop): Likewise.
2366 (aarch64_emit_stack_flush): Likewise.
2367 (aarch64_emit_zero_ext): Likewise.
2368 (aarch64_emit_swap): Likewise.
2369 (aarch64_emit_stack_adjust): Likewise.
2370 (aarch64_emit_int_call_1): Likewise.
2371 (aarch64_emit_void_call_2): Likewise.
2372 (aarch64_emit_eq_goto): Likewise.
2373 (aarch64_emit_ne_goto): Likewise.
2374 (aarch64_emit_lt_goto): Likewise.
2375 (aarch64_emit_le_goto): Likewise.
2376 (aarch64_emit_gt_goto): Likewise.
2377 (aarch64_emit_ge_got): Likewise.
2378 (aarch64_emit_ops_impl): New static global variable.
2379 (aarch64_emit_ops): New target function, return
2380 &aarch64_emit_ops_impl.
2381 (struct linux_target_ops): Install it.
2382
2383 2015-09-21 Pierre Langlois <pierre.langlois@arm.com>
2384
2385 * Makefile.in (linux-aarch64-ipa.o, aarch64-ipa.o): New rules.
2386 * configure.srv (aarch64*-*-linux*): Add linux-aarch64-ipa.o and
2387 aarch64-ipa.o.
2388 * linux-aarch64-ipa.c: New file.
2389 * linux-aarch64-low.c: Include arch/aarch64-insn.h, inttypes.h
2390 and endian.h.
2391 (aarch64_get_thread_area): New target method.
2392 (extract_signed_bitfield): New helper function.
2393 (aarch64_decode_ldr_literal): New function.
2394 (enum aarch64_opcodes): New enum.
2395 (struct aarch64_register): New struct.
2396 (struct aarch64_operand): New struct.
2397 (x0): New static global.
2398 (x1): Likewise.
2399 (x2): Likewise.
2400 (x3): Likewise.
2401 (x4): Likewise.
2402 (w2): Likewise.
2403 (ip0): Likewise.
2404 (sp): Likewise.
2405 (xzr): Likewise.
2406 (aarch64_register): New helper function.
2407 (register_operand): Likewise.
2408 (immediate_operand): Likewise.
2409 (struct aarch64_memory_operand): New struct.
2410 (offset_memory_operand): New helper function.
2411 (preindex_memory_operand): Likewise.
2412 (enum aarch64_system_control_registers): New enum.
2413 (ENCODE): New macro.
2414 (emit_insn): New helper function.
2415 (emit_b): New function.
2416 (emit_bcond): Likewise.
2417 (emit_cb): Likewise.
2418 (emit_tb): Likewise.
2419 (emit_blr): Likewise.
2420 (emit_stp): Likewise.
2421 (emit_ldp_q_offset): Likewise.
2422 (emit_stp_q_offset): Likewise.
2423 (emit_load_store): Likewise.
2424 (emit_ldr): Likewise.
2425 (emit_ldrsw): Likewise.
2426 (emit_str): Likewise.
2427 (emit_ldaxr): Likewise.
2428 (emit_stxr): Likewise.
2429 (emit_stlr): Likewise.
2430 (emit_data_processing_reg): Likewise.
2431 (emit_data_processing): Likewise.
2432 (emit_add): Likewise.
2433 (emit_sub): Likewise.
2434 (emit_mov): Likewise.
2435 (emit_movk): Likewise.
2436 (emit_mov_addr): Likewise.
2437 (emit_mrs): Likewise.
2438 (emit_msr): Likewise.
2439 (emit_sevl): Likewise.
2440 (emit_wfe): Likewise.
2441 (append_insns): Likewise.
2442 (can_encode_int32_in): New helper function.
2443 (aarch64_relocate_instruction): New function.
2444 (aarch64_install_fast_tracepoint_jump_pad): Likewise.
2445 (aarch64_get_min_fast_tracepoint_insn_len): Likewise.
2446 (struct linux_target_ops): Install aarch64_get_thread_area,
2447 aarch64_install_fast_tracepoint_jump_pad and
2448 aarch64_get_min_fast_tracepoint_insn_len.
2449
2450 2015-09-21 Pierre Langlois <pierre.langlois@arm.com>
2451
2452 * Makefile.in (aarch64-insn.o): New rule.
2453 * configure.srv (aarch64*-*-linux*): Add aarch64-insn.o.
2454
2455 2015-09-21 Yao Qi <yao.qi@linaro.org>
2456
2457 * ax.c [!IN_PROCESS_AGENT] (gdb_agent_op_sizes): Define it.
2458
2459 2015-09-21 Yao Qi <yao.qi@linaro.org>
2460
2461 * tracepoint.c (max_jump_pad_size): Remove.
2462
2463 2015-09-18 Yao Qi <yao.qi@linaro.org>
2464
2465 * linux-aarch64-low.c: Don't include sys/uio.h.
2466 (ps_get_thread_area): Call aarch64_ps_get_thread_area.
2467
2468 2015-09-16 Wei-cheng Wang <cole945@gmail.com>
2469
2470 * tracepoint.c (eval_result_type): Change prototype.
2471 (condition_true_at_tracepoint): Fix argument to compiled_cond.
2472
2473 2015-09-15 Pedro Alves <palves@redhat.com>
2474
2475 * remote-utils.c (prepare_resume_reply) <TARGET_WAITKIND_EXECD>:
2476 Check whether to report exec events instead of checking whether
2477 multiprocess is enabled.
2478
2479 2015-09-15 Pedro Alves <palves@redhat.com>
2480
2481 PR remote/18965
2482 * remote-utils.c (prepare_resume_reply): Merge
2483 TARGET_WAITKIND_VFORK_DONE switch case with the
2484 TARGET_WAITKIND_FORKED case.
2485
2486 2015-09-15 Yao Qi <yao.qi@linaro.org>
2487
2488 * server.c (handle_query): Check string comparison using
2489 "else if" instead of "if".
2490
2491 2015-09-15 Yao Qi <yao.qi@linaro.org>
2492
2493 * server.c (vCont_supported): New global variable.
2494 (handle_query): Set vCont_supported to 1 if "vContSupported+"
2495 matches. Append ";vContSupported+" to own_buf.
2496 (handle_v_requests): Append ";s;S" to own_buf if target supports
2497 hardware single step or vCont_supported is false.
2498 (capture_main): Set vCont_supported to zero.
2499
2500 2015-09-15 Yao Qi <yao.qi@linaro.org>
2501
2502 * linux-low.c (linux_supports_conditional_breakpoints): Rename
2503 it to ...
2504 (linux_supports_hardware_single_step): ... New function.
2505 (linux_target_ops): Update.
2506 * lynx-low.c (lynx_target_ops): Set field
2507 supports_hardware_single_step to target_can_do_hardware_single_step.
2508 * nto-low.c (nto_target_ops): Likewise.
2509 * spu-low.c (spu_target_ops): Likewise.
2510 * win32-low.c (win32_target_ops): Likewise.
2511 * target.c (target_can_do_hardware_single_step): New function.
2512 * target.h (struct target_ops) <supports_conditional_breakpoints>:
2513 Remove. <supports_hardware_single_step>: New field.
2514 (target_supports_conditional_breakpoints): Remove.
2515 (target_supports_hardware_single_step): New macro.
2516 (target_can_do_hardware_single_step): Declare.
2517 * server.c (handle_query): Use target_supports_hardware_single_step
2518 instead of target_supports_conditional_breakpoints.
2519
2520 2015-09-15 Yao Qi <yao.qi@linaro.org>
2521
2522 * linux-aarch64-low.c (aarch64_linux_siginfo_fixup): New
2523 function.
2524 (struct linux_target_ops the_low_target): Install
2525 aarch64_linux_siginfo_fixup.
2526
2527 2015-09-11 Don Breazeal <donb@codesourcery.com>
2528 Luis Machado <lgustavo@codesourcery.com>
2529
2530 * linux-low.c (linux_mourn): Static declaration.
2531 (linux_arch_setup): Move in front of
2532 handle_extended_wait.
2533 (linux_arch_setup_thread): New function.
2534 (handle_extended_wait): Handle exec events. Call
2535 linux_arch_setup_thread. Make event_lwp argument a
2536 pointer-to-a-pointer.
2537 (check_zombie_leaders): Do not check stopped threads.
2538 (linux_low_ptrace_options): Add PTRACE_O_TRACEEXEC.
2539 (linux_low_filter_event): Add lwp and thread for exec'ing
2540 non-leader thread if leader thread has been deleted.
2541 Refactor code into linux_arch_setup_thread and call it.
2542 Pass child lwp pointer by reference to handle_extended_wait.
2543 (linux_wait_for_event_filtered): Update comment.
2544 (linux_wait_1): Prevent clobbering exec event status.
2545 (linux_supports_exec_events): New function.
2546 (linux_target_ops) <supports_exec_events>: Initialize new member.
2547 * lynx-low.c (lynx_target_ops) <supports_exec_events>: Initialize
2548 new member.
2549 * remote-utils.c (prepare_resume_reply): New stop reason 'exec'.
2550 * server.c (report_exec_events): New global variable.
2551 (handle_query): Handle qSupported query for exec-events feature.
2552 (captured_main): Initialize report_exec_events.
2553 * server.h (report_exec_events): Declare new global variable.
2554 * target.h (struct target_ops) <supports_exec_events>: New
2555 member.
2556 (target_supports_exec_events): New macro.
2557 * win32-low.c (win32_target_ops) <supports_exec_events>:
2558 Initialize new member.
2559
2560 2015-09-09 Markus Metzger <markus.t.metzger@intel.com>
2561
2562 * linux-low.c (linux_low_enable_btrace): Remove.
2563 (linux_target_ops): Replace linux_low_enable_btrace with
2564 linux_enable_btrace.
2565
2566 2015-09-03 Yao Qi <yao.qi@linaro.org>
2567
2568 * linux-aarch64-low.c (aarch64_insert_point): Call
2569 aarch64_handle_watchpoint if aarch64_linux_region_ok_for_watchpoint
2570 returns true.
2571
2572 2015-08-27 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2573
2574 * linux-low.c (check_stopped_by_breakpoint): Use
2575 GDB_ARCH_IS_TRAP_BRKPT instead of GDB_ARCH_TRAP_BRKPT.
2576
2577 2015-08-27 Pedro Alves <palves@redhat.com>
2578
2579 * proc-service.c (ps_pdwrite): Return PS_ERR/PS_OK explicily.
2580
2581 2015-08-26 Simon Marchi <simon.marchi@ericsson.com>
2582
2583 * ax.c (gdb_parse_agent_expr): Replace xmalloc-family function with
2584 the XNEW-family equivalent.
2585 (compile_bytecodes): Likewise.
2586 * dll.c (loaded_dll): Likewise.
2587 * event-loop.c (append_callback_event): Likewise.
2588 (create_file_handler): Likewise.
2589 (create_file_event): Likewise.
2590 * hostio.c (handle_open): Likewise.
2591 * inferiors.c (add_thread): Likewise.
2592 (add_process): Likewise.
2593 * linux-aarch64-low.c (aarch64_linux_new_process): Likewise.
2594 * linux-arm-low.c (arm_new_process): Likewise.
2595 (arm_new_thread): Likewise.
2596 * linux-low.c (add_to_pid_list): Likewise.
2597 (linux_add_process): Likewise.
2598 (handle_extended_wait): Likewise.
2599 (add_lwp): Likewise.
2600 (enqueue_one_deferred_signal): Likewise.
2601 (enqueue_pending_signal): Likewise.
2602 (linux_resume_one_lwp_throw): Likewise.
2603 (linux_resume_one_thread): Likewise.
2604 (linux_read_memory): Likewise.
2605 (linux_write_memory): Likewise.
2606 * linux-mips-low.c (mips_linux_new_process): Likewise.
2607 (mips_linux_new_thread): Likewise.
2608 (mips_add_watchpoint): Likewise.
2609 * linux-x86-low.c (initialize_low_arch): Likewise.
2610 * lynx-low.c (lynx_add_process): Likewise.
2611 * mem-break.c (set_raw_breakpoint_at): Likewise.
2612 (set_breakpoint): Likewise.
2613 (add_condition_to_breakpoint): Likewise.
2614 (add_commands_to_breakpoint): Likewise.
2615 (clone_agent_expr): Likewise.
2616 (clone_one_breakpoint): Likewise.
2617 * regcache.c (new_register_cache): Likewise.
2618 * remote-utils.c (look_up_one_symbol): Likewise.
2619 * server.c (queue_stop_reply): Likewise.
2620 (start_inferior): Likewise.
2621 (queue_stop_reply_callback): Likewise.
2622 (handle_target_event): Likewise.
2623 * spu-low.c (fetch_ppc_memory): Likewise.
2624 (store_ppc_memory): Likewise.
2625 * target.c (set_target_ops): Likewise.
2626 * thread-db.c (thread_db_load_search): Likewise.
2627 (try_thread_db_load_1): Likewise.
2628 * tracepoint.c (add_tracepoint): Likewise.
2629 (add_tracepoint_action): Likewise.
2630 (create_trace_state_variable): Likewise.
2631 (cmd_qtdpsrc): Likewise.
2632 (cmd_qtro): Likewise.
2633 (add_while_stepping_state): Likewise.
2634 * win32-low.c (child_add_thread): Likewise.
2635 (get_image_name): Likewise.
2636
2637 2015-08-25 Yao Qi <yao.qi@linaro.org>
2638
2639 * linux-aarch64-low.c (aarch64_linux_new_thread): Remove.
2640
2641 2015-08-25 Yao Qi <yao.qi@linaro.org>
2642
2643 * Makefile.in (aarch64-linux.o): New rule.
2644 * configure.srv (aarch64*-*-linux*): Append aarch64-linux.o to
2645 srv_tgtobj.
2646 * linux-aarch64-low.c: Include nat/aarch64-linux.h.
2647 (aarch64_init_debug_reg_state): Make it extern.
2648 (aarch64_linux_prepare_to_resume): Remove.
2649
2650 2015-08-25 Yao Qi <yao.qi@linaro.org>
2651
2652 * linux-aarch64-low.c (aarch64_linux_prepare_to_resume): Use
2653 lwp_arch_private_info and ptid_of_lwp.
2654
2655 2015-08-25 Yao Qi <yao.qi@linaro.org>
2656
2657 * linux-aarch64-low.c (aarch64_get_debug_reg_state): Add argument pid.
2658 Find proc_info by find_process_pid. All callers updated.
2659
2660 2015-08-25 Yao Qi <yao.qi@linaro.org>
2661
2662 * linux-aarch64-low.c (struct arch64_dr_update_callback_param):
2663 Remove.
2664 (debug_reg_change_callback): Remove.
2665 (aarch64_notify_debug_reg_change): Remove.
2666
2667 2015-08-25 Yao Qi <yao.qi@linaro.org>
2668
2669 * linux-aarch64-low.c (aarch64_notify_debug_reg_change):
2670 Call current_lwp_ptid.
2671
2672 2015-08-25 Yao Qi <yao.qi@linaro.org>
2673
2674 * linux-aarch64-low.c (debug_reg_change_callback): Use
2675 debug_printf.
2676
2677 2015-08-25 Yao Qi <yao.qi@linaro.org>
2678
2679 * linux-aarch64-low.c (debug_reg_change_callback): Use phex.
2680
2681 2015-08-25 Yao Qi <yao.qi@linaro.org>
2682
2683 * linux-aarch64-low.c (debug_reg_change_callback): Remove comments.
2684
2685 2015-08-25 Yao Qi <yao.qi@linaro.org>
2686
2687 * linux-aarch64-low.c (debug_reg_change_callback): Re-indent
2688 the code.
2689
2690 2015-08-25 Yao Qi <yao.qi@linaro.org>
2691
2692 * linux-aarch64-low.c (aarch64_dr_update_callback_param) <pid>:
2693 Remove.
2694 (debug_reg_change_callback): Remove argument entry and add argument
2695 lwp. Remove local variable thread. Don't print thread id in the
2696 debugging output. Don't check whether pid of thread equals to pid.
2697 (aarch64_notify_debug_reg_change): Don't set param.pid. Call
2698 iterate_over_lwps instead find_inferior.
2699
2700 2015-08-24 Pedro Alves <palves@redhat.com>
2701
2702 * inferiors.c (get_first_process): New function.
2703 * inferiors.h (get_first_process): New declaration.
2704 * remote-utils.c (read_ptid): Default to the first process in the
2705 list, instead of to the current thread's process.
2706
2707 2015-08-24 Pedro Alves <palves@redhat.com>
2708
2709 * debug.c: Include gdb_sys_time.h instead of sys/time.h.
2710 * event-loop.c: Likewise.
2711 * remote-utils.c: Likewise.
2712 * tracepoint.c: Likewise.
2713
2714 2015-08-24 Pedro Alves <palves@redhat.com>
2715
2716 * spu-low.c (spu_request_interrupt): Use lwpid_of instead of
2717 ptid_get_lwp.
2718
2719 2015-08-21 Pedro Alves <palves@redhat.com>
2720
2721 * ax.c (gdb_eval_agent_expr): Return expr_eval_unhandled_opcode
2722 instead of literal 1.
2723
2724 2015-08-21 Pedro Alves <palves@redhat.com>
2725
2726 * tdesc.c (default_description): Explicitly zero-initialize.
2727
2728 2015-08-21 Pedro Alves <palves@redhat.com>
2729
2730 PR gdb/18749
2731 * inferiors.c (remove_thread): Discard any pending stop reply for
2732 this thread.
2733 * server.c (remove_all_on_match_pid): Rename to ...
2734 (remove_all_on_match_ptid): ... this. Work with a filter ptid
2735 instead of a pid.
2736 (discard_queued_stop_replies): Change parameter to a ptid. Now
2737 extern.
2738 (handle_v_kill, kill_inferior_callback, captured_main)
2739 (process_serial_event): Adjust.
2740 * server.h (discard_queued_stop_replies): Declare.
2741
2742 2015-08-21 Pedro Alves <palves@redhat.com>
2743
2744 * linux-low.c (wait_for_sigstop): Always switch to no thread
2745 selected if the previously current thread dies.
2746 * lynx-low.c (lynx_request_interrupt): Use the first thread's
2747 process instead of the current thread's.
2748 * remote-utils.c (input_interrupt): Don't check if there's no
2749 current thread.
2750 * server.c (gdb_read_memory, gdb_write_memory): If setting the
2751 current thread to the general thread fails, error out.
2752 (handle_qxfer_auxv, handle_qxfer_libraries)
2753 (handle_qxfer_libraries_svr4, handle_qxfer_siginfo)
2754 (handle_qxfer_spu, handle_qxfer_statictrace, handle_qxfer_fdpic)
2755 (handle_query): Check if there's a thread selected instead of
2756 checking whether there's any thread in the thread list.
2757 (handle_qxfer_threads, handle_qxfer_btrace)
2758 (handle_qxfer_btrace_conf): Don't error out early if there's no
2759 thread in the thread list.
2760 (handle_v_cont, myresume): Don't set the current thread to the
2761 continue thread.
2762 (process_serial_event) <Hg handling>: Also set thread_id if the
2763 previous general thread is still alive.
2764 (process_serial_event) <g/G handling>: If setting the current
2765 thread to the general thread fails, error out.
2766 * spu-low.c (spu_resume, spu_request_interrupt): Use the first
2767 thread's lwp instead of the current thread's.
2768 * target.c (set_desired_thread): If the desired thread was not
2769 found, leave the current thread pointing to NULL. Return an int
2770 (boolean) indicating success.
2771 * target.h (set_desired_thread): Change return type to int.
2772
2773 2015-08-20 Max Filippov <jcmvbkbc@gmail.com>
2774
2775 * configure.srv (xtensa*-*-linux*): Add srv_linux_thread_db=yes.
2776 * linux-xtensa-low.c (arch/xtensa.h gdb_proc_service.h): New
2777 #includes.
2778 (ps_get_thread_area): New function.
2779
2780 2015-08-19 Gary Benson <gbenson@redhat.com>
2781
2782 * hostio.c (handle_pread): Do not attempt to read more data
2783 than hostio_reply_with_data can fit in a packet.
2784
2785 2015-08-18 Joel Brobecker <brobecker@adacore.com>
2786
2787 * linux-aarch32-low.c (NT_ARM_VFP): Define if not already defined.
2788
2789 2015-08-14 Matthew Fortune <matthew.fortune@imgtec.com>
2790
2791 * linux-low.c (get_r_debug): Handle DT_MIPS_RLD_MAP_REL.
2792
2793 2015-08-06 Pedro Alves <palves@redhat.com>
2794
2795 * tracepoint.c (expr_eval_result): Now an int.
2796
2797 2015-08-06 Pedro Alves <palves@redhat.com>
2798
2799 * gdbthread.h (struct regcache): Forward declare.
2800 (struct thread_info) <regcache_data>: Now a struct regcache
2801 pointer.
2802 * inferiors.c (inferior_regcache_data)
2803 (set_inferior_regcache_data): Now work with struct regcache
2804 pointers.
2805 * inferiors.h (struct regcache): Forward declare.
2806 (inferior_regcache_data, set_inferior_regcache_data): Now work
2807 with struct regcache pointers.
2808 * regcache.c (get_thread_regcache, regcache_invalidate_thread)
2809 (free_register_cache_thread): Remove struct regcache pointer
2810 casts.
2811
2812 2015-08-06 Pedro Alves <palves@redhat.com>
2813
2814 * server.c (captured_main): On error, print the exception message
2815 to stderr, and if run_once is set, throw a quit.
2816
2817 2015-08-06 Pedro Alves <palves@redhat.com>
2818
2819 * linux-low.c (move_out_of_jump_pad_callback): Temporarily switch
2820 the current thread.
2821
2822 2015-08-06 Pedro Alves <palves@redhat.com>
2823
2824 * linux-low.c (linux_write_memory): Rewrite debug output to avoid
2825 reading beyond the passed in buffer length.
2826
2827 2015-08-06 Pierre Langlois <pierre.langlois@arm.com>
2828
2829 * tracepoint.c (symbol_list) <required>: Remove.
2830
2831 2015-08-06 Pedro Alves <palves@redhat.com>
2832
2833 * linux-low.c (handle_extended_wait): Set the fork child's suspend
2834 count if stopping and suspending threads.
2835 (check_stopped_by_breakpoint): If stopped by trace, set the LWP's
2836 stop reason to TARGET_STOPPED_BY_SINGLE_STEP.
2837 (linux_detach): Complete an ongoing step-over.
2838 (lwp_suspended_inc, lwp_suspended_decr): New functions. Use
2839 throughout.
2840 (resume_stopped_resumed_lwps): Don't resume a suspended thread.
2841 (linux_wait_1): If passing a signal to the inferior after
2842 finishing a step-over, unsuspend and re-resume all lwps. If we
2843 see a single-step event but the thread should be continuing, don't
2844 pass the trap to gdb.
2845 (stuck_in_jump_pad_callback, move_out_of_jump_pad_callback): Use
2846 internal_error instead of gdb_assert.
2847 (enqueue_pending_signal): New function.
2848 (check_ptrace_stopped_lwp_gone): Add debug output.
2849 (start_step_over): Use internal_error instead of gdb_assert.
2850 (complete_ongoing_step_over): New function.
2851 (linux_resume_one_thread): Don't resume a suspended thread.
2852 (proceed_one_lwp): If the LWP is stepping over a breakpoint, reset
2853 it stepping.
2854
2855 2015-08-06 Pedro Alves <palves@redhat.com>
2856
2857 * linux-low.c (add_lwp): Set waitstatus to TARGET_WAITKIND_IGNORE.
2858 (linux_thread_alive): Use lwp_is_marked_dead.
2859 (extended_event_reported): Delete.
2860 (linux_wait_1): Check if waitstatus is TARGET_WAITKIND_IGNORE
2861 instead of extended_event_reported.
2862 (mark_lwp_dead): Don't set the 'dead' flag. Store the waitstatus
2863 as well.
2864 (lwp_is_marked_dead): New function.
2865 (lwp_running): Use lwp_is_marked_dead.
2866 * linux-low.h: Delete 'dead' field, and update 'waitstatus's
2867 comment.
2868
2869 2015-08-06 Pedro Alves <palves@redhat.com>
2870
2871 * linux-low.c (linux_wait_1): Move fork event output out of the
2872 !report_to_gdb check. Pass event_child->waitstatus to
2873 target_waitstatus_to_string instead of ourstatus.
2874
2875 2015-08-04 Yao Qi <yao.qi@linaro.org>
2876
2877 * linux-aarch64-low.c (aarch64_supports_tracepoints): Return 0
2878 if current_thread is 32 bit.
2879
2880 2015-08-04 Yao Qi <yao.qi@linaro.org>
2881
2882 * linux-aarch64-low.c (aarch64_supports_z_point_type): Return
2883 0 for Z_PACKET_SW_BP if it may be used in multi-arch debugging.
2884 * server.c (extended_protocol): Remove "static".
2885 * server.h (extended_protocol): Declare it.
2886
2887 2015-08-04 Yao Qi <yao.qi@linaro.org>
2888
2889 * linux-aarch64-low.c (aarch64_get_pc): Get PC register on
2890 both aarch64 and aarch32.
2891 (aarch64_set_pc): Likewise.
2892
2893 2015-08-04 Yao Qi <yao.qi@linaro.org>
2894
2895 * configure.srv (case aarch64*-*-linux*): Append arm-with-neon.o
2896 to srv_regobj and append arm-core.xml arm-vfpv3.xml and
2897 arm-with-neon.xml to srv_xmlfiles.
2898 * linux-aarch64-low.c: Include linux-aarch32-low.h.
2899 (is_64bit_tdesc): New function.
2900 (aarch64_linux_read_description): New function.
2901 (aarch64_arch_setup): Call aarch64_linux_read_description.
2902 (regs_info): Rename to regs_info_aarch64.
2903 (aarch64_regs_info): Return right regs_info.
2904 (initialize_low_arch): Call initialize_low_arch_aarch32.
2905
2906 2015-08-04 Yao Qi <yao.qi@linaro.org>
2907
2908 * configure.srv (srv_tgtobj): Add linux-aarch32-low.o.
2909 * linux-aarch32-low.c: New file.
2910 * linux-aarch32-low.h: New file.
2911 * linux-arm-low.c (arm_fill_gregset): Move it to
2912 linux-aarch32-low.c.
2913 (arm_store_gregset): Likewise.
2914 (arm_fill_vfpregset): Call arm_fill_vfpregset_num
2915 (arm_store_vfpregset): Call arm_store_vfpregset_num.
2916 (arm_arch_setup): Check if PTRACE_GETREGSET works.
2917 (regs_info): Rename to regs_info_arm.
2918 (arm_regs_info): Return regs_info_aarch32 if
2919 have_ptrace_getregset is 1 and target description is
2920 arm_with_neon or arm_with_vfpv3.
2921 (initialize_low_arch): Don't call init_registers_arm_with_neon.
2922 Call initialize_low_arch_aarch32 instead.
2923
2924 2015-08-04 Yao Qi <yao.qi@linaro.org>
2925
2926 * linux-x86-low.c (have_ptrace_getregset): Move it to ...
2927 * linux-low.c: ... here.
2928 * linux-low.h (have_ptrace_getregset): Declare it.
2929
2930 2015-08-04 Pedro Alves <palves@redhat.com>
2931
2932 * thread-db.c (struct thread_db): Use new typedefs.
2933 (try_thread_db_load_1): Define local TDB_DLSYM macro and use it in
2934 CHK calls.
2935 (disable_thread_event_reporting): Cast result of dlsym to
2936 destination function pointer type.
2937 (thread_db_mourn): Use td_ta_delete_ftype.
2938
2939 2015-08-03 Sandra Loosemore <sandra@codesourcery.com>
2940
2941 * linux-nios2-low.c (NIOS2_BREAKPOINT): Conditionalize for
2942 arch variant.
2943 (CDX_BREAKPOINT): Define for R2.
2944 (nios2_breakpoint_at): Check for CDX_BREAKPOINT when R2.
2945 (the_low_target): Add comments.
2946
2947 2015-07-30 Yao Qi <yao.qi@linaro.org>
2948
2949 * linux-arm-low.c (arm_hwcap): Remove it.
2950 (arm_read_description): New local variable arm_hwcap. Don't
2951 set arm_hwcap to zero.
2952
2953 2015-07-30 Yao Qi <yao.qi@linaro.org>
2954
2955 * linux-arm-low.c (arm_fill_wmmxregset): Don't use arm_hwcap.
2956 Use regcache->tdesc instead.
2957 (arm_store_wmmxregset): Likewise.
2958 (arm_fill_vfpregset): Likewise.
2959 (arm_store_vfpregset): Likewise.
2960
2961 2015-07-30 Yao Qi <yao.qi@linaro.org>
2962
2963 * linux-arm-low.c: Include arch/arm.h.
2964 (arm_fill_gregset): Don't use arm_num_regs and arm_regmap.
2965 (arm_store_gregset): Likewise.
2966
2967 2015-07-29 Simon Marchi <simon.marchi@ericsson.com>
2968
2969 * linux-mips-low.c (mips_linux_prepare_to_resume): Add NULL as
2970 ptrace's 4th parameter.
2971
2972 2015-07-27 Yao Qi <yao.qi@linaro.org>
2973
2974 * configure.srv (case aarch64*-*-linux*): Don't set
2975 srv_linux_usrregs.
2976
2977 2015-07-24 Pedro Alves <palves@redhat.c: Likewise.om>
2978
2979 * linux-aarch64-low.c: Include nat/gdb_ptrace.h instead of
2980 sys/ptrace.h.
2981 * linux-arm-low.c: Likewise.
2982 * linux-cris-low.c: Likewise.
2983 * linux-crisv32-low.c: Likewise.
2984 * linux-low.c: Likewise.
2985 * linux-m68k-low.c: Likewise.
2986 * linux-mips-low.c: Likewise.
2987 * linux-nios2-low.c: Likewise.
2988 * linux-s390-low.c: Likewise.
2989 * linux-sparc-low.c: Likewise.
2990 * linux-tic6x-low.c: Likewise.
2991 * linux-tile-low.c: Likewise.
2992 * linux-x86-low.c: Likewise.
2993
2994 2015-07-24 Pedro Alves <palves@redhat.com>
2995
2996 * config.in: Regenerate.
2997 * configure: Regenerate.
2998
2999 2015-07-24 Pedro Alves <palves@redhat.com>
3000
3001 * acinclude.m4: Include ../ptrace.m4.
3002 * configure.ac: Call GDB_AC_PTRACE.
3003 * config.in, configure: Regenerate.
3004
3005 2015-07-24 Yao Qi <yao.qi@linaro.org>
3006
3007 * linux-low.c (linux_create_inferior): Remove setting to
3008 proc->priv->new_inferior.
3009 (linux_attach): Likewise.
3010 (linux_low_filter_event): Likewise.
3011 * linux-low.h (struct process_info_private) <new_inferior>: Remove.
3012
3013 2015-07-24 Yao Qi <yao.qi@linaro.org>
3014
3015 * linux-low.c (linux_arch_setup): New function.
3016 (linux_low_filter_event): If proc->tdesc is NULL and
3017 proc->attached is true, call the_low_target.arch_setup.
3018 Otherwise, keep status pending, and return.
3019 (linux_resume_one_lwp_throw): Don't call get_pc if
3020 thread->while_stepping isn't NULL. Don't call
3021 get_thread_regcache if proc->tdesc is NULL.
3022 (need_step_over_p): Return 0 if proc->tdesc is NULL.
3023 (linux_target_ops): Install arch_setup.
3024 * server.c (start_inferior): Call the_target->arch_setup.
3025 * target.h (struct target_ops) <arch_setup>: New field.
3026 (target_arch_setup): New marco.
3027 * lynx-low.c (lynx_target_ops): Update.
3028 * nto-low.c (nto_target_ops): Update.
3029 * spu-low.c (spu_target_ops): Update.
3030 * win32-low.c (win32_target_ops): Update.
3031
3032 2015-07-24 Yao Qi <yao.qi@linaro.org>
3033
3034 * linux-low.c (linux_add_process): Don't set
3035 proc->priv->new_inferior.
3036 (linux_create_inferior): Set proc->priv->new_inferior to 1.
3037 (linux_attach): Likewise.
3038
3039 2015-07-24 Yao Qi <yao.qi@linaro.org>
3040
3041 * server.c (start_inferior): Code refactor.
3042
3043 2015-07-24 Yao Qi <yao.qi@linaro.org>
3044
3045 * server.c (process_serial_event): Set general_thread.
3046
3047 2015-07-21 Yao Qi <yao.qi@linaro.org>
3048
3049 * linux-aarch64-low.c (aarch64_arch_setup): Remove code and call
3050 aarch64_linux_get_debug_reg_capacity.
3051
3052 2015-07-17 Yao Qi <yao.qi@linaro.org>
3053
3054 * Makefile.in (aarch64-linux-hw-point.o): New rule.
3055 * configure.srv (srv_tgtobj): Append aarch64-linux-hw-point.o.
3056 * linux-aarch64-low.c: Include nat/aarch64-linux-hw-point.h.
3057 (AARCH64_HBP_MAX_NUM): Move to nat/aarch64-linux-hw-point.h.
3058 (AARCH64_HWP_MAX_NUM, AARCH64_HBP_ALIGNMENT): Likewise.
3059 (AARCH64_HWP_ALIGNMENT): Likewise.
3060 (AARCH64_HWP_MAX_LEN_PER_REG): Likewise.
3061 (AARCH64_DEBUG_NUM_SLOTS, AARCH64_DEBUG_ARCH): Likewise.
3062 (aarch64_num_bp_regs, aarch64_num_wp_regs): Likewise.
3063 (AARCH64_DEBUG_ARCH_V8, DR_MARK_ALL_CHANGED): Likewise.
3064 (DR_MARK_N_CHANGED, DR_CLEAR_CHANGED): Likewise.
3065 (DR_HAS_CHANGED, DR_N_HAS_CHANGE): Likewise.
3066 (struct aarch64_debug_reg_state): Likewise.
3067 (struct arch_lwp_info): Likewise.
3068 (aarch64_align_watchpoint): Likewise.
3069 (DR_CONTROL_ENABLED, DR_CONTROL_LENGTH): Likewise.
3070 (aarch64_watchpoint_length): Likewise.
3071 (aarch64_point_encode_ctrl_reg): Likewise
3072 (aarch64_point_is_aligned): Likewise.
3073 (aarch64_align_watchpoint): Likewise.
3074 (aarch64_linux_set_debug_regs):
3075 (aarch64_dr_state_insert_one_point): Likewise.
3076 (aarch64_dr_state_remove_one_point): Likewise.
3077 (aarch64_handle_breakpoint): Likewise.
3078 (aarch64_handle_aligned_watchpoint): Likewise.
3079 (aarch64_handle_unaligned_watchpoint): Likewise.
3080 (aarch64_handle_watchpoint): Likewise.
3081
3082 2015-07-17 Yao Qi <yao.qi@linaro.org>
3083
3084 * linux-aarch64-low.c (aarch64_handle_breakpoint): Add argument state
3085 and don't aarch64_get_debug_reg_state. All callers update.
3086 (aarch64_handle_aligned_watchpoint): Likewise.
3087 (aarch64_handle_unaligned_watchpoint): Likewise.
3088 (aarch64_handle_watchpoint): Likewise.
3089 (aarch64_insert_point): Call aarch64_get_debug_reg_state earlier.
3090 (aarch64_remove_point): Likewise.
3091
3092 2015-07-17 Yao Qi <yao.qi@linaro.org>
3093
3094 * linux-aarch64-low.c (aarch64_show_debug_reg_state): Use
3095 debug_printf.
3096 (aarch64_handle_unaligned_watchpoint): Likewise.
3097
3098 2015-07-15 Jan Kratochvil <jan.kratochvil@redhat.com>
3099
3100 Revert the previous 3 commits:
3101 Move gdb_regex* to common/
3102 Move linux_find_memory_regions_full & co.
3103 gdbserver build-id attribute generator
3104
3105 2015-07-15 Aleksandar Ristovski <aristovski@qnx.com
3106 Jan Kratochvil <jan.kratochvil@redhat.com>
3107
3108 gdbserver build-id attribute generator.
3109 * linux-low.c (nat/linux-maps.h, search.h, rsp-low.h): Include.
3110 (ElfXX_Ehdr, ElfXX_Phdr, ElfXX_Nhdr): New.
3111 (ELFXX_FLD, ELFXX_SIZEOF, ELFXX_ROUNDUP, BUILD_ID_INVALID): New.
3112 (find_phdr): New.
3113 (get_dynamic): Use find_pdhr to traverse program headers.
3114 (struct mapping_entry, mapping_entry_s, free_mapping_entry_vec)
3115 (compare_mapping_entry_range, struct find_memory_region_callback_data)
3116 (read_build_id, find_memory_region_callback, lrfind_mapping_entry)
3117 (get_hex_build_id): New.
3118 (linux_qxfer_libraries_svr4): Add optional build-id attribute
3119 to reply XML document.
3120
3121 2015-07-15 Aleksandar Ristovski <aristovski@qnx.com
3122 Jan Kratochvil <jan.kratochvil@redhat.com>
3123
3124 * target.c: Include target/target-utils.h and fcntl.h.
3125 (target_fileio_read_stralloc_1_pread, target_fileio_read_stralloc_1)
3126 (target_fileio_read_stralloc): New functions.
3127
3128 2015-07-15 Jan Kratochvil <jan.kratochvil@redhat.com>
3129
3130 * Makefile.in (OBS): Add gdb_regex.o.
3131 (gdb_regex.o): New.
3132 * config.in: Rebuilt.
3133 * configure: Rebuilt.
3134
3135 2015-07-15 Aleksandar Ristovski <aristovski@qnx.com
3136 Jan Kratochvil <jan.kratochvil@redhat.com>
3137
3138 Create empty nat/linux-maps.[ch] and common/target-utils.[ch].
3139 * Makefile.in (OBS): Add target-utils.o.
3140 (linux-maps.o, target-utils.o): New.
3141 * configure.srv (srv_linux_obj): Add linux-maps.o.
3142
3143 2015-07-15 Pierre Langlois <pierre.langlois@arm.com>
3144
3145 * linux-aarch64-low.c (aarch64_supports_range_stepping): New
3146 function, return 1.
3147 (the_low_target): Install it.
3148
3149 2015-07-14 Pedro Alves <palves@redhat.com>
3150
3151 * linux-low.c (kill_wait_lwp): Don't assert if waitpid fails.
3152 Instead, ignore ECHILD, and throw an error for other errnos.
3153
3154 2015-07-10 Pedro Alves <palves@redhat.com>
3155
3156 * event-loop.c (struct callback_event) <data>: Change type to
3157 gdb_client_data instance instead of gdb_client_data pointer.
3158 (append_callback_event): Adjust.
3159
3160 2015-07-10 Pierre Langlois <pierre.langlois@arm.com>
3161
3162 * linux-aarch64-low.c: Add comments for each linux_target_ops
3163 method. Remove comments already covered in target_ops and
3164 linux_target_ops definitions.
3165 (the_low_target): Add comments for each unimplemented method.
3166
3167 2015-07-09 Yao Qi <yao.qi@linaro.org>
3168
3169 * linux-aarch64-low.c (aarch64_regmap): Remove.
3170 (aarch64_usrregs_info): Remove.
3171 (regs_info): Set field usrregs to NULL.
3172
3173 2015-07-02 Markus Metzger <markus.t.metzger@intel.com>
3174
3175 * linux-low.c: Include "rsp-low.h"
3176 (linux_low_encode_pt_config, linux_low_encode_raw): New.
3177 (linux_low_read_btrace): Support BTRACE_FORMAT_PT.
3178 (linux_low_btrace_conf): Support BTRACE_FORMAT_PT.
3179 (handle_btrace_enable_pt): New.
3180 (handle_btrace_general_set): Support "pt".
3181 (handle_btrace_conf_general_set): Support "pt:size".
3182
3183 2015-06-29 Pierre Langlois <pierre.langlois@arm.com>
3184
3185 * linux-aarch64-low.c (aarch64_supports_z_point_type): Enable for
3186 Z_PACKET_SW_BP.
3187
3188 2015-06-29 Pierre Langlois <pierre.langlois@arm.com>
3189
3190 * linux-aarch64-low.c: Remove comment about endianness.
3191 (aarch64_breakpoint): Change type to gdb_byte[]. Set to "brk #0".
3192 (aarch64_breakpoint_at): Change type of insn to gdb_byte[]. Use
3193 memcmp.
3194
3195 2015-06-24 Gary Benson <gbenson@redhat.com>
3196
3197 * linux-i386-ipa.c (stdint.h): Do not include.
3198 * lynx-i386-low.c (stdint.h): Likewise.
3199 * lynx-ppc-low.c (stdint.h): Likewise.
3200 * mem-break.c (stdint.h): Likewise.
3201 * thread-db.c (stdint.h): Likewise.
3202 * tracepoint.c (stdint.h): Likewise.
3203 * win32-low.c (stdint.h): Likewise.
3204
3205 2015-06-18 Simon Marchi <simon.marchi@ericsson.com>
3206
3207 * server.c (write_qxfer_response): Update call to
3208 remote_escape_output.
3209
3210 2015-06-15 Aleksandar Ristovski <aristovski@qnx.com
3211 Jan Kratochvil <jan.kratochvil@redhat.com>
3212
3213 Merge multiple hex conversions.
3214 * gdbreplay.c (tohex): Rename to 'fromhex'.
3215 (logchar): Use fromhex.
3216
3217 2015-06-10 Jan Kratochvil <jan.kratochvil@redhat.com>
3218
3219 * server.c (handle_qxfer_libraries): Set `version' attribute for
3220 <library-list>.
3221
3222 2015-06-10 Gary Benson <gbenson@redhat.com>
3223
3224 * target.h (struct target_ops) <multifs_open>: New field.
3225 <multifs_unlink>: Likewise.
3226 <multifs_readlink>: Likewise.
3227 * linux-low.c (nat/linux-namespaces.h): New include.
3228 (linux_target_ops): Initialize the_target->multifs_open,
3229 the_target->multifs_unlink and the_target->multifs_readlink.
3230 * hostio.h (hostio_handle_new_gdb_connection): New declaration.
3231 * hostio.c (hostio_fs_pid): New static variable.
3232 (hostio_handle_new_gdb_connection): New function.
3233 (handle_setfs): Likewise.
3234 (handle_open): Use the_target->multifs_open as appropriate.
3235 (handle_unlink): Use the_target->multifs_unlink as appropriate.
3236 (handle_readlink): Use the_target->multifs_readlink as
3237 appropriate.
3238 (handle_vFile): Handle vFile:setfs packets.
3239 * server.c (handle_query): Call hostio_handle_new_gdb_connection
3240 after target_handle_new_gdb_connection.
3241
3242 2015-06-10 Gary Benson <gbenson@redhat.com>
3243
3244 * configure.ac (AC_CHECK_FUNCS): Add setns.
3245 * config.in: Regenerate.
3246 * configure: Likewise.
3247 * Makefile.in (SFILES): Add nat/linux-namespaces.c.
3248 (linux-namespaces.o): New rule.
3249 * configure.srv (srv_linux_obj): Add linux-namespaces.o.
3250
3251 2015-06-09 Gary Benson <gbenson@redhat.com>
3252
3253 * hostio.c (handle_open): Process mode argument with
3254 fileio_to_host_mode.
3255
3256 2015-06-01 Yao Qi <yao.qi@linaro.org>
3257
3258 * linux-s390-low.c (PTRACE_GETREGSET, PTRACE_SETREGSET): Remove.
3259 * linux-x86-low.c: Likewise.
3260
3261 2015-05-28 Don Breazeal <donb@codesourcery.com>
3262
3263 * linux-low.c (handle_extended_wait): Initialize
3264 thread_info.last_resume_kind for new fork children.
3265
3266 2015-05-15 Pedro Alves <palves@redhat.com>
3267
3268 * target.h (target_handle_new_gdb_connection): Rewrite using if
3269 wrapped in do/while.
3270
3271 2015-05-14 Joel Brobecker <brobecker@adacore.com>
3272
3273 * configure.ac: Add prfpregset_t BFD_HAVE_SYS_PROCFS_TYPE check.
3274 * configure, config.in: Regenerate.
3275 * gdb_proc_service.h [HAVE_PRFPREGSET_T] (prfpregset_t):
3276 Declare typedef.
3277
3278 2015-05-12 Don Breazeal <donb@codesourcery.com>
3279
3280 * linux-low.c (handle_extended_wait): Handle PTRACE_EVENT_FORK and
3281 PTRACE_EVENT_VFORK_DONE.
3282 (linux_low_ptrace_options, extended_event_reported): Add vfork
3283 events.
3284 * remote-utils.c (prepare_resume_reply): New stop reasons "vfork"
3285 and "vforkdone" for RSP 'T' Stop Reply Packet.
3286 * server.h (report_vfork_events): Declare
3287 global variable.
3288
3289 2015-05-12 Don Breazeal <donb@codesourcery.com>
3290
3291 * linux-aarch64-low.c (aarch64_linux_new_fork): New function.
3292 (the_low_target) <new_fork>: Initialize new member.
3293 * linux-arm-low.c (arm_new_fork): New function.
3294 (the_low_target) <new_fork>: Initialize new member.
3295 * linux-low.c (handle_extended_wait): Call new target function
3296 new_fork.
3297 * linux-low.h (struct linux_target_ops) <new_fork>: New member.
3298 * linux-mips-low.c (mips_add_watchpoint): New function
3299 extracted from mips_insert_point.
3300 (the_low_target) <new_fork>: Initialize new member.
3301 (mips_linux_new_fork): New function.
3302 (mips_insert_point): Call mips_add_watchpoint.
3303 * linux-x86-low.c (x86_linux_new_fork): New function.
3304 (the_low_target) <new_fork>: Initialize new member.
3305
3306 2015-05-12 Don Breazeal <donb@codesourcery.com>
3307
3308 * linux-low.c (handle_extended_wait): Implement return value,
3309 rename argument 'event_child' to 'event_lwp', handle
3310 PTRACE_EVENT_FORK, call internal_error for unrecognized event.
3311 (linux_low_ptrace_options): New function.
3312 (linux_low_filter_event): Call linux_low_ptrace_options,
3313 use different argument fo linux_enable_event_reporting,
3314 use return value from handle_extended_wait.
3315 (extended_event_reported): New function.
3316 (linux_wait_1): Call extended_event_reported and set
3317 status to report fork events.
3318 (linux_write_memory): Add pid to debug message.
3319 (reset_lwp_ptrace_options_callback): New function.
3320 (linux_handle_new_gdb_connection): New function.
3321 (linux_target_ops): Initialize new structure member.
3322 * linux-low.h (struct lwp_info) <waitstatus>: New member.
3323 * lynx-low.c: Initialize new structure member.
3324 * remote-utils.c (prepare_resume_reply): Implement stop reason
3325 "fork" for "T" stop message.
3326 * server.c (handle_query): Call handle_new_gdb_connection.
3327 * server.h (report_fork_events): Declare global flag.
3328 * target.h (struct target_ops) <handle_new_gdb_connection>:
3329 New member.
3330 (target_handle_new_gdb_connection): New macro.
3331 * win32-low.c: Initialize new structure member.
3332
3333 2015-05-12 Don Breazeal <donb@codesourcery.com>
3334
3335 * mem-break.c (APPEND_TO_LIST): Define macro.
3336 (clone_agent_expr): New function.
3337 (clone_one_breakpoint): New function.
3338 (clone_all_breakpoints): New function.
3339 * mem-break.h: Declare new functions.
3340
3341 2015-05-12 Don Breazeal <donb@codesourcery.com>
3342
3343 * linux-low.c (linux_supports_fork_events): New function.
3344 (linux_supports_vfork_events): New function.
3345 (linux_target_ops): Initialize new structure members.
3346 (initialize_low): Call linux_check_ptrace_features.
3347 * lynx-low.c (lynx_target_ops): Initialize new structure
3348 members.
3349 * server.c (report_fork_events, report_vfork_events):
3350 New global flags.
3351 (handle_query): Add new features to qSupported packet and
3352 response.
3353 (captured_main): Initialize new global variables.
3354 * target.h (struct target_ops) <supports_fork_events>:
3355 New member.
3356 <supports_vfork_events>: New member.
3357 (target_supports_fork_events): New macro.
3358 (target_supports_vfork_events): New macro.
3359 * win32-low.c (win32_target_ops): Initialize new structure
3360 members.
3361
3362 2015-05-12 Gary Benson <gbenson@redhat.com>
3363
3364 * server.c (handle_qxfer_exec_file): Use current process
3365 if annex is empty.
3366
3367 2015-05-08 Sandra Loosemore <sandra@codesourcery.com>
3368
3369 * linux-nios2-low.c: Include elf/common.h. Adjust comments.
3370 Remove HAVE_PTRACE_GETREGS conditionals.
3371 (nios2_regsets): Use PTRACE_GETREGSET and PTRACE_SETREGSET
3372 instead of PTRACE_GETREGS and PTRACE_SETREGS.
3373
3374 2015-05-08 Yao Qi <yao.qi@linaro.org>
3375
3376 * linux-low.c (linux_supports_conditional_breakpoints): New
3377 function.
3378 (linux_target_ops): Install new target method.
3379 * lynx-low.c (lynx_target_ops): Install NULL hook for
3380 supports_conditional_breakpoints.
3381 * nto-low.c (nto_target_ops): Likewise.
3382 * spu-low.c (spu_target_ops): Likewise.
3383 * win32-low.c (win32_target_ops): Likewise.
3384 * server.c (handle_query): Check
3385 target_supports_conditional_breakpoints.
3386 * target.h (struct target_ops) <supports_conditional_breakpoints>:
3387 New field.
3388 (target_supports_conditional_breakpoints): New macro.
3389
3390 2015-05-06 Pedro Alves <palves@redhat.com>
3391
3392 PR server/18081
3393 * server.c (start_inferior): If the process exits, mourn it.
3394
3395 2015-04-21 Gary Benson <gbenson@redhat.com>
3396
3397 * hostio.c (fileio_open_flags_to_host): Factored out to
3398 fileio_to_host_openflags in common/fileio.c. Single use
3399 updated.
3400
3401 2015-04-17 Max Filippov <jcmvbkbc@gmail.com>
3402
3403 * linux-xtensa-low.c (xtensa_fill_gregset)
3404 (xtensa_store_gregset): Check XCHAL_HAVE_LOOPS instead of
3405 XCHAL_HAVE_LOOP.
3406
3407 2015-04-17 Max Filippov <jcmvbkbc@gmail.com>
3408
3409 * linux-xtensa-low.c (xtensa_usrregs_info): Remove.
3410 (regs_info): Replace usrregs pointer with NULL.
3411
3412 2015-04-17 Gary Benson <gbenson@redhat.com>
3413
3414 * target.h (struct target_ops) <pid_to_exec_file>: New field.
3415 * linux-low.c (linux_target_ops): Initialize pid_to_exec_file.
3416 * server.c (handle_qxfer_exec_file): New function.
3417 (qxfer_packets): Add exec-file entry.
3418 (handle_query): Report qXfer:exec-file:read as supported packet.
3419
3420 2015-04-14 Romain Naour <romain.naour@openwide.fr> (tiny change)
3421
3422 * linux-low.c (linux_read_offsets): Remove get_thread_lwp.
3423
3424 2015-04-09 Gary Benson <gbenson@redhat.com>
3425
3426 * hostio-errno.c (errno_to_fileio_error): Remove function.
3427 Update caller to use remote_fileio_to_fio_error.
3428
3429 2015-04-09 Yao Qi <yao.qi@linaro.org>
3430
3431 * linux-low.c (linux_insert_point): Call
3432 insert_memory_breakpoint if TYPE is raw_bkpt_type_sw.
3433 (linux_remove_point): Call remove_memory_breakpoint if type is
3434 raw_bkpt_type_sw.
3435 * linux-x86-low.c (x86_insert_point): Don't call
3436 insert_memory_breakpoint.
3437 (x86_remove_point): Don't call remove_memory_breakpoint.
3438
3439 2015-04-01 Pedro Alves <palves@redhat.com>
3440 Cleber Rosa <crosa@redhat.com>
3441
3442 * server.c (gdbserver_usage): Reorganize and extend the usage
3443 message.
3444
3445 2015-03-24 Pedro Alves <palves@redhat.com>
3446
3447 * linux-low.c (check_stopped_by_breakpoint): Tweak debug log
3448 output. Also dump TRAP_TRACE.
3449 (linux_low_filter_event): In debug output, distinguish a
3450 resume_stop SIGSTOP from a delayed SIGSTOP.
3451
3452 2015-03-24 Gary Benson <gbenson@redhat.com>
3453
3454 * linux-x86-low.c (x86_linux_new_thread): Moved to
3455 nat/x86-linux.c.
3456 (x86_linux_prepare_to_resume): Likewise.
3457
3458 2015-03-24 Gary Benson <gbenson@redhat.com>
3459
3460 * Makefile.in (x86-linux-dregs.o): New rule.
3461 * configure.srv: Add x86-linux-dregs.o to relevant targets.
3462 * linux-x86-low.c: Include nat/x86-linux-dregs.h.
3463 (u_debugreg_offset): Moved to nat/x86-linux-dregs.c.
3464 (x86_linux_dr_get): Likewise.
3465 (x86_linux_dr_set): Likewise.
3466 (update_debug_registers_callback): Likewise.
3467 (x86_linux_dr_set_addr): Likewise.
3468 (x86_linux_dr_get_addr): Likewise.
3469 (x86_linux_dr_set_control): Likewise.
3470 (x86_linux_dr_get_control): Likewise.
3471 (x86_linux_dr_get_status): Likewise.
3472 (x86_linux_update_debug_registers): Likewise.
3473
3474 2015-03-24 Gary Benson <gbenson@redhat.com>
3475
3476 * linux-x86-low.c (x86_linux_update_debug_registers):
3477 New function, factored out from...
3478 (x86_linux_prepare_to_resume): ...this.
3479
3480 2015-03-24 Gary Benson <gbenson@redhat.com>
3481
3482 * linux-x86-low.c (x86_linux_dr_get): Update comments.
3483 (x86_linux_dr_set): Likewise.
3484 (update_debug_registers_callback): Likewise.
3485 (x86_linux_dr_set_addr): Likewise.
3486 (x86_linux_dr_get_addr): Likewise.
3487 (x86_linux_dr_set_control): Likewise.
3488 (x86_linux_dr_get_control): Likewise.
3489 (x86_linux_dr_get_status): Likewise.
3490 (x86_linux_prepare_to_resume): Likewise.
3491
3492 2015-03-24 Gary Benson <gbenson@redhat.com>
3493
3494 * linux-x86-low.c (x86_linux_dr_get): Add assertion.
3495 Use perror_with_name. Pass string through gettext.
3496 (x86_linux_dr_set): Likewise.
3497
3498 2015-03-24 Gary Benson <gbenson@redhat.com>
3499
3500 * linux-x86-low.c (x86_dr_low_set_addr): Rename to...
3501 (x86_linux_dr_set_addr): ...this.
3502 (x86_dr_low_get_addr): Rename to...
3503 (x86_linux_dr_get_addr): ...this.
3504 (x86_dr_low_set_control): Rename to...
3505 (x86_linux_dr_set_control): ...this.
3506 (x86_dr_low_get_control): Rename to...
3507 (x86_linux_dr_get_control): ...this.
3508 (x86_dr_low_get_status): Rename to...
3509 (x86_linux_dr_get_status): ...this.
3510 (x86_dr_low): Update with new function names.
3511
3512 2015-03-24 Gary Benson <gbenson@redhat.com>
3513
3514 * Makefile.in (x86-linux.o): New rule.
3515 * configure.srv: Add x86-linux.o to relevant targets.
3516 * linux-low.c (lwp_set_arch_private_info): New function.
3517 (lwp_arch_private_info): Likewise.
3518 * linux-x86-low.c: Include nat/x86-linux.h.
3519 (arch_lwp_info): Removed structure.
3520 (update_debug_registers_callback):
3521 Use lwp_set_debug_registers_changed.
3522 (x86_linux_prepare_to_resume): Use lwp_debug_registers_changed
3523 and lwp_set_debug_registers_changed.
3524 (x86_linux_new_thread): Use lwp_set_debug_registers_changed.
3525
3526 2015-03-24 Gary Benson <gbenson@redhat.com>
3527
3528 * linux-low.h (linux_target_ops) <new_thread>: Changed signature.
3529 * linux-arm-low.c (arm_new_thread): Likewise.
3530 * linux-aarch64-low.c (aarch64_linux_new_thread): Likewise.
3531 * linux-mips-low.c (mips_linux_new_thread): Likewise.
3532 * linux-x86-low.c (x86_linux_new_thread): Likewise.
3533 * linux-low.c (add_lwp): Update the_low_target.new_thread call.
3534
3535 2015-03-24 Gary Benson <gbenson@redhat.com>
3536
3537 * linux-low.c (ptid_of_lwp): New function.
3538 (lwp_is_stopped): Likewise.
3539 (lwp_stop_reason): Likewise.
3540 * linux-x86-low.c (update_debug_registers_callback):
3541 Use lwp_is_stopped.
3542 (x86_linux_prepare_to_resume): Use ptid_of_lwp and
3543 lwp_stop_reason.
3544
3545 2015-03-24 Gary Benson <gbenson@redhat.com>
3546
3547 * linux-low.h (linux_stop_lwp): Remove declaration.
3548
3549 2015-03-24 Gary Benson <gbenson@redhat.com>
3550
3551 * linux-low.h: Include nat/linux-nat.h.
3552 * linux-low.c (iterate_over_lwps_args): New structure.
3553 (iterate_over_lwps_filter): New function.
3554 (iterate_over_lwps): Likewise.
3555 * linux-x86-low.c (update_debug_registers_callback):
3556 Update signature to what iterate_over_lwps expects.
3557 Remove PID check that iterate_over_lwps now performs.
3558 (x86_dr_low_set_addr): Use iterate_over_lwps.
3559 (x86_dr_low_set_control): Likewise.
3560
3561 2015-03-24 Gary Benson <gbenson@redhat.com>
3562
3563 * linux-x86-low.c (x86_debug_reg_state): New function.
3564 (x86_linux_prepare_to_resume): Use the above.
3565
3566 2015-03-24 Gary Benson <gbenson@redhat.com>
3567
3568 * linux-low.c (current_lwp_ptid): New function.
3569 * linux-x86-low.c: Include nat/linux-nat.h.
3570 (x86_dr_low_get_addr): Use current_lwp_ptid.
3571 (x86_dr_low_get_control): Likewise.
3572 (x86_dr_low_get_status): Likewise.
3573
3574 2015-03-20 Pedro Alves <palves@redhat.com>
3575
3576 * tracepoint.c (cmd_qtstatus): Make "str" const.
3577
3578 2015-03-20 Pedro Alves <palves@redhat.com>
3579
3580 * server.c (handle_general_set): Make "req_str" const.
3581
3582 2015-03-19 Pedro Alves <palves@redhat.com>
3583
3584 * linux-low.c (linux_resume_one_lwp): Rename to ...
3585 (linux_resume_one_lwp_throw): ... this. Don't handle ESRCH here,
3586 instead call perror_with_name.
3587 (check_ptrace_stopped_lwp_gone): New function.
3588 (linux_resume_one_lwp): Reimplement as wrapper around
3589 linux_resume_one_lwp_throw that swallows errors if the LWP is
3590 gone.
3591
3592 2015-03-19 Pedro Alves <palves@redhat.com>
3593
3594 * linux-low.c (count_events_callback, select_event_lwp_callback):
3595 No longer check whether the thread has resume_stop as last resume
3596 kind.
3597
3598 2015-03-19 Pedro Alves <palves@redhat.com>
3599
3600 * linux-low.c (count_events_callback, select_event_lwp_callback):
3601 Use the lwp's status_pending_p field, not the thread's.
3602
3603 2015-03-19 Pedro Alves <palves@redhat.com>
3604
3605 * linux-low.c (select_event_lwp_callback): Update comments to
3606 no longer mention SIGTRAP.
3607
3608 2015-03-18 Gary Benson <gbenson@redhat.com>
3609
3610 * server.c (handle_query): Do not report vFile:fstat as supported.
3611
3612 2015-03-11 Gary Benson <gbenson@redhat.com>
3613
3614 * hostio.c (sys/types.h): New include.
3615 (sys/stat.h): Likewise.
3616 (common-remote-fileio.h): Likewise.
3617 (handle_fstat): New function.
3618 (handle_vFile): Handle vFile:fstat packets.
3619
3620 2015-03-11 Gary Benson <gbenson@redhat.com>
3621
3622 * configure.ac (AC_CHECK_MEMBERS): Add checks for
3623 struct stat.st_blocks and struct stat.st_blksize.
3624 * configure: Regenerate.
3625 * config.in: Likewise.
3626 * Makefile.in (SFILES): Add common/common-remote-fileio.c.
3627 (OBS): Add common-remote-fileio.o.
3628 (common-remote-fileio.o): New rule.
3629
3630 2015-03-09 Pedro Alves <palves@redhat.com>
3631
3632 * tracepoint.c (gdb_agent_helper_thread): Cast '&sockaddr' to
3633 'struct sockaddr' pointer in 'accept' call.
3634
3635 2015-03-09 Pedro Alves <palves@redhat.com>
3636
3637 Revert:
3638 2015-03-07 Pedro Alves <palves@redhat.com>
3639 * gdbreplay.c: No longer include <netinet/in.h>, <sys/socket.h>,
3640 or <winsock2.h> here. Instead include "gdb_socket.h".
3641 (remote_open): Use union gdb_sockaddr_u.
3642 * remote-utils.c: No longer include <netinet/in.h>, <sys/socket.h>
3643 or <winsock2.h> here. Instead include "gdb_socket.h".
3644 (handle_accept_event, remote_prepare): Use union gdb_sockaddr_u.
3645 * tracepoint.c: Include "gdb_socket.h" instead of <sys/socket.h>
3646 or <sys/un.h>.
3647 (init_named_socket, gdb_agent_helper_thread): Use union
3648 gdb_sockaddr_u.
3649
3650 2015-03-07 Pedro Alves <palves@redhat.com>
3651
3652 * configure.ac (build_warnings): Move
3653 -Wdeclaration-after-statement to the C-specific set.
3654 * configure: Regenerate.
3655
3656 2015-03-07 Pedro Alves <palves@redhat.com>
3657
3658 * gdbreplay.c: No longer include <netinet/in.h>, <sys/socket.h>,
3659 or <winsock2.h> here. Instead include "gdb_socket.h".
3660 (remote_open): Use union gdb_sockaddr_u.
3661 * remote-utils.c: No longer include <netinet/in.h>, <sys/socket.h>
3662 or <winsock2.h> here. Instead include "gdb_socket.h".
3663 (handle_accept_event, remote_prepare): Use union gdb_sockaddr_u.
3664 * tracepoint.c: Include "gdb_socket.h" instead of <sys/socket.h>
3665 or <sys/un.h>.
3666 (init_named_socket, gdb_agent_helper_thread): Use union
3667 gdb_sockaddr_u.
3668
3669 2015-03-07 Pedro Alves <palves@redhat.com>
3670
3671 Adjust all callers of TRY_CATCH to use TRY/CATCH/END_CATCH
3672 instead.
3673
3674 2015-03-06 Yao Qi <yao.qi@linaro.org>
3675
3676 * linux-aarch64-low.c (aarch64_insert_point): Use
3677 show_debug_regs as a boolean.
3678 (aarch64_remove_point): Likewise.
3679
3680 2015-03-05 Pedro Alves <palves@redhat.com>
3681
3682 * lynx-low.c (lynx_target_ops): Install NULL hooks for
3683 stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
3684 stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint.
3685 * nto-low.c (nto_target_ops): Likewise.
3686 * spu-low.c (spu_target_ops): Likewise.
3687 * win32-low.c (win32_target_ops): Likewise.
3688
3689 2015-03-04 Pedro Alves <palves@redhat.com>
3690
3691 * linux-low.c (check_stopped_by_breakpoint) [USE_SIGTRAP_SIGINFO]:
3692 Decide whether a breakpoint triggered based on the SIGTRAP's
3693 siginfo.si_code.
3694 (thread_still_has_status_pending_p) [USE_SIGTRAP_SIGINFO]: Don't check whether a
3695 breakpoint is inserted if relying on SIGTRAP's siginfo.si_code.
3696 (linux_low_filter_event): Check for breakpoints before checking
3697 watchpoints.
3698 (linux_wait_1): Don't re-increment the PC if relying on SIGTRAP's
3699 siginfo.si_code.
3700 (linux_stopped_by_sw_breakpoint)
3701 (linux_supports_stopped_by_sw_breakpoint)
3702 (linux_stopped_by_hw_breakpoint)
3703 (linux_supports_stopped_by_hw_breakpoint): New functions.
3704 (linux_target_ops): Install new target methods.
3705
3706 2015-03-04 Pedro Alves <palves@redhat.com>
3707
3708 * remote-utils.c (prepare_resume_reply): Report swbreak/hbreak.
3709 * server.c (swbreak_feature, hwbreak_feature): New globals.
3710 (handle_query) <qSupported>: Handle "swbreak+" and "hwbreak+".
3711 (captured_main): Clear swbreak_feature and hwbreak_feature.
3712 * server.h (swbreak_feature, hwbreak_feature): Declare.
3713 * target.h (struct target_ops) <stopped_by_sw_breakpoint,
3714 supports_stopped_by_sw_breakpoint, stopped_by_hw_breakpoint,
3715 supports_stopped_by_hw_breakpoint>: New fields.
3716 (target_supports_stopped_by_sw_breakpoint)
3717 (target_stopped_by_sw_breakpoint)
3718 (target_supports_stopped_by_hw_breakpoint)
3719 (target_stopped_by_hw_breakpoint): Declare.
3720
3721 2015-03-04 Pedro Alves <palves@redhat.com>
3722
3723 enum lwp_stop_reason -> enum target_stop_reason
3724 * linux-low.c (check_stopped_by_breakpoint): Adjust.
3725 (thread_still_has_status_pending_p, check_stopped_by_watchpoint)
3726 (linux_wait_1, stuck_in_jump_pad_callback)
3727 (move_out_of_jump_pad_callback, linux_resume_one_lwp)
3728 (linux_stopped_by_watchpoint):
3729 * linux-low.h (enum lwp_stop_reason): Delete.
3730 (struct lwp_info) <stop_reason>: Now an enum target_stop_reason.
3731 * linux-x86-low.c (x86_linux_prepare_to_resume): Adjust.
3732
3733 2015-03-04 Yao Qi <yao.qi@linaro.org>
3734
3735 * Makefile.in (SFILES): Add linux-aarch64-low.c.
3736
3737 2015-03-03 Gary Benson <gbenson@redhat.com>
3738
3739 * hostio.c (handle_vFile): Fix prefix lengths.
3740
3741 2015-03-03 Markus Metzger <markus.t.metzger@intel.com>
3742
3743 * linux-low.c (linux_low_enable_btrace): Do not overwrite non-zero
3744 ptr_bits.
3745
3746 2015-03-02 Andreas Arnez <arnez@linux.vnet.ibm.com>
3747
3748 * Makefile.in (s390-vx-linux64.c, s390-tevx-linux64.c)
3749 (s390x-vx-linux64.c, s390x-tevx-linux64.c): New rules.
3750 (clean): Add "rm -f" for above C files.
3751 * configure.srv (srv_regobj): Add s390-vx-linux64.o,
3752 s390-tevx-linux64.o, s390x-vx-linux64.o, and s390x-tevx-linux64.o.
3753 (srv_xmlfiles): Add s390-vx-linux64.xml, s390-tevx-linux64.xml,
3754 s390x-vx-linux64.xml, s390x-tevx-linux64.xml, and s390-vx.xml.
3755 * linux-s390-low.c (HWCAP_S390_VX): New macro.
3756 (init_registers_s390_vx_linux64, init_registers_s390_tevx_linux64)
3757 (init_registers_s390x_vx_linux64)
3758 (init_registers_s390x_tevx_linux64)
3759 (tdesc_s390_vx_linux64, tdesc_s390_tevx_linux64)
3760 (tdesc_s390x_vx_linux64, tdesc_s390x_tevx_linux64): New extern
3761 declarations.
3762 (s390_fill_vxrs_low, s390_store_vxrs_low, s390_fill_vxrs_high)
3763 (s390_store_vxrs_high): New functions.
3764 (s390_regsets): Add entries for NT_S390_VXRS_LOW and
3765 NT_S390_VXRS_HIGH.
3766 (s390_arch_setup): Add logic for selecting one of the new target
3767 descriptions. Activate the new vector regsets if applicable.
3768 (initialize_low_arch): Also invoke init_registers_s390_vx_linux64,
3769 init_registers_s390_tevx_linux64, init_registers_s390x_vx_linux64,
3770 and init_registers_s390x_tevx_linux64.
3771
3772 2015-03-01 Pedro Alves <palves@redhat.com>
3773
3774 * linux-i386-ipa.c (gdb_agent_get_raw_reg): Constify 'raw_regs'
3775 parameter.
3776
3777 2015-02-27 Pedro Alves <palves@redhat.com>
3778
3779 * linux-x86-low.c (u_debugreg_offset): New function.
3780 (x86_linux_dr_get, x86_linux_dr_set): Use it.
3781
3782 2015-02-27 Pedro Alves <palves@redhat.com>
3783
3784 * gdb_proc_service.h: Wrap with EXTERN_C_PUSH/EXTERN_C_POP.
3785 [!HAVE_PROC_SERVICE_H] (struct ps_prochandle): Forward declare.
3786 [!HAVE_PROC_SERVICE_H] (ps_pdread, ps_pdwrite, ps_ptread)
3787 ps_ptwrite, ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
3788 (ps_lsetfpregs, ps_getpid)
3789 (ps_get_thread_area, ps_pglobal_lookup, ps_pstop, ps_pcontinue)
3790 (ps_lstop, ps_lcontinue, ps_lgetxregsize, ps_lgetxregs)
3791 (ps_lsetxregs, ps_plog): Declare.
3792
3793 2015-02-27 Pedro Alves <palves@redhat.com>
3794
3795 * linux-amd64-ipa.c (gdb_agent_get_raw_reg): Use
3796 IP_AGENT_EXPORT_FUNC.
3797 * linux-i386-ipa.c (gdb_agent_get_raw_reg): Use
3798 IP_AGENT_EXPORT_FUNC.
3799 * tracepoint.c (ATTR_USED, ATTR_NOINLINE, ATTR_CONSTRUCTOR)
3800 (IP_AGENT_EXPORT): Delete.
3801 (gdb_tp_heap_buffer, gdb_jump_pad_buffer, gdb_jump_pad_buffer_end)
3802 (gdb_trampoline_buffer, gdb_trampoline_buffer_end)
3803 (gdb_trampoline_buffer_error, collecting, gdb_collect)
3804 (stop_tracing, flush_trace_buffer, about_to_request_buffer_space)
3805 (trace_buffer_is_full, stopping_tracepoint, expr_eval_result)
3806 (error_tracepoint, tracepoints, tracing, trace_buffer_ctrl)
3807 (trace_buffer_ctrl_curr, trace_buffer_lo, trace_buffer_hi)
3808 (traceframe_read_count, traceframe_write_count)
3809 (traceframes_created, trace_state_variables, get_raw_reg)
3810 (get_trace_state_variable_value, set_trace_state_variable_value)
3811 (ust_loaded, helper_thread_id, cmd_buf): Use
3812 IPA_SYM_EXPORTED_NAME.
3813 (stop_tracing, flush_trace_buffer): Use IP_AGENT_EXPORT_FUNC.
3814 (tracepoints) Use IP_AGENT_EXPORT_VAR.
3815 (stopping_tracepoint, trace_buffer_is_full, expr_eval_result): Use
3816 IP_AGENT_EXPORT_VAR and wrap in EXTERN_C_PUSH/EXTERN_C_POP.
3817 (last_tracepoint): Move into !IN_PROCESS_AGENT block.
3818 (error_tracepoint): Use IP_AGENT_EXPORT_VAR and wrap in
3819 EXTERN_C_PUSH/EXTERN_C_POP.
3820 (trace_state_variables): Use IP_AGENT_EXPORT_VAR.
3821 (trace_buffer_lo, trace_buffer_hi): Use IP_AGENT_EXPORT_VAR and
3822 wrap in EXTERN_C_PUSH/EXTERN_C_POP.
3823 (trace_buffer_ctrl, trace_buffer_ctrl_curr)
3824 (traceframe_write_count, traceframe_read_count)
3825 (traceframes_created, tracing): Use IP_AGENT_EXPORT_VAR.
3826 (about_to_request_buffer_space, get_trace_state_variable_value)
3827 (set_trace_state_variable_value): Use IP_AGENT_EXPORT_FUNC.
3828 (collecting): Use IP_AGENT_EXPORT_VAR and wrap in
3829 EXTERN_C_PUSH/EXTERN_C_POP.
3830 (gdb_collect): Use IP_AGENT_EXPORT_FUNC.
3831 (ust_loaded, cmd_buf): Use IP_AGENT_EXPORT_VAR.
3832 (helper_thread_id, gdb_agent_capability): Use IP_AGENT_EXPORT_VAR
3833 and wrap in EXTERN_C_PUSH/EXTERN_C_POP.
3834 (gdb_tp_heap_buffer, gdb_jump_pad_buffer, gdb_jump_pad_buffer_end)
3835 (gdb_trampoline_buffer, gdb_trampoline_buffer_end)
3836 (gdb_trampoline_buffer_error): Use IP_AGENT_EXPORT_VAR.
3837 * tracepoint.h (ATTR_USED, ATTR_NOINLINE, EXPORTED_SYMBOL):
3838 Define.
3839 (IP_AGENT_EXPORT_FUNC, IP_AGENT_EXPORT_VAR)
3840 (IP_AGENT_EXPORT_VAR_DECL): Define.
3841 (tracing): Declare.
3842 (gdb_agent_get_raw_reg): Declare.
3843
3844 2015-02-27 Tom Tromey <tromey@redhat.com>
3845 Pedro Alves <palves@redhat.com>
3846
3847 Rename symbols whose names are reserved C++ keywords throughout.
3848
3849 2015-02-27 Pedro Alves <palves@redhat.com>
3850
3851 * Makefile.in (COMPILER): New, get it from autoconf.
3852 (CXX): Get from autoconf instead.
3853 (COMPILE.pre): Use COMPILER.
3854 (CC-LD): Rename to ...
3855 (CC_LD): ... this. Use COMPILER.
3856 (gdbserver$(EXEEXT), gdbreplay$(EXEEXT), $(IPA_LIB)): Adjust.
3857 (CXX_FOR_TARGET): Default to g++ instead of gcc.
3858 * acinclude.m4: Include build-with-cxx.m4.
3859 * configure.ac: Call AC_PROG_CXX and GDB_AC_BUILD_WITH_CXX.
3860 Disable -Werror by default if building in C++ mode.
3861 (build_warnings): Add -Wno-sign-compare, -Wno-write-strings and
3862 -Wno-narrowing in C++ mode. Run supported-warning-flags tests with
3863 the C++ compiler. Save/restore CXXFLAGS too.
3864 * configure: Regenerate.
3865
3866 2015-02-27 Pedro Alves <palves@redhat.com>
3867
3868 * acinclude.m4: Include libiberty.m4.
3869 * configure.ac: Call libiberty_INIT.
3870 * config.in, configure: Regenerate.
3871
3872 2015-02-26 Pedro Alves <palves@redhat.com>
3873
3874 * linux-low.c (linux_wait_1): When incrementing the PC past a
3875 program breakpoint always use the_low_target.breakpoint_len as
3876 increment, rather than the maximum between that and
3877 the_low_target.decr_pc_after_break.
3878
3879 2015-02-23 Pedro Alves <palves@redhat.com>
3880
3881 * linux-low.c (check_stopped_by_breakpoint): Don't check if the
3882 thread was doing a step-over; always adjust the PC if
3883 we stepped over a permanent breakpoint.
3884 (linux_wait_1): If we stepped over breakpoint that was on top of a
3885 permanent breakpoint, manually advance the PC past it.
3886
3887 2015-02-23 Pedro Alves <palves@redhat.com>
3888
3889 * linux-x86-low.c (REGSIZE): Define in both 32-bit and 64-bit
3890 modes.
3891 (x86_fill_gregset, x86_store_gregset): Use it when handling
3892 $orig_eax.
3893
3894 2015-02-20 Pedro Alves <palves@redhat.com>
3895
3896 * thread-db.c: Include "nat/linux-procfs.h".
3897 (thread_db_init): Skip listing new threads if the kernel supports
3898 PTRACE_EVENT_CLONE and /proc/PID/task/ is accessible.
3899
3900 2015-02-20 Pedro Alves <palves@redhat.com>
3901
3902 * linux-low.c (status_pending_p_callback): Use ptid_match.
3903
3904 2015-02-19 Antoine Tremblay <antoine.tremblay@ericsson.com>
3905
3906 PR breakpoints/16812
3907 * linux-low.c (wstatus_maybe_breakpoint): Remove.
3908 (linux_low_filter_event): Update wstatus_maybe_breakpoint name.
3909 (linux_wait_1): Report SIGTRAP,SIGILL,SIGSEGV.
3910
3911 2015-02-10 Antoine Tremblay <antoine.tremblay@ericsson.com>
3912
3913 PR breakpoints/15956
3914 * tracepoint.c (cmd_qtinit): Add check for current_thread.
3915
3916 2015-02-09 Markus Metzger <markus.t.metzger@intel.com>
3917
3918 * linux-low.c (linux_low_btrace_conf): Print size.
3919 * server.c (handle_btrace_conf_general_set): New.
3920 (hanle_general_set): Call handle_btrace_conf_general_set.
3921 (handle_query): Report Qbtrace-conf:bts:size as supported.
3922
3923 2015-02-09 Markus Metzger <markus.t.metzger@intel.com>
3924
3925 * linux-low.c (linux_low_enable_btrace): Update parameters.
3926 (linux_low_btrace_conf): New.
3927 (linux_target_ops)<to_btrace_conf>: Initialize.
3928 * server.c (current_btrace_conf): New.
3929 (handle_btrace_enable): Rename to ...
3930 (handle_btrace_enable_bts): ... this. Pass &current_btrace_conf
3931 to target_enable_btrace. Update comment. Update users.
3932 (handle_qxfer_btrace_conf): New.
3933 (qxfer_packets): Add btrace-conf entry.
3934 (handle_query): Report qXfer:btrace-conf:read as supported packet.
3935 * target.h (target_ops)<enable_btrace>: Update parameters and comment.
3936 (target_ops)<read_btrace_conf>: New.
3937 (target_enable_btrace): Update parameters.
3938 (target_read_btrace_conf): New.
3939
3940 2015-02-09 Markus Metzger <markus.t.metzger@intel.com>
3941
3942 * server.c (handle_btrace_general_set): Remove call to
3943 target_supports_btrace.
3944 (supported_btrace_packets): New.
3945 (handle_query): Call supported_btrace_packets.
3946 * target.h: include btrace-common.h.
3947 (btrace_target_info): Removed.
3948 (supports_btrace, target_supports_btrace): Update parameters.
3949
3950 2015-02-09 Markus Metzger <markus.t.metzger@intel.com>
3951
3952 * Makefile.in (SFILES): Add common/btrace-common.c.
3953 (OBS): Add common/btrace-common.o.
3954 (btrace-common.o): Add build rules.
3955 * linux-low: Include btrace-common.h.
3956 (linux_low_read_btrace): Use struct btrace_data. Call
3957 btrace_data_init and btrace_data_fini.
3958
3959 2015-02-06 Pedro Alves <palves@redhat.com>
3960
3961 * thread-db.c (find_new_threads_callback): Add debug output.
3962
3963 2015-02-04 Pedro Alves <palves@redhat.com>
3964
3965 * linux-low.c (handle_extended_wait): Don't resume LWPs here.
3966 (resume_stopped_resumed_lwps): New function.
3967 (linux_wait_for_event_filtered): Use it.
3968
3969 2015-01-15 Sergio Durigan Junior <sergiodj@redhat.com>
3970
3971 * Makefile.in (SFILES): Add linux-personality.c.
3972 (linux-personality.o): New rule.
3973 * configure.srv (srv_linux_obj): Add linux-personality.o to the
3974 list of objects to be built.
3975 * linux-low.c: Include nat/linux-personality.h.
3976 (linux_create_inferior): Remove code to disable address space
3977 randomization (moved to ../nat/linux-personality.c). Create
3978 cleanup to disable address space randomization.
3979
3980 2015-01-15 Sergio Durigan Junior <sergiodj@redhat.com>
3981
3982 * Makefile.in (posix-strerror.o): New rule.
3983 (mingw-strerror.o): Likewise.
3984 * configure: Regenerated.
3985 * configure.ac: Source file ../common/common.host. Initialize new
3986 variable srv_host_obs. Add srv_host_obs to GDBSERVER_DEPFILES.
3987
3988 2015-01-14 Yao Qi <yao@codesourcery.com>
3989
3990 * Makefile.in (SFILES): Add nat/ppc-linux.c.
3991 (ppc-linux.o): New rule.
3992 * configure.srv (powerpc*-*-linux*): Add ppc-linux.o.
3993 * configure.ac: AC_CHECK_FUNCS(getauxval).
3994 * config.in: Re-generated.
3995 * configure: Re-generated.
3996 * linux-ppc-low.c (ppc_arch_setup) [__powerpc64__]: Call
3997 ppc64_64bit_inferior_p
3998
3999 2015-01-14 Yao Qi <yao@codesourcery.com>
4000
4001 * linux-ppc-low.c: Include "nat/ppc-linux.h".
4002 (PPC_FEATURE_HAS_VSX): Move to nat/ppc-linux.h.
4003 (PPC_FEATURE_HAS_ALTIVEC, PPC_FEATURE_HAS_SPE): Likewise.
4004 (PT_ORIG_R3, PT_TRAP): Likewise.
4005 (PTRACE_GETVSXREGS, PTRACE_SETVSXREGS): Likewise.
4006 (PTRACE_GETVRREGS, PTRACE_SETVRREGS): Likewise.
4007 (PTRACE_GETEVRREGS, PTRACE_SETEVRREGS): Likewise.
4008
4009 2015-01-10 Joel Brobecker <brobecker@adacore.com>
4010
4011 * i387-fp.c (i387_cache_to_xsave): In look over
4012 num_avx512_zmmh_high_registers, replace use of struct i387_xsave
4013 zmmh_low_space field by use of zmmh_high_space.
4014
4015 2015-01-09 Pedro Alves <palves@redhat.com>
4016
4017 * linux-low.c (step_over_bkpt): Move higher up in the file.
4018 (handle_extended_wait): Don't store the stop_pc here.
4019 (get_stop_pc): Adjust comments and rename to ...
4020 (check_stopped_by_breakpoint): ... this. Record whether the LWP
4021 stopped for a software breakpoint or hardware breakpoint.
4022 (thread_still_has_status_pending_p): New function.
4023 (status_pending_p_callback): Use
4024 thread_still_has_status_pending_p. If the event is no longer
4025 interesting, resume the LWP.
4026 (handle_tracepoints): Add assert.
4027 (maybe_move_out_of_jump_pad): Remove cancel_breakpoints call.
4028 (wstatus_maybe_breakpoint): New function.
4029 (cancel_breakpoint): Delete function.
4030 (check_stopped_by_watchpoint): New function, factored out from
4031 linux_low_filter_event.
4032 (lp_status_maybe_breakpoint): Delete function.
4033 (linux_low_filter_event): Remove filter_ptid argument.
4034 Leave thread group exits pending here. Store the LWP's stop PC.
4035 Always leave events pending.
4036 (linux_wait_for_event_filtered): Pull all events out of the
4037 kernel, and leave them all pending.
4038 (count_events_callback, select_event_lwp_callback): Consider all
4039 events.
4040 (cancel_breakpoints_callback, linux_cancel_breakpoints): Delete.
4041 (select_event_lwp): Only give preference to the stepping LWP in
4042 all-stop mode. Adjust comments.
4043 (ignore_event): New function.
4044 (linux_wait_1): Delete 'retry' label. Use ignore_event. Remove
4045 references to cancel_breakpoints. Adjust to renames. Also give
4046 equal priority to all LWPs that have had events in non-stop mode.
4047 If reporting a software breakpoint event, unadjust the LWP's PC.
4048 (linux_wait): If linux_wait_1 returned an ignored event, retry.
4049 (stuck_in_jump_pad_callback, move_out_of_jump_pad_callback):
4050 Adjust.
4051 (linux_resume_one_lwp): Store the LWP's PC. Adjust.
4052 (resume_status_pending_p): Use thread_still_has_status_pending_p.
4053 (linux_stopped_by_watchpoint): Adjust.
4054 (linux_target_ops): Remove reference to linux_cancel_breakpoints.
4055 * linux-low.h (enum lwp_stop_reason): New.
4056 (struct lwp_info) <stop_pc>: Adjust comment.
4057 <stopped_by_watchpoint>: Delete field.
4058 <stop_reason>: New field.
4059 * linux-x86-low.c (x86_linux_prepare_to_resume): Adjust.
4060 * mem-break.c (software_breakpoint_inserted_here)
4061 (hardware_breakpoint_inserted_here): New function.
4062 * mem-break.h (software_breakpoint_inserted_here)
4063 (hardware_breakpoint_inserted_here): Declare.
4064 * target.h (struct target_ops) <cancel_breakpoints>: Remove field.
4065 (cancel_breakpoints): Delete.
4066 * tracepoint.c (clear_installed_tracepoints, stop_tracing)
4067 (upload_fast_traceframes): Remove references to
4068 cancel_breakpoints.
4069
4070 2015-01-09 Pedro Alves <palves@redhat.com>
4071
4072 * thread-db.c (find_new_threads_callback): Ignore thread if the
4073 kernel thread ID is -1.
4074
4075 2015-01-09 Pedro Alves <palves@redhat.com>
4076
4077 * linux-low.c (linux_attach_fail_reason_string): Move to
4078 nat/linux-ptrace.c, and rename.
4079 (linux_attach_lwp): Update comment.
4080 (attach_proc_task_lwp_callback): New function.
4081 (linux_attach): Adjust to rename and use
4082 linux_proc_attach_tgid_threads.
4083 (linux_attach_fail_reason_string): Delete declaration.
4084
4085 2015-01-01 Joel Brobecker <brobecker@adacore.com>
4086
4087 * gdbreplay.c (gdbreplay_version): Update copyright year to 2015.
4088 * server.c (gdbserver_version): Likewise.
4089
4090 2014-12-29 Sergio Durigan Junior <sergiodj@redhat.com>
4091
4092 * remote-utils.c: Include ctype.h.
4093 (input_interrupt): Explicitly handle the case when the char
4094 received is the NUL byte. Improve the printing of non-ASCII
4095 characters.
4096
4097 2014-12-16 Joel Brobecker <brobecker@adacore.com>
4098
4099 * linux-low.c (linux_low_filter_event): Update call to
4100 linux_enable_event_reporting following the addition of
4101 a new parameter to that function.
4102
4103 2014-12-16 Catalin Udma <catalin.udma@freescale.com>
4104
4105 PR server/17457
4106 * linux-aarch64-low.c (AARCH64_FPSR_REGNO): New define.
4107 (AARCH64_FPCR_REGNO): Likewise.
4108 (AARCH64_NUM_REGS): Update to include fpsr/fpcr registers.
4109 (aarch64_fill_fpregset): Add missing fpsr/fpcr registers.
4110 (aarch64_store_fpregset): Likewise.
4111
4112 2014-12-15 Joel Brobecker <brobecker@adacore.com>
4113
4114 * lynx-low.c (lynx_resume): Use PTRACE_SINGLESTEP_ONE if N == 1.
4115 Remove FIXME comment about assumption about N.
4116
4117 2014-12-13 Joel Brobecker <brobecker@adacore.com>
4118
4119 * configure.ac: If large-file support is disabled in GDBserver,
4120 pass --disable-largefile to ACX_CONFIGURE_DIR call for "gnulib".
4121 * configure: Regenerate.
4122
4123 2014-12-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
4124
4125 * linux-low.c (regsets_fetch_inferior_registers): Suppress the
4126 warning upon ENODATA from ptrace.
4127 * linux-s390-low.c (s390_store_tdb): New.
4128 (s390_regsets): Add regset for NT_S390_TDB.
4129
4130 2014-12-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
4131
4132 * linux-low.c (regsets_store_inferior_registers): Skip regsets
4133 without a fill_function.
4134 * linux-s390-low.c (s390_fill_last_break): Remove.
4135 (s390_regsets): Set fill_function to NULL for NT_S390_LAST_BREAK.
4136 (s390_arch_setup): Use regset's size instead of fill_function for
4137 loop end condition.
4138
4139 2014-12-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
4140
4141 * linux-low.c (regsets_fetch_inferior_registers): Do not invoke
4142 the regset's store function when ptrace returned an error.
4143 * regcache.c (get_thread_regcache): Invalidate register cache
4144 before fetching inferior's registers.
4145
4146 2014-12-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
4147
4148 * linux-low.c (regsets_fetch_inferior_registers): Rephrase
4149 while-loop as for-loop.
4150 (regsets_store_inferior_registers): Likewise.
4151
4152 2014-11-28 Yao Qi <yao@codesourcery.com>
4153
4154 * configure.ac(AC_CHECK_FUNCS): Remove readlink.
4155 * config.in, configure: Re-generate.
4156 * hostio.c (handle_unlink): Remove code checking HAVE_READLINK
4157 is defined.
4158
4159 2014-11-21 Yao Qi <yao@codesourcery.com>
4160
4161 * configure.ac: Don't invoke AC_FUNC_ALLOCA.
4162 (AC_CHECK_HEADERS): Remove malloc.h.
4163 * configure: Re-generated.
4164 * config.in: Re-generated.
4165 * server.h: Don't include alloca.h and malloc.h.
4166 * gdbreplay.c: Don't check HAVE_ALLOCA_H is defined.
4167 Don't include malloc.h.
4168
4169 2014-11-17 Joel Brobecker <brobecker@adacore.com>
4170
4171 * lynx-low.c (lynx_write_memory): Put lynx_read_memory and
4172 corresponding ERRNO check in same block.
4173
4174 2014-11-12 Pedro Alves <palves@redhat.com>
4175
4176 * server.c (cont_thread): Update comment.
4177 (start_inferior, attach_inferior): No longer clear cont_thread.
4178 (handle_v_cont): No longer set cont_thread.
4179 (captured_main): Clear cont_thread each time a GDB connects.
4180
4181 2014-11-12 Pedro Alves <palves@redhat.com>
4182
4183 * linux-low.c (linux_wait_1): Don't force a wait for the Hc
4184 thread, and don't resume all threads if the Hc thread has exited.
4185
4186 2014-11-12 Pedro Alves <palves@redhat.com>
4187
4188 * linux-low.c (linux_request_interrupt): Always send a SIGINT to
4189 the process group instead of to a specific LWP.
4190
4191 2014-10-15 Pedro Alves <palves@redhat.com>
4192
4193 PR server/17487
4194 * win32-arm-low.c (arm_set_thread_context): Remove current_event
4195 parameter.
4196 (arm_set_thread_context): Delete.
4197 (the_low_target): Adjust.
4198 * win32-i386-low.c (debug_registers_changed)
4199 (debug_registers_used): Delete.
4200 (update_debug_registers_callback): New function.
4201 (x86_dr_low_set_addr, x86_dr_low_set_control): Mark all threads as
4202 needing to update their debug registers.
4203 (win32_get_current_dr): New function.
4204 (x86_dr_low_get_addr, x86_dr_low_get_control)
4205 (x86_dr_low_get_status): Fetch the debug register from the thread
4206 record's context.
4207 (i386_initial_stuff): Adjust.
4208 (i386_get_thread_context): Remove current_event parameter. Don't
4209 clear debug_registers_changed nor copy DR values to
4210 debug_reg_state.
4211 (i386_set_thread_context): Delete.
4212 (i386_prepare_to_resume): New function.
4213 (i386_thread_added): Mark the thread as needing to update irs
4214 debug registers.
4215 (the_low_target): Remove i386_set_thread_context and install
4216 i386_prepare_to_resume.
4217 * win32-low.c (win32_get_thread_context): Adjust.
4218 (win32_set_thread_context): Use SetThreadContext
4219 directly.
4220 (win32_prepare_to_resume): New function.
4221 (win32_require_context): New function, factored out from ...
4222 (thread_rec): ... this.
4223 (continue_one_thread): Call win32_prepare_to_resume on each thread
4224 we're about to continue.
4225 (win32_resume): Call win32_prepare_to_resume on the event thread.
4226 * win32-low.h (struct win32_thread_info)
4227 <debug_registers_changed>: New field.
4228 (struct win32_target_ops): Change prototype of set_thread_context,
4229 delete set_thread_context and add prepare_to_resume.
4230 (win32_require_context): New declaration.
4231
4232 2014-10-08 Gary Benson <gbenson@redhat.com>
4233
4234 * server.h: Do not include common-exceptions.h.
4235
4236 2014-10-08 Gary Benson <gbenson@redhat.com>
4237
4238 * server.h: Do not include cleanups.h.
4239
4240 2014-09-30 James Hogan <james.hogan@imgtec.com>
4241
4242 * Makefile.in (clean): Add rm -f commands for mips-dsp-linux.c and
4243 mips64-dsp-linux.c.
4244
4245 2014-09-23 Yao Qi <yao@codesourcery.com>
4246
4247 * linux-low.c (lp_status_maybe_breakpoint): New function.
4248 (linux_low_filter_event): Call lp_status_maybe_breakpoint.
4249 (count_events_callback): Likewise.
4250 (select_event_lwp_callback): Likewise.
4251 (cancel_breakpoints_callback): Likewise.
4252
4253 2014-09-19 Don Breazeal <donb@codesourcery.com>
4254
4255 * linux-low.c (handle_extended_wait): Call
4256 linux_ptrace_get_extended_event.
4257 (get_stop_pc, get_detach_signal, linux_low_filter_event): Call
4258 linux_is_extended_waitstatus.
4259
4260 2014-09-16 Joel Brobecker <brobecker@adacore.com>
4261
4262 * Makefile.in (CPPFLAGS): Define.
4263 (INTERNAL_CFLAGS_BASE): Add ${CPPFLAGS}.
4264 (IPAGENT_CFLAGS): Remove ${CPPFLAGS}.
4265
4266 2014-09-16 Gary Benson <gbenson@redhat.com>
4267
4268 * inferiors.h (current_inferior): Renamed as...
4269 (current_thread): New variable. All uses updated.
4270 * linux-low.c (get_pc): Renamed saved_inferior as saved_thread.
4271 (maybe_move_out_of_jump_pad): Likewise.
4272 (cancel_breakpoint): Likewise.
4273 (linux_low_filter_event): Likewise.
4274 (wait_for_sigstop): Likewise.
4275 (linux_resume_one_lwp): Likewise.
4276 (need_step_over_p): Likewise.
4277 (start_step_over): Likewise.
4278 (linux_stabilize_threads): Renamed save_inferior as saved_thread.
4279 * linux-x86-low.c (x86_linux_update_xmltarget): Likewise.
4280 * proc-service.c (ps_lgetregs): Renamed reg_inferior as reg_thread
4281 and save_inferior as saved_thread.
4282 * regcache.c (get_thread_regcache): Renamed saved_inferior as
4283 saved_thread.
4284 (regcache_invalidate_thread): Likewise.
4285 * remote-utils.c (prepare_resume_reply): Likewise.
4286 * thread-db.c (thread_db_get_tls_address): Likewise.
4287 (disable_thread_event_reporting): Likewise.
4288 (remove_thread_event_breakpoints): Likewise.
4289 * tracepoint.c (gdb_agent_about_to_close): Renamed save_inferior
4290 as saved_thread.
4291 * target.h (set_desired_inferior): Renamed as...
4292 (set_desired_thread): New declaration. All uses updated.
4293 * server.c (myresume): Updated comment to reference thread instead
4294 of inferior.
4295 (handle_serial_event): Likewise.
4296 (handle_target_event): Likewise.
4297
4298 2014-09-12 Tom Tromey <tromey@redhat.com>
4299 Gary Benson <gbenson@redhat.com>
4300
4301 * regcache.h: Include common-regcache.h.
4302 (regcache_read_pc): Don't declare.
4303 * regcache.c (get_thread_regcache_for_ptid): New function.
4304
4305 2014-09-11 Tom Tromey <tromey@redhat.com>
4306 Gary Benson <gbenson@redhat.com>
4307
4308 * symbol.c: New file.
4309 * Makefile.in (SFILES): Add symbol.c.
4310 (OBS): Add symbol.o.
4311
4312 2014-09-11 Gary Benson <gbenson@redhat.com>
4313
4314 * target.c (target_stop_ptid, target_continue_ptid): New
4315 functions.
4316
4317 2014-09-11 Tom Tromey <tromey@redhat.com>
4318 Gary Benson <gbenson@redhat.com>
4319
4320 * target.h: Include target/target.h.
4321 * target.c (target_read_memory, target_read_uint32)
4322 (target_write_memory): New functions.
4323
4324 2014-09-11 Gary Benson <gbenson@redhat.com>
4325
4326 * server.h (debug_hw_points): Don't declare.
4327 * server.c (debug_hw_points): Don't define. Replace all uses
4328 with show_debug_regs.
4329 * linux-aarch64-low.c (debug_hw_points): Don't define. Replace
4330 all uses with show_debug_regs.
4331
4332 2014-09-08 Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
4333
4334 * linux-ppc-low.c (ppc_collect_ptrace_register): Adjust routine to take
4335 endianness into account.
4336 (ppc_supply_ptrace_register): Likewise.
4337
4338 2014-09-03 James Hogan <james.hogan@imgtec.com>
4339
4340 * linux-mips-low.c (mips_read_description): Reset errno to 0 prior
4341 to reading DSP_CONTROL with PTRACE_PEEKUSER ptrace call.
4342
4343 2014-09-03 Gary Benson <gbenson@redhat.com>
4344
4345 * linux-x86-low.c (x86_linux_prepare_to_resume): Use
4346 ALL_DEBUG_ADDRESS_REGISTERS.
4347
4348 2014-09-02 Gary Benson <gbenson@redhat.com>
4349
4350 * i386-low.h: Renamed as...
4351 * x86-low.h: New file. All type, function and variable name
4352 prefixes changed from "i386_" to "x86_". All references updated.
4353 * i386-low.c: Renamed as...
4354 * x86-low.c: New file. All type, function and variable name
4355 prefixes changed from "i386_" to "x86_". All references updated.
4356
4357 2014-09-02 Gary Benson <gbenson@redhat.com>
4358
4359 * linux-x86-low.c (x86_linux_new_process): Use XCNEW.
4360 (x86_linux_new_thread): Likewise.
4361
4362 2014-08-29 Gary Benson <gbenson@redhat.com>
4363
4364 * server.h (setjmp.h): Do not include.
4365 (toplevel): Do not declare.
4366 (common-exceptions.h): Include.
4367 (cleanups.h): Likewise.
4368 * server.c (toplevel): Do not define.
4369 (exit_code): New static global.
4370 (detach_or_kill_for_exit_cleanup): New function.
4371 (main): New function. Original main renamed to...
4372 (captured_main): New function.
4373 * utils.c (verror) [!IN_PROCESS_AGENT]: Use throw_verror.
4374
4375 2014-08-29 Gary Benson <gbenson@redhat.com>
4376
4377 * Makefile.in (SFILES): Add common/common-exceptions.c.
4378 (OBS): Add common-exceptions.o.
4379 (common-exceptions.o): New rule.
4380 * utils.c (prepare_to_throw_exception): New function.
4381
4382 2014-08-29 Gary Benson <gbenson@redhat.com>
4383
4384 * config.in: Regenerate.
4385 * configure: Likewise.
4386
4387 2014-08-29 Gary Benson <gbenson@redhat.com>
4388
4389 * Makefile.in (SFILES): Add common/cleanups.c.
4390 (OBS): cleanups.o.
4391 (cleanups.o): New rule.
4392
4393 2014-08-29 Gary Benson <gbenson@redhat.com>
4394
4395 * utils.c (internal_vwarning): New function.
4396
4397 2014-08-28 Gary Benson <gbenson@redhat.com>
4398
4399 * utils.h (fatal): Remove declaration.
4400 * utils.c (fatal): Remove function.
4401
4402 2014-08-28 Gary Benson <gbenson@redhat.com>
4403
4404 * tracepoint.c (gdb_agent_init): Replace fatal with
4405 perror_with_name.
4406 (initialize_tracepoint): Likewise.
4407
4408 2014-08-28 Gary Benson <gbenson@redhat.com>
4409
4410 * remote-utils.c (remote_prepare): Replace fatal with error.
4411
4412 2014-08-28 Gary Benson <gbenson@redhat.com>
4413
4414 * linux-low.c (linux_async): Replace fatal with warning.
4415 Tidy up and return.
4416 (linux_start_non_stop): Return -1 if linux_async failed.
4417
4418 2014-08-28 Gary Benson <gbenson@redhat.com>
4419
4420 * linux-x86-low.c (i386_dr_low_set_addr): Replace check with
4421 gdb_assert.
4422 (i386_dr_low_get_addr): Remove vague comment.
4423 * win32-i386-low.c (i386_dr_low_set_addr): Replace check with
4424 gdb_assert.
4425
4426 2014-08-28 Gary Benson <gbenson@redhat.com>
4427
4428 * inferiors.c (get_thread_process): Replace check with gdb_assert.
4429 * linux-low.c (linux_wait_for_event_filtered): Replace fatal with
4430 internal_error.
4431 (linux_resume_one_lwp): Likewise.
4432 * linux-x86-low.c (x86_siginfo_fixup): Replace checks with
4433 gdb_assert.
4434 * mem-break.c (raw_bkpt_type_to_target_hw_bp_type): Replace fatal
4435 with internal_error.
4436 * regcache.c (get_thread_regcache): Replace check with gdb_assert.
4437 (init_register_cache): Replace fatal with gdb_assert_not_reached.
4438 (find_register_by_name): Replace fatal with internal_error.
4439 (find_regno): Likewise.
4440 * tdesc.c (init_target_desc): Replace check with gdb_assert.
4441 * thread-db.c (thread_db_create_event): Likewise.
4442 (thread_db_load_search): Likewise.
4443 (try_thread_db_load_1): Likewise.
4444 * tracepoint.c (get_jump_space_head): Replace fatal with
4445 internal_error.
4446 (claim_trampoline_space): Likewise.
4447 (have_fast_tracepoint_trampoline_buffer): Likewise.
4448 (cmd_qtstart): Likewise.
4449 (stop_tracing): Likewise.
4450 (fast_tracepoint_collecting): Likewise.
4451 (target_malloc): Likewise.
4452 (download_tracepoint): Likewise.
4453 (download_trace_state_variables): Replace check with gdb_assert.
4454 (upload_fast_traceframes): Replace fatal with internal_error.
4455
4456 2014-08-19 Tom Tromey <tromey@redhat.com>
4457 Gary Benson <gbenson@redhat.com>
4458
4459 * Makefile.in (SFILES): Add common/common-debug.c.
4460 (OBS): Add common-debug.o.
4461 (common-debug.o): New rule.
4462 * debug.h (debug_printf): Don't declare.
4463 * debug.c (debug_printf): Renamed and rewritten as...
4464 (debug_vprintf): New function.
4465
4466 2014-08-19 Gary Benson <gbenson@redhat.com>
4467
4468 * utils.h: Do not include print-utils.h.
4469
4470 2014-08-19 Tom Tromey <tromey@redhat.com>
4471 Gary Benson <gbenson@redhat.com>
4472
4473 * server.h: Add static assertion.
4474 (gdb_byte, CORE_ADDR, LONGEST, ULONGEST): Remove.
4475
4476 2014-08-19 Tom Tromey <tromey@redhat.com>
4477 Gary Benson <gbenson@redhat.com>
4478
4479 * Makefile.in (SFILES): Add common/errors.c.
4480 (OBS): Add errors.o.
4481 (IPA_OBS): Add errors-ipa.o.
4482 (errors.o): New rule.
4483 (errors-ipa.o): Likewise.
4484 * utils.h (perror_with_name, error, warning): Don't declare.
4485 * utils.c (warning): Renamed and rewritten as...
4486 (vwarning): New function.
4487 (error): Renamed and rewritten as...
4488 (verror): New function.
4489 (internal_error): Renamed and rewritten as...
4490 (internal_verror): New function.
4491
4492 2014-08-07 Gary Benson <gbenson@redhat.com>
4493
4494 * configure.ac (AC_CHECK_HEADERS): Remove errno.h.
4495 * configure: Regenerate.
4496 * config.in: Likewise.
4497 * server.h: Do not include errno.h.
4498 * event-loop.c: Likewise.
4499 * hostio-errno.c: Likewise.
4500 * linux-low.c: Likewise.
4501 * remote-utils.c: Likewise.
4502 * spu-low.c: Likewise.
4503 * utils.c: Likewise.
4504 * gdbreplay.c: Unconditionally include errno.h.
4505
4506 2014-08-07 Gary Benson <gbenson@redhat.com>
4507
4508 * server.h: Do not include string.h.
4509 * event-loop.c: Likewise.
4510 * linux-low.c: Likewise.
4511 * regcache.c: Likewise.
4512 * remote-utils.c: Likewise.
4513 * spu-low.c: Likewise.
4514 * utils.c: Likewise.
4515
4516 2014-08-07 Gary Benson <gbenson@redhat.com>
4517
4518 * server.h: Do not include gdb_assert.h.
4519
4520 2014-08-07 Gary Benson <gbenson@redhat.com>
4521
4522 * server.h: Do not include common-utils.h.
4523
4524 2014-08-07 Gary Benson <gbenson@redhat.com>
4525
4526 * server.h: Do not include ptid.h.
4527 * notif.h: Likewise.
4528
4529 2014-08-07 Gary Benson <gbenson@redhat.com>
4530
4531 * server.h: Do not include gdb_locale.h.
4532
4533 2014-08-07 Gary Benson <gbenson@redhat.com>
4534
4535 * server.h: Do not include gdb/signals.h.
4536 * win32-low.c: Likewise.
4537
4538 2014-08-07 Gary Benson <gbenson@redhat.com>
4539
4540 * server.h: Do not include pathmax.h.
4541
4542 2014-08-07 Gary Benson <gbenson@redhat.com>
4543
4544 * server.h: Do not include libiberty.h.
4545 * linux-bfin-low.c: Likewise.
4546
4547 2014-08-07 Gary Benson <gbenson@redhat.com>
4548
4549 * server.h: Do not include ansidecl.h.
4550
4551 2014-08-07 Gary Benson <gbenson@redhat.com>
4552
4553 * linux-x86-low.c: Do not include stddef.h.
4554 * lynx-ppc-low.c: Likewise.
4555 * tracepoint.c: Likewise.
4556
4557 2014-08-07 Gary Benson <gbenson@redhat.com>
4558
4559 * server.h: Do not include stdarg.h.
4560 * nto-low.c: Likewise.
4561
4562 2014-08-07 Gary Benson <gbenson@redhat.com>
4563
4564 * server.h: Do not include stdlib.h.
4565 * inferiors.c: Likewise.
4566 * linux-low.c: Likewise.
4567 * regcache.c: Likewise.
4568 * spu-low.c: Likewise.
4569 * tracepoint.c: Likewise.
4570 * utils.c: Likewise.
4571
4572 2014-08-07 Gary Benson <gbenson@redhat.com>
4573
4574 * server.h: Do not include stdio.h.
4575 * linux-low.c: Likewise.
4576 * remote-utils.c: Likewise.
4577 * spu-low.c: Likewise.
4578 * utils.c: Likewise.
4579 * wincecompat.c: Likewise.
4580
4581 2014-08-06 Gary Benson <gbenson@redhat.com>
4582
4583 * regcache.c (init_register_cache): Move conditionals inside if.
4584
4585 2014-08-06 Gary Benson <gbenson@redhat.com>
4586
4587 * linux-low.c (linux_supports_non_stop): Use target_is_async_p.
4588
4589 2014-07-31 Gary Benson <gbenson@redhat.com>
4590
4591 * ax.h: Do not include server.h.
4592 * gdbthread.h: Likewise.
4593 * lynx-low.h: Likewise.
4594 * notif.h: Likewise.
4595
4596 2014-07-30 Gary Benson <gbenson@redhat.com>
4597
4598 * server.h: Include common-defs.h.
4599 Do not include config.h or build-gnulib-gdbserver/config.h.
4600
4601 2014-07-30 Gary Benson <gbenson@redhat.com>
4602
4603 * hostio-errno.c: Move server.h to top of includes list.
4604 * inferiors.c: Likewise.
4605 * linux-x86-low.c: Likewise.
4606 * notif.c: Include server.h.
4607
4608 2014-07-24 Tom Tromey <tromey@redhat.com>
4609 Gary Benson <gbenson@redhat.com>
4610
4611 * server.h (CORE_ADDR): Now unsigned.
4612
4613 2014-07-16 Pedro Alves <palves@redhat.com>
4614
4615 * linux-low.c (linux_kill_one_lwp): Use kill_lwp, not kill.
4616
4617 2014-07-15 Pedro Alves <palves@redhat.com>
4618
4619 * linux-low.c (linux_kill_one_lwp): Save errno and work with saved
4620 copy.
4621
4622 2014-07-11 Pedro Alves <palves@redhat.com>
4623
4624 * linux-low.c (kill_wait_lwp): New function, based on
4625 kill_one_lwp_callback, but use my_waitpid directly.
4626 (kill_one_lwp_callback, linux_kill): Use it.
4627
4628 2014-06-23 Pedro Alves <palves@redhat.com>
4629
4630 * linux-x86-low.c (x86_linux_prepare_to_resume): Clear DR_CONTROL
4631 before setting DR0..DR3.
4632
4633 2014-06-20 Gary Benson <gbenson@redhat.com>
4634
4635 * configure.ac (AC_REPLACE_FUNCS) <vasprintf, vsnprintf>: Removed.
4636 * configure: Regenerated.
4637 * config.in: Likewise.
4638
4639 2014-06-20 Gary Benson <gbenson@redhat.com>
4640
4641 * Makefile.in (SFILES): Update locations for files moved
4642 from common to nat.
4643 (object file files): Reordered.
4644
4645 2014-06-20 Gary Benson <gbenson@redhat.com>
4646
4647 * i386-low.h (i386_dr_low_can_set_addr): Removed.
4648 (i386_dr_low_set_addr): Likewise.
4649 (i386_dr_low_get_addr): Likewise.
4650 (i386_dr_low_can_set_control): Likewise.
4651 (i386_dr_low_set_control): Likewise.
4652 (i386_dr_low_get_control): Likewise.
4653 (i386_dr_low_get_status): Likewise.
4654 (i386_get_debug_register_length): Likewise.
4655 * linux-x86-low.c (i386_dr_low_set_addr):
4656 Changed signature. Made static.
4657 (i386_dr_low_get_addr): Likewise.
4658 (i386_dr_low_set_control): Likewise.
4659 (i386_dr_low_get_control): Likewise.
4660 (i386_dr_low_get_status): Likewise.
4661 (i386_dr_low): New global variable.
4662 * win32-i386-low.c (i386_dr_low_set_addr):
4663 Changed signature. Made static.
4664 (i386_dr_low_get_addr): Likewise.
4665 (i386_dr_low_set_control): Likewise.
4666 (i386_dr_low_get_control): Likewise.
4667 (i386_dr_low_get_status): Likewise.
4668 (i386_dr_low): New global variable.
4669
4670 2014-06-20 Marcus Shawcroft <marcus.shawcroft@arm.com>
4671
4672 * configure.ac: Invoke. AC_CHECK_TOOL(AR, ar).
4673 * Makefile.in (AR, AR_FLAGS): Define.
4674 * configure: Regenerate.
4675
4676 2014-06-19 Gary Benson <gbenson@redhat.com>
4677
4678 * Makefile.in (i386-dregs.o): New rule.
4679 * configure.srv: Add i386-dregs.o to all targets using i386-low.o.
4680 * i386-low.c (target.h): Remove include.
4681 (TARGET_HAS_DR_LEN_8): Now in i386-dregs.c.
4682 (DR_CONTROL_SHIFT): Likewise.
4683 (DR_CONTROL_SIZE): Likewise.
4684 (DR_RW_EXECUTE): Likewise.
4685 (DR_RW_WRITE): Likewise.
4686 (DR_RW_READ): Likewise.
4687 (DR_RW_IORW): Likewise.
4688 (DR_LEN_1): Likewise.
4689 (DR_LEN_2): Likewise.
4690 (DR_LEN_4): Likewise.
4691 (DR_LEN_8): Likewise.
4692 (DR_LOCAL_ENABLE_SHIFT): Likewise.
4693 (DR_GLOBAL_ENABLE_SHIFT): Likewise.
4694 (DR_ENABLE_SIZE): Likewise.
4695 (DR_LOCAL_SLOWDOWN): Likewise.
4696 (DR_GLOBAL_SLOWDOWN): Likewise.
4697 (DR_CONTROL_RESERVED): Likewise.
4698 (I386_DR_CONTROL_MASK): Likewise.
4699 (I386_DR_VACANT): Likewise.
4700 (I386_DR_LOCAL_ENABLE): Likewise.
4701 (I386_DR_GLOBAL_ENABLE): Likewise.
4702 (I386_DR_DISABLE): Likewise.
4703 (I386_DR_SET_RW_LEN): Likewise.
4704 (I386_DR_GET_RW_LEN): Likewise.
4705 (I386_DR_WATCH_HIT): Likewise.
4706 (i386_wp_op_t): Likewise.
4707 (i386_show_dr): Likewise.
4708 (i386_length_and_rw_bits): Likewise.
4709 (i386_insert_aligned_watchpoint): Likewise.
4710 (i386_remove_aligned_watchpoint): Likewise.
4711 (i386_handle_nonaligned_watchpoint): Likewise.
4712 i386_update_inferior_debug_regs(): Likewise.
4713 (i386_dr_insert_watchpoint): Likewise.
4714 (i386_dr_remove_watchpoint): Likewise.
4715 (i386_dr_region_ok_for_watchpoint): Likewise.
4716 (i386_dr_stopped_data_address): Likewise.
4717 (i386_dr_stopped_by_watchpoint): Likewise.
4718
4719 2014-06-19 Gary Benson <gbenson@redhat.com>
4720
4721 * i386-low.c (i386_dr_show): Renamed to
4722 i386_show_dr and made static. All uses updated.
4723 (i386_dr_length_and_rw_bits): Renamed to
4724 i386_length_and_rw_bits and made static.
4725 All uses updated.
4726 (i386_dr_insert_aligned_watchpoint): Renamed to
4727 i386_insert_aligned_watchpoint and made static.
4728 All uses updated.
4729 (i386_dr_remove_aligned_watchpoint): Renamed to
4730 i386_remove_aligned_watchpoint and made static.
4731 All uses updated.
4732 (i386_dr_update_inferior_debug_regs): Renamed to
4733 i386_update_inferior_debug_regs and made static.
4734 All uses updated.
4735
4736 2014-06-18 Gary Benson <gbenson@redhat.com>
4737
4738 * i386-low.h (i386_dr_low_can_set_addr): New macro.
4739 (i386_dr_low_can_set_control): Likewise.
4740 (i386_get_debug_register_length): Likewise.
4741 * i386-low.c (i386_dr_low_can_set_addr): Now in i386-low.h.
4742 (i386_dr_low_can_set_control): Likewise.
4743 (i386_get_debug_register_length): Likewise.
4744
4745 2014-06-17 Gary Benson <gbenson@redhat.com>
4746
4747 * i386-low.h (i386-dregs.h): New include.
4748 (DR_FIRSTADDR): Now in i386-dregs.h.
4749 (DR_LASTADDR): Likewise.
4750 (DR_NADDR): Likewise.
4751 (DR_STATUS): Likewise.
4752 (DR_CONTROL): Likewise.
4753 (i386_debug_reg_state): Likewise.
4754 (i386_dr_insert_watchpoint): Likewise.
4755 (i386_dr_remove_watchpoint): Likewise.
4756 (i386_dr_region_ok_for_watchpoint): Likewise.
4757 (i386_dr_stopped_data_address): Likewise.
4758 (i386_dr_stopped_by_watchpoint): Likewise.
4759 * i386-low.c (ALL_DEBUG_REGISTERS): Likewise.
4760
4761 2014-06-18 Gary Benson <gbenson@redhat.com>
4762
4763 * i386-low.h (i386_low_insert_watchpoint): Renamed to
4764 i386_dr_insert_watchpoint.
4765 (i386_low_remove_watchpoint): Renamed to
4766 i386_dr_remove_watchpoint.
4767 (i386_low_region_ok_for_watchpoint): Renamed to
4768 i386_dr_region_ok_for_watchpoint.
4769 (i386_low_stopped_data_address): Renamed to
4770 i386_dr_stopped_data_address.
4771 (i386_low_stopped_by_watchpoint): Renamed to
4772 i386_dr_stopped_by_watchpoint.
4773 * i386-low.c (i386_show_dr): Renamed to
4774 i386_dr_show and made nonstatic. All uses updated.
4775 (i386_length_and_rw_bits): Renamed to
4776 i386_dr_length_and_rw_bits and made nonstatic.
4777 All uses updated.
4778 (i386_insert_aligned_watchpoint): Renamed to
4779 i386_dr_insert_aligned_watchpoint and made nonstatic.
4780 All uses updated.
4781 (i386_remove_aligned_watchpoint): Renamed to
4782 i386_dr_remove_aligned_watchpoint and made nonstatic.
4783 All uses updated.
4784 (i386_update_inferior_debug_regs): Renamed to
4785 i386_dr_update_inferior_debug_regs and made nonstatic.
4786 All uses updated.
4787 (i386_low_insert_watchpoint): Renamed to
4788 i386_dr_insert_watchpoint. All uses updated.
4789 (i386_low_remove_watchpoint): Renamed to
4790 i386_dr_remove_watchpoint. All uses updated.
4791 (i386_low_region_ok_for_watchpoint): Renamed to
4792 i386_dr_region_ok_for_watchpoint. All uses updated.
4793 (i386_low_stopped_data_address): Renamed to
4794 i386_dr_stopped_data_address. All uses updated.
4795 (i386_low_stopped_by_watchpoint): Renamed to
4796 i386_dr_stopped_by_watchpoint. All uses updated.
4797
4798 2014-06-18 Gary Benson <gbenson@redhat.com>
4799
4800 * i386-low.c (i386_dr_low_can_set_addr): New macro.
4801 (i386_dr_low_can_set_control): Likewise.
4802 (i386_insert_aligned_watchpoint): New check.
4803
4804 2014-06-18 Gary Benson <gbenson@redhat.com>
4805
4806 * i386-low.c (i386_update_inferior_debug_regs) <inf_state>:
4807 Renamed to state.
4808
4809 2014-06-18 Gary Benson <gbenson@redhat.com>
4810
4811 * i386-low.c (i386_length_and_rw_bits): Use internal_error
4812 instead of fatal and error.
4813 (i386_handle_nonaligned_watchpoint): Likewise.
4814
4815 2014-06-18 Gary Benson <gbenson@redhat.com>
4816
4817 * i386-low.c (i386_get_debug_register_length): New macro.
4818 (TARGET_HAS_DR_LEN_8): Remove conditional. Use above macro.
4819 (i386_show_dr): Use debug_printf instead of fprintf. Use
4820 phex to format values.
4821
4822 2014-06-18 Gary Benson <gbenson@redhat.com>
4823
4824 * i386-low.h: Comment changes.
4825 * i386-low.c: Likewise.
4826
4827 2014-06-18 Gary Benson <gbenson@redhat.com>
4828
4829 * i386-low.c: Whitespace changes.
4830
4831 2014-06-12 Tom Tromey <tromey@redhat.com>
4832
4833 * utils.c (freeargv): Remove.
4834
4835 2014-06-12 Tom Tromey <tromey@redhat.com>
4836
4837 * debug.c (debug_printf): Remove HAVE_GETTIMEOFDAY checks.
4838 * server.c (monitor_show_help): Remove HAVE_GETTIMEOFDAY check.
4839 (parse_debug_format_options): Likewise.
4840 (gdbserver_usage): Likewise.
4841 * Makefile.in (LIBIBERTY_BUILDDIR, LIBIBERTY): New variables.
4842 (SUBDIRS, REQUIRED_SUBDIRS): Add libiberty.
4843 (gdbserver$(EXEEXT), gdbreplay$(EXEEXT)): Depend on and link
4844 against libiberty.
4845 ($(LIBGNU)): Depend on libiberty.
4846 (all-lib): Recurse into all subdirs.
4847 (install-only): Invoke "install" target in subdirs.
4848 (vasprintf.o, vsnprintf.o, safe-ctype.o, lbasename.o): Remove
4849 targets.
4850 * configure: Rebuild.
4851 * configure.ac: Add ACX_CONFIGURE_DIR for libiberty. Don't check
4852 for vasprintf, vsnprintf, or gettimeofday.
4853 * configure.srv: Don't add safe-ctype.o or lbasename.o to
4854 srv_tgtobj.
4855
4856 2014-06-05 Joel Brobecker <brobecker@adacore.com>
4857
4858 * development.sh: Delete.
4859 * Makefile.in (config.status): Adjust dependency on development.sh.
4860 * configure.ac: Adjust development.sh source call.
4861 * configure: Regenerate.
4862
4863 2014-06-02 Pedro Alves <palves@redhat.com>
4864
4865 * ax.c (gdb_free_agent_expr): New function.
4866 * ax.h (gdb_free_agent_expr): New declaration.
4867 * mem-break.c (delete_gdb_breakpoint_1): Also clear the commands
4868 list.
4869 (clear_breakpoint_conditions, clear_breakpoint_commands): Make
4870 static.
4871 (clear_breakpoint_conditions_and_commands): New function.
4872 * mem-break.h (clear_breakpoint_conditions): Delete declaration.
4873 (clear_breakpoint_conditions_and_commands): New declaration.
4874
4875 2014-05-23 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
4876
4877 * linux-aarch64-low.c (asm/ptrace.h): Include.
4878
4879 2014-05-21 Jan Kratochvil <jan.kratochvil@redhat.com>
4880
4881 Fix TLS access for -static -pthread.
4882 * gdbserver/thread-db.c (struct thread_db): Add td_thr_tlsbase_p.
4883 (thread_db_get_tls_address): Call it if LOAD_MODULE is zero.
4884 (thread_db_load_search, try_thread_db_load_1): Initialize it.
4885
4886 2014-05-20 Pedro Alves <palves@redhat.com>
4887
4888 * linux-aarch64-low.c (aarch64_insert_point)
4889 (aarch64_remove_point): No longer check whether the type is
4890 supported here. Adjust to new interface.
4891 (the_low_target): Install aarch64_supports_z_point_type as
4892 supports_z_point_type method.
4893 * linux-arm-low.c (raw_bkpt_type_to_arm_hwbp_type): New function.
4894 (arm_linux_hw_point_initialize): Take an enum raw_bkpt_type
4895 instead of a Z packet char. Adjust.
4896 (arm_supports_z_point_type): New function.
4897 (arm_insert_point, arm_remove_point): Adjust to new interface.
4898 (the_low_target): Install arm_supports_z_point_type.
4899 * linux-crisv32-low.c (cris_supports_z_point_type): New function.
4900 (cris_insert_point, cris_remove_point): Adjust to new interface.
4901 Don't check whether the type is supported here.
4902 (the_low_target): Install cris_supports_z_point_type.
4903 * linux-low.c (linux_supports_z_point_type): New function.
4904 (linux_insert_point, linux_remove_point): Adjust to new interface.
4905 * linux-low.h (struct linux_target_ops) <insert_point,
4906 remove_point>: Take an enum raw_bkpt_type instead of a char. Add
4907 raw_breakpoint pointer parameter.
4908 <supports_z_point_type>: New method.
4909 * linux-mips-low.c (mips_supports_z_point_type): New function.
4910 (mips_insert_point, mips_remove_point): Adjust to new interface.
4911 Use mips_supports_z_point_type.
4912 (the_low_target): Install mips_supports_z_point_type.
4913 * linux-ppc-low.c (the_low_target): Install NULL as
4914 supports_z_point_type method.
4915 * linux-s390-low.c (the_low_target): Install NULL as
4916 supports_z_point_type method.
4917 * linux-sparc-low.c (the_low_target): Install NULL as
4918 supports_z_point_type method.
4919 * linux-x86-low.c (x86_supports_z_point_type): New function.
4920 (x86_insert_point): Adjust to new insert_point interface. Use
4921 insert_memory_breakpoint. Adjust to new
4922 i386_low_insert_watchpoint interface.
4923 (x86_remove_point): Adjust to remove_point interface. Use
4924 remove_memory_breakpoint. Adjust to new
4925 i386_low_remove_watchpoint interface.
4926 (the_low_target): Install x86_supports_z_point_type.
4927 * lynx-low.c (lynx_target_ops): Install NULL as
4928 supports_z_point_type callback.
4929 * nto-low.c (nto_supports_z_point_type): New.
4930 (nto_insert_point, nto_remove_point): Adjust to new interface.
4931 (nto_target_ops): Install nto_supports_z_point_type.
4932 * mem-break.c: Adjust intro comment.
4933 (struct raw_breakpoint) <raw_type, size>: New fields.
4934 <inserted>: Update comment.
4935 <shlib_disabled>: Delete field.
4936 (enum bkpt_type) <gdb_breakpoint>: Delete value.
4937 <gdb_breakpoint_Z0, gdb_breakpoint_Z1, gdb_breakpoint_Z2,
4938 gdb_breakpoint_Z3, gdb_breakpoint_Z4>: New values.
4939 (raw_bkpt_type_to_target_hw_bp_type): New function.
4940 (find_enabled_raw_code_breakpoint_at): New function.
4941 (find_raw_breakpoint_at): New type and size parameters. Use them.
4942 (insert_memory_breakpoint): New function, based off
4943 set_raw_breakpoint_at.
4944 (remove_memory_breakpoint): New function.
4945 (set_raw_breakpoint_at): Reimplement.
4946 (set_breakpoint): New, based on set_breakpoint_at.
4947 (set_breakpoint_at): Reimplement.
4948 (delete_raw_breakpoint): Go through the_target->remove_point
4949 instead of assuming memory breakpoints.
4950 (find_gdb_breakpoint_at): Delete.
4951 (Z_packet_to_bkpt_type, Z_packet_to_raw_bkpt_type): New functions.
4952 (find_gdb_breakpoint): New function.
4953 (set_gdb_breakpoint_at): Delete.
4954 (z_type_supported): New function.
4955 (set_gdb_breakpoint_1): New function, loosely based off
4956 set_gdb_breakpoint_at.
4957 (check_gdb_bp_preconditions, set_gdb_breakpoint): New functions.
4958 (delete_gdb_breakpoint_at): Delete.
4959 (delete_gdb_breakpoint_1): New function, loosely based off
4960 delete_gdb_breakpoint_at.
4961 (delete_gdb_breakpoint): New function.
4962 (clear_gdb_breakpoint_conditions): Rename to ...
4963 (clear_breakpoint_conditions): ... this. Don't handle a NULL
4964 breakpoint.
4965 (add_condition_to_breakpoint): Make static.
4966 (add_breakpoint_condition): Take a struct breakpoint pointer
4967 instead of an address. Adjust.
4968 (gdb_condition_true_at_breakpoint): Rename to ...
4969 (gdb_condition_true_at_breakpoint_z_type): ... this, and add
4970 z_type parameter.
4971 (gdb_condition_true_at_breakpoint): Reimplement.
4972 (add_breakpoint_commands): Take a struct breakpoint pointer
4973 instead of an address. Adjust.
4974 (gdb_no_commands_at_breakpoint): Rename to ...
4975 (gdb_no_commands_at_breakpoint_z_type): ... this. Add z_type
4976 parameter. Return true if no breakpoint was found. Change debug
4977 output.
4978 (gdb_no_commands_at_breakpoint): Reimplement.
4979 (run_breakpoint_commands): Rename to ...
4980 (run_breakpoint_commands_z_type): ... this. Add z_type parameter,
4981 and change return type to boolean.
4982 (run_breakpoint_commands): New function.
4983 (gdb_breakpoint_here): Also check for Z1 breakpoints.
4984 (uninsert_raw_breakpoint): Don't try to reinsert a disabled
4985 breakpoint. Go through the_target->remove_point instead of
4986 assuming memory breakpoint.
4987 (uninsert_breakpoints_at, uninsert_all_breakpoints): Uninsert
4988 software and hardware breakpoints.
4989 (reinsert_raw_breakpoint): Go through the_target->insert_point
4990 instead of assuming memory breakpoint.
4991 (reinsert_breakpoints_at, reinsert_all_breakpoints): Reinsert
4992 software and hardware breakpoints.
4993 (check_breakpoints, breakpoint_here, breakpoint_inserted_here):
4994 Check both software and hardware breakpoints.
4995 (validate_inserted_breakpoint): Assert the breakpoint is a
4996 software breakpoint. Set the inserted flag to -1 instead of
4997 setting shlib_disabled.
4998 (delete_disabled_breakpoints): Adjust.
4999 (validate_breakpoints): Only validate software breakpoints.
5000 Adjust to inserted flag change.
5001 (check_mem_read, check_mem_write): Skip breakpoint types other
5002 than software breakpoints. Adjust to inserted flag change.
5003 * mem-break.h (enum raw_bkpt_type): New enum.
5004 (raw_breakpoint, struct process_info): Forward declare.
5005 (Z_packet_to_target_hw_bp_type): Delete declaration.
5006 (raw_bkpt_type_to_target_hw_bp_type, Z_packet_to_raw_bkpt_type)
5007 (set_gdb_breakpoint, delete_gdb_breakpoint)
5008 (clear_breakpoint_conditions): New declarations.
5009 (set_gdb_breakpoint_at, clear_gdb_breakpoint_conditions): Delete.
5010 (breakpoint_inserted_here): Update comment.
5011 (add_breakpoint_condition, add_breakpoint_commands): Replace
5012 address parameter with a breakpoint pointer parameter.
5013 (gdb_breakpoint_here): Update comment.
5014 (delete_gdb_breakpoint_at): Delete.
5015 (insert_memory_breakpoint, remove_memory_breakpoint): Declare.
5016 * server.c (process_point_options): Take a struct breakpoint
5017 pointer instead of an address. Adjust.
5018 (process_serial_event) <Z/z packets>: Use set_gdb_breakpoint and
5019 delete_gdb_breakpoint.
5020 * spu-low.c (spu_target_ops): Install NULL as
5021 supports_z_point_type method.
5022 * target.h: Include mem-break.h.
5023 (struct target_ops) <prepare_to_access_memory>: Update comment.
5024 <supports_z_point_type>: New field.
5025 <insert_point, remove_point>: Take an enum raw_bkpt_type argument
5026 instead of a char. Also take a raw breakpoint pointer.
5027 * win32-arm-low.c (the_low_target): Install NULL as
5028 supports_z_point_type.
5029 * win32-i386-low.c (i386_supports_z_point_type): New function.
5030 (i386_insert_point, i386_remove_point): Adjust to new interface.
5031 (the_low_target): Install i386_supports_z_point_type.
5032 * win32-low.c (win32_supports_z_point_type): New function.
5033 (win32_insert_point, win32_remove_point): Adjust to new interface.
5034 (win32_target_ops): Install win32_supports_z_point_type.
5035 * win32-low.h (struct win32_target_ops):
5036 <supports_z_point_type>: New method.
5037 <insert_point, remove_point>: Take an enum raw_bkpt_type argument
5038 instead of a char. Also take a raw breakpoint pointer.
5039
5040 2014-05-20 Pedro Alves <palves@redhat.com>
5041
5042 * mem-break.h: Include break-common.h.
5043 (Z_PACKET_SW_BP, Z_PACKET_HW_BP, Z_PACKET_WRITE_WP)
5044 (Z_PACKET_READ_WP, Z_PACKET_ACCESS_WP): New defines.
5045 (Z_packet_to_target_hw_bp_type): New declaration.
5046 * mem-break.c (Z_packet_to_target_hw_bp_type): New function.
5047 * i386-low.c (Z_PACKET_HW_BP, Z_PACKET_WRITE_WP, Z_PACKET_READ_WP)
5048 (Z_PACKET_ACCESS_WP): Delete macros.
5049 (Z_packet_to_hw_type): Delete function.
5050 * i386-low.h: Don't include break-common.h here.
5051 (Z_packet_to_hw_type): Delete declaration.
5052 * linux-x86-low.c (x86_insert_point, x86_insert_point): Call
5053 Z_packet_to_target_hw_bp_type instead of Z_packet_to_hw_type.
5054 * win32-i386-low.c (i386_insert_point, i386_remove_point): Call
5055 Z_packet_to_target_hw_bp_type instead of Z_packet_to_hw_type.
5056 * linux-aarch64-low.c: Don't include break-common.h here.
5057 (Z_PACKET_SW_BP, Z_PACKET_HW_BP, Z_PACKET_WRITE_WP)
5058 (Z_PACKET_READ_WP, Z_PACKET_ACCESS_WP): Delete macros.
5059 (Z_packet_to_target_hw_bp_type): Delete function.
5060 * linux-mips-low.c (rsp_bp_type_to_target_hw_bp_type): Delete
5061 function.
5062 (mips_insert_point, mips_remove_point): Use
5063 Z_packet_to_target_hw_bp_type.
5064
5065 2014-05-20 Pedro Alves <palves@redhat.com>
5066
5067 * linux-aarch64-low.c: Include break-common.h.
5068 (enum target_point_type): Delete.
5069 (Z_packet_to_point_type): Rename to ...
5070 (Z_packet_to_target_hw_bp_type): ... this, and return a
5071 target_hw_bp_type instead.
5072 (aarch64_show_debug_reg_state): Take an enum target_hw_bp_type
5073 instead of an enum target_point_type.
5074 (aarch64_point_encode_ctrl_reg): Likewise. Compute type mask from
5075 breakpoint type.
5076 (aarch64_dr_state_insert_one_point)
5077 (aarch64_dr_state_remove_one_point, aarch64_handle_breakpoint)
5078 (aarch64_handle_aligned_watchpoint)
5079 (aarch64_handle_unaligned_watchpoint, aarch64_handle_watchpoint):
5080 Take an enum target_hw_bp_type instead of an enum
5081 target_point_type.
5082 (aarch64_supports_z_point_type): New function.
5083 (aarch64_insert_point, aarch64_remove_point): Use it. Adjust to
5084 use Z_packet_to_target_hw_bp_type.
5085
5086 2014-05-20 Joel Brobecker <brobecker@adacore.com>
5087
5088 * configure.ac: Only use -Werror by default when DEVELOPMENT
5089 is true.
5090 * configure: Regenerate.
5091
5092 2014-05-19 Jan Kratochvil <jan.kratochvil@redhat.com>
5093
5094 Fix gdbserver qGetTLSAddr for x86_64 -m32.
5095 * linux-x86-low.c (X86_64_USER_REGS): New.
5096 (x86_fill_gregset): Call memset for BUF first in x86_64 -m32 case.
5097
5098 2014-04-28 Yao Qi <yao@codesourcery.com>
5099
5100 * Makefile.in (i386-avx512.c): Fix the typo of generated file
5101 name.
5102
5103 2014-04-25 Pedro Alves <palves@redhat.com>
5104
5105 PR server/16255
5106 * linux-low.c (linux_attach_fail_reason_string): New function.
5107 (linux_attach_lwp): Delete.
5108 (linux_attach_lwp_1): Rename to ...
5109 (linux_attach_lwp): ... this. Take a ptid instead of a pid as
5110 argument. Remove "initial" parameter. Return int instead of
5111 void. Don't error or warn here.
5112 (linux_attach): Adjust to call linux_attach_lwp. Call error on
5113 failure to attach to the tgid. Call warning when failing to
5114 attach to an lwp.
5115 * linux-low.h (linux_attach_lwp): Take a ptid instead of a pid as
5116 argument. Remove "initial" parameter. Return int instead of
5117 void. Don't error or warn here.
5118 (linux_attach_fail_reason_string): New declaration.
5119 * thread-db.c (attach_thread): Adjust to linux_attach_lwp's
5120 interface change. Use linux_attach_fail_reason_string.
5121
5122 2014-04-24 Michael Sturm <michael.sturm@mintel.com>
5123 Walfred Tedeschi <walfred.tedeschi@intel.com>
5124
5125 * Makefile.in: Added rules to handle new files
5126 i386-avx512.c i386-avx512-linux.c amd64-avx512.c
5127 amd64-avx512-linux.c x32-avx512.c x32-avx512-linux.c.
5128 * configure.srv (srv_i386_regobj): Add i386-avx512.o.
5129 (srv_i386_linux_regobj): Add i386-avx512-linux.o.
5130 (srv_amd64_regobj): Add amd64-avx512.o and x32-avx512.o.
5131 (srv_amd64_linux_regobj): Add amd64-avx512-linux.o and
5132 x32-avx512-linux.o.
5133 (srv_i386_32bit_xmlfiles): Add i386/32bit-avx512.xml.
5134 (srv_i386_64bit_xmlfiles): Add i386/64bit-avx512.xml.
5135 (srv_amd64_xmlfiles): Add i386/amd64-avx512.xml and
5136 i386/x32-avx512.xml.
5137 (srv_i386_linux_xmlfiles): Add i386/i386-avx512-linux.xml.
5138 (srv_amd64_linux_xmlfiles): Add i386/amd64-avx512-linux.xml and
5139 i386/x32-avx512-linux.xml.
5140 * i387-fp.c (num_avx512_k_registers): New constant for number
5141 of K registers.
5142 (num_avx512_zmmh_low_registers): New constant for number of
5143 lower ZMM registers (0-15).
5144 (num_avx512_zmmh_high_registers): New constant for number of
5145 higher ZMM registers (16-31).
5146 (num_avx512_ymmh_registers): New contant for number of higher
5147 YMM registers (ymm16-31 added by avx521 on x86_64).
5148 (num_avx512_xmm_registers): New constant for number of higher
5149 XMM registers (xmm16-31 added by AVX512 on x86_64).
5150 (struct i387_xsave): Add space for AVX512 registers.
5151 (i387_cache_to_xsave): Change raw buffer size to 64 characters.
5152 Add code to handle AVX512 registers.
5153 (i387_xsave_to_cache): Add code to handle AVX512 registers.
5154 * linux-x86-low.c (init_registers_amd64_avx512_linux): New
5155 prototypei from generated file.
5156 (tdesc_amd64_avx512_linux): Likewise.
5157 (init_registers_x32_avx512_linux): Likewise.
5158 (tdesc_x32_avx512_linux): Likewise.
5159 (init_registers_i386_avx512_linux): Likewise.
5160 (tdesc_i386_avx512_linux): Likewise.
5161 (x86_64_regmap): Add AVX512 registers.
5162 (x86_linux_read_description): Add code to handle AVX512 XSTATE
5163 mask.
5164 (initialize_low_arch): Add code to initialize AVX512 registers.
5165
5166 2014-04-23 Pedro Alves <palves@redhat.com>
5167
5168 * mem-break.c (find_gdb_breakpoint_at): Make static.
5169 * mem-break.h (find_gdb_breakpoint_at): Delete declaration.
5170
5171 2014-04-23 Pedro Alves <palves@redhat.com>
5172
5173 * i386-low.c: Don't include break-common.h here.
5174 (i386_low_insert_watchpoint, i386_low_remove_watchpoint): Change
5175 prototype to take target_hw_bp_type as argument instead of a Z
5176 packet char.
5177 * i386-low.h: Include break-common.h here.
5178 (Z_packet_to_hw_type): Declare.
5179 (i386_low_insert_watchpoint, i386_low_remove_watchpoint): Change
5180 prototypes.
5181 * linux-x86-low.c (x86_insert_point): Convert the packet number to
5182 a target_hw_bp_type before calling i386_low_insert_watchpoint.
5183 (x86_remove_point): Convert the packet number to a
5184 target_hw_bp_type before calling i386_low_remove_watchpoint.
5185 * win32-i386-low.c (i386_insert_point): Convert the packet number
5186 to a target_hw_bp_type before calling i386_low_insert_watchpoint.
5187 (i386_remove_point): Convert the packet number to a
5188 target_hw_bp_type before calling i386_low_remove_watchpoint.
5189
5190 2014-04-23 Pedro Alves <palves@redhat.com>
5191
5192 * utils.h (perror_with_name): Add ATTRIBUTE_NORETURN.
5193
5194 2014-04-10 Pedro Alves <palves@redhat.com>
5195
5196 * mem-break.c (add_breakpoint_condition, add_breakpoint_commands):
5197 Check if the condition or command is NULL before checking if the
5198 breakpoint is known. On success, return true.
5199 * mem-break.h (add_breakpoint_condition): Document return.
5200 (add_breakpoint_commands): Add describing comment.
5201 * server.c (skip_to_semicolon): New function.
5202 (process_point_options): Use it.
5203
5204 2014-04-09 Pedro Alves <palves@redhat.com>
5205
5206 * linux-low.c (linux_read_loadmap): Pass current_inferior directly
5207 to lwpid_of.
5208
5209 2014-02-27 Pedro Alves <palves@redhat.com>
5210
5211 PR 12702
5212 * inferiors.h (A_I_NEXT, ALL_INFERIORS_TYPE, ALL_PROCESSES): New
5213 macros.
5214 * linux-low.c (delete_lwp, handle_extended_wait): Add debug
5215 output.
5216 (last_thread_of_process_p): Take a PID argument instead of a
5217 thread pointer.
5218 (linux_wait_for_lwp): Delete.
5219 (num_lwps, check_zombie_leaders, not_stopped_callback): New
5220 functions.
5221 (linux_low_filter_event): New function, party factored out from
5222 linux_wait_for_event.
5223 (linux_wait_for_event): Rename to ...
5224 (linux_wait_for_event_filtered): ... this. Add new filter ptid
5225 argument. Partly rewrite. Always use waitpid(-1, WNOHANG) and
5226 sigsuspend. Check for zombie leaders.
5227 (linux_wait_for_event): Reimplement as wrapper around
5228 linux_wait_for_event_filtered.
5229 (linux_wait_1): Handle TARGET_WAITKIND_NO_RESUMED. Assume that if
5230 a normal or signal exit is seen, it's the whole process exiting.
5231 (wait_for_sigstop): No longer a for_each_inferior callback.
5232 Rewrite on top of linux_wait_for_event_filtered.
5233 (stop_all_lwps): Call wait_for_sigstop directly.
5234 * server.c (resume, handle_target_event): Handle
5235 TARGET_WAITKIND_NO_RESUMED.
5236
5237 2014-02-26 Joel Brobecker <brobecker@adacore.com>
5238
5239 * win32-low.c (psapi_get_dll_name,
5240 * win32_CreateToolhelp32Snapshot): Delete.
5241 (win32_CreateToolhelp32Snapshot, win32_Module32First)
5242 (win32_Module32Next, load_toolhelp, toolhelp_get_dll_name):
5243 Delete.
5244 (handle_load_dll): Add function description.
5245 Remove code using psapi_get_dll_name and toolhelp_get_dll_name.
5246
5247 2014-02-26 Joel Brobecker <brobecker@adacore.com>
5248
5249 * win32-low.c (win32_add_one_solib): Add 0x1000 to load_addr.
5250 Add comment.
5251 (win32_add_all_dlls): Remove 0x1000 offset applied to DLL
5252 base address when calling win32_add_one_solib.
5253 (handle_load_dll): Delete local variable load_addr.
5254 Remove 0x1000 offset applied to DLL base address when calling
5255 win32_add_one_solib.
5256 (handle_unload_dll): Add comment.
5257
5258 2014-02-26 Joel Brobecker <brobecker@adacore.com>
5259
5260 * win32-low.c (win32_add_all_dlls): Renames
5261 win32_ensure_ntdll_loaded. Rewrite function documentation.
5262 Adjust implementation to always load all DLLs.
5263 Add 0x1000 offset to DLL base address when calling
5264 win32_add_one_solib.
5265 (child_initialization_done): New static global.
5266 (do_initial_child_stuff): Set child_initialization_done to
5267 zero during child initialization, and 1 after. Replace call
5268 to win32_ensure_ntdll_loaded by call to win32_add_all_dlls.
5269 Add comment.
5270 (match_dll_by_basename, dll_is_loaded_by_basename): Delete.
5271 (handle_unload_dll): Add function documentation.
5272 (get_child_debug_event): Ignore load and unload DLL events
5273 during child initialization.
5274
5275 2014-02-20 Doug Evans <dje@google.com>
5276
5277 Remove global all_lwps.
5278 * inferiors.h (ptid_of): Move here from linux-low.h.
5279 (pid_of, lwpid_of): Ditto.
5280 * linux-aarch64-low.c (debug_reg_change_callback): Update, "entry"
5281 parameter is a struct thread_info * now.
5282 (aarch64_notify_debug_reg_change): Fetch pid from current_inferior
5283 directly. Pass &all_threads to find_inferior instead of &all_lwps.
5284 (aarch64_stopped_data_address): Fetch lwpid from current_inferior
5285 directly.
5286 (aarch64_linux_prepare_to_resume): Fetch ptid from thread.
5287 (aarch64_arch_setup): Fetch lwpid from current_inferior directly.
5288 * linux-arm-low.c (update_registers_callback): Update, "entry"
5289 parameter is a struct thread_info * now.
5290 Fetch lwpid from current_inferior directly.
5291 (arm_insert_point): Pass &all_threads to find_inferior instead of
5292 &all_lwps.
5293 (arm_remove_point): Ditto.
5294 (arm_stopped_by_watchpoint): Fetch lwp from current_inferior.
5295 (arm_prepare_to_resume): Fetch pid from thread.
5296 (arm_read_description): Fetch lwpid from current_inferior directly.
5297 * linux-low.c (all_lwps): Delete.
5298 (delete_lwp): Delete call to remove_inferior.
5299 (handle_extended_wait): Fetch lwpid from thread.
5300 (add_lwp): Don't set lwp->entry.id. Remove call to
5301 add_inferior_to_list.
5302 (linux_attach_lwp_1): Fetch pid from current_inferior directly.
5303 (linux_kill_one_lwp): Fetch ptid,lwpid from thread.
5304 (kill_one_lwp_callback): Ditto.
5305 (linux_kill): Don't dereference NULL pointer.
5306 Fetch ptid,lwpid from thread.
5307 (get_detach_signal): Fetch ptid from thread.
5308 (linux_detach_one_lwp): Fetch ptid,lwpid from thread.
5309 Simplify call to regcache_invalidate_thread.
5310 (delete_lwp_callback): Update, "entry" parameter is a
5311 struct thread_info * now. Fetch pid from thread.
5312 (linux_mourn): Pass &all_threads to find_inferior instead of &all_lwps.
5313 (status_pending_p_callback): Update, "entry" parameter is a
5314 struct thread_info * now. Fetch ptid from thread.
5315 (find_lwp_pid): Update, "entry" parameter is a
5316 struct thread_info * now.
5317 (linux_wait_for_lwp): Fetch pid from thread.
5318 (linux_fast_tracepoint_collecting): Fetch lwpid from thread.
5319 (maybe_move_out_of_jump_pad): Fetch lwpid from current_inferior.
5320 (enqueue_one_deferred_signal): Fetch lwpid from thread.
5321 (dequeue_one_deferred_signal): Ditto.
5322 (cancel_breakpoint): Fetch ptid from current_inferior.
5323 (linux_wait_for_event): Pass &all_threads to find_inferior,
5324 not &all_lwps. Fetch ptid, lwpid from thread.
5325 (count_events_callback): Update, "entry" parameter is a
5326 struct thread_info * now.
5327 (select_singlestep_lwp_callback): Ditto.
5328 (select_event_lwp_callback): Ditto.
5329 (cancel_breakpoints_callback): Ditto.
5330 (linux_cancel_breakpoints): Pass &all_threads to find_inferior,
5331 not &all_lwps.
5332 (select_event_lwp): Ditto. Fetch ptid from event_thread.
5333 (unsuspend_one_lwp): Update, "entry" parameter is a
5334 struct thread_info * now.
5335 (unsuspend_all_lwps): Pass &all_threads to find_inferior,
5336 not &all_lwps.
5337 (linux_stabilize_threads): Ditto. And for for_each_inferior.
5338 Fetch lwpid from thread, not lwp.
5339 (linux_wait_1): Fetch ptid, lwpid from current_inferior.
5340 Pass &all_threads to find_inferior, not &all_lwps.
5341 (send_sigstop): Fetch lwpid from thread, not lwp.
5342 (send_sigstop_callback): Update, "entry" parameter is a
5343 struct thread_info * now.
5344 (suspend_and_send_sigstop_callback): Ditto.
5345 (wait_for_sigstop): Ditto. Fetch ptid, lwpid from thread, lwp.
5346 (stuck_in_jump_pad_callback): Update, "entry" parameter is a
5347 struct thread_info * now.
5348 (move_out_of_jump_pad_callback): Ditto. Fetch ptid, lwpid
5349 from thread, lwp.
5350 (lwp_running): Update, "entry" parameter is a
5351 struct thread_info * now.
5352 (stop_all_lwps): Fetch ptid from thread.
5353 Pass &all_threads to find_inferior, for_each_inferior, not &all_lwps.
5354 (linux_resume_one_lwp): Fetch lwpid from thread.
5355 (linux_set_resume_request): Update, "entry" parameter is a
5356 struct thread_info * now. Fetch pid, lwpid from thread.
5357 (resume_status_pending_p): Update, "entry" parameter is a
5358 struct thread_info * now.
5359 (need_step_over_p): Ditto. Fetch lwpid from thread.
5360 (start_step_over): Fetch lwpid from thread.
5361 (linux_resume_one_thread): Update, "entry" parameter is a
5362 struct thread_info * now. Fetch lwpid from thread.
5363 (linux_resume): Pass &all_threads to find_inferior, not &all_lwps.
5364 (proceed_one_lwp): Update, "entry" parameter is a
5365 struct thread_info * now. Fetch lwpid from thread.
5366 (unsuspend_and_proceed_one_lwp): Update, "entry" parameter is a
5367 struct thread_info * now.
5368 (proceed_all_lwps): Pass &all_threads to find_inferior, not &all_lwps.
5369 (unstop_all_lwps): Ditto. Fetch lwpid from thread.
5370 (regsets_fetch_inferior_registers): Fetch lwpid from current_inferior
5371 directly.
5372 (regsets_store_inferior_registers): Ditto.
5373 (fetch_register, store_register): Ditto.
5374 (linux_read_memory, linux_write_memory): Ditto.
5375 (linux_request_interrupt): Ditto.
5376 (linux_read_auxv): Ditto.
5377 (linux_xfer_siginfo): Ditto.
5378 (linux_qxfer_spu): Ditto.
5379 (linux_qxfer_libraries_svr4): Ditto.
5380 * linux-low.h (ptid_of, pid_of, lwpid_of): Delete,
5381 moved to inferiors.h.
5382 (get_lwp): Delete.
5383 (get_thread_lwp): Update.
5384 (struct lwp_info): Delete member "entry". Simplify comment for
5385 member "thread".
5386 (all_lwps): Delete.
5387 * linux-mips-low.c (mips_read_description): Fetch lwpid from
5388 current_inferior directly.
5389 (update_watch_registers_callback): Update, "entry" parameter is a
5390 struct thread_info * now. Fetch pid from thread.
5391 (mips_linux_prepare_to_resume): Fetch ptid from thread.
5392 (mips_insert_point): Fetch lwpid from current_inferior.
5393 Pass &all_threads to find_inferior, not &all_lwps.
5394 (mips_remove_point): Pass &all_threads to find_inferior, not &all_lwps.
5395 (mips_stopped_by_watchpoint): Fetch lwpid from current_inferior
5396 directly.
5397 (mips_stopped_data_address): Ditto.
5398 * linux-s390-low.c (s390_arch_setup): Fetch pid from current_inferior
5399 directly.
5400 * linux-tile-low.c (tile_arch_setup): Ditto.
5401 * linux-x86-low.c (x86_get_thread_area): Fetch lwpid from thread.
5402 (update_debug_registers_callback): Update, "entry" parameter is a
5403 struct thread_info * now. Fetch pid from thread.
5404 (i386_dr_low_set_addr): Fetch pid from current_inferior directly.
5405 Pass &all_threads to find_inferior, not &all_lwps.
5406 (i386_dr_low_get_addr): Fetch ptid from current_inferior directly.
5407 (i386_dr_low_set_control): Fetch pid from current_inferior directly.
5408 Pass &all_threads to find_inferior, not &all_lwps.
5409 (i386_dr_low_get_control): Fetch ptid from current_inferior directly.
5410 (i386_dr_low_get_status): Ditto.
5411 (x86_linux_prepare_to_resume): Fetch ptid from thread.
5412 (x86_siginfo_fixup): Fetch lwpid from current_inferior directly.
5413 (x86_linux_read_description): Ditto.
5414 * proc-service.c (ps_getpid): Fetch pid from current_inferior directly.
5415
5416 2014-02-20 Doug Evans <dje@google.com>
5417
5418 * inferiors.c (get_first_inferior): Fix buglet.
5419
5420 2014-02-19 Doug Evans <dje@google.com>
5421
5422 * gdbthread.h (add_thread): Change result type to struct thread_info *.
5423 * inferiors.c (add_thread): Change result type to struct thread_info *.
5424 All callers updated.
5425 (add_lwp): Call add_thread here instead of in callers.
5426 All callers updated.
5427 * linux-low.h (get_lwp_thread): Rewrite.
5428 (struct lwp_info): New member "thread".
5429
5430 2014-02-19 Doug Evans <dje@google.com>
5431
5432 * linux-low.c (add_lwp): Change result to struct lwp_info *.
5433 All callers updated.
5434
5435 2014-02-19 Doug Evans <dje@google.com>
5436
5437 * inferiors.c (add_thread): Fix whitespace.
5438
5439 2014-02-19 Doug Evans <dje@google.com>
5440
5441 * dll.c (clear_dlls): Replace accessing list implemention details
5442 with API function.
5443 * gdbthread.h (get_first_thread): Declare.
5444 * inferiors.c (for_each_inferior_with_data): New function.
5445 (get_first_thread): New function.
5446 (find_thread_ptid): Simplify.
5447 (get_first_inferior): New function.
5448 (clear_list): Delete.
5449 (one_inferior_p): New function.
5450 (clear_inferior_list): New function.
5451 (clear_inferiors): Update.
5452 * inferiors.h (for_each_inferior_with_data): Declare.
5453 (clear_inferior_list): Declare.
5454 (one_inferior_p): Declare.
5455 (get_first_inferior): Declare.
5456 * linux-low.c (linux_wait_for_event): Replace accessing list
5457 implemention details with API function.
5458 * server.c (target_running): Ditto.
5459 (accumulate_file_name_length): New function.
5460 (emit_dll_description): New function.
5461 (handle_qxfer_libraries): Replace accessing list implemention
5462 details with API function.
5463 (handle_qxfer_threads_worker): New function.
5464 (handle_qxfer_threads_proper): Replace accessing list implemention
5465 details with API function.
5466 (handle_query): Ditto.
5467 (visit_actioned_threads_callback_ftype): New typedef.
5468 (visit_actioned_threads_data): New struct.
5469 (visit_actioned_threads): Rewrite to be find_inferior callback.
5470 (resume): Call find_inferior.
5471 (handle_status): Replace accessing list implemention
5472 details with API function.
5473 (process_serial_event): Replace accessing list implemention details
5474 with API function.
5475 * target.c (set_desired_inferior): Replace accessing list implemention
5476 details with API function.
5477 * tracepoint.c (same_process_p): New function.
5478 (gdb_agent_about_to_close): Replace accessing list implemention
5479 details with API function.
5480 * win32-low.c (child_delete_thread): Replace accessing list
5481 implemention details with API function.
5482 (match_dll_by_basename): New function.
5483 (dll_is_loaded_by_basename): New function.
5484 (win32_ensure_ntdll_loaded): Replace accessing list implemention
5485 details call to dll_is_loaded_by_basename.
5486
5487 2014-02-19 Doug Evans <dje@google.com>
5488
5489 * dll.h (struct dll_info): Add comment.
5490 * gdbthread.h (struct thread_info): Add comment.
5491 (current_ptid): Simplify.
5492 * inferiors.c (add_process): Update.
5493 (remove_process): Update.
5494 * inferiors.h (struct process_info): Rename member "head" to "entry".
5495 * linux-low.c (delete_lwp): Update.
5496 (add_lwp): Update.
5497 (last_thread_of_process_p): Update.
5498 (kill_one_lwp_callback, linux_kill): Update.
5499 (status_pending_p_callback): Update.
5500 (wait_for_sigstop): Update. Simplify read of ptid.
5501 (start_step_over): Update.
5502 * linux-low.h (ptid_of, pid_of, lwpid_of): Update.
5503 (get_lwp_thread): Update.
5504 (struct lwp_info): Rename member "head" to "entry".
5505 * regcache.h (inferior_list_entry): Delete.
5506 * server.c (kill_inferior_callback): Update.
5507 (detach_or_kill_inferior_callback): Update.
5508 (print_started_pid): Update.
5509 (print_attached_pid): Update.
5510 (process_serial_event): Simplify read of ptid.
5511 * thread-db.c (thread_db_create_event): Update.
5512 (thread_db_get_tls_address): Update.
5513 * win32-low.c (current_inferior_ptid): Simplify.
5514
5515 2014-02-19 Tom Tromey <tromey@redhat.com>
5516
5517 * target.h (struct target_ops) <supports_btrace>: Add target_ops
5518 argument.
5519 (target_supports_btrace): Update.
5520
5521 2014-02-14 Yao Qi <yao@codesourcery.com>
5522
5523 * Makefile.in (IPA_OBJS): Append rsp-low-ipa.o.
5524 (rsp-low-ipa.o): New target.
5525
5526 2014-02-12 Tom Tromey <tromey@redhat.com>
5527
5528 * ax.c (gdb_parse_agent_expr): Use hex2bin, not
5529 convert_ascii_to_int.
5530 * regcache.c (registers_to_string): Likewise.
5531 * remote-utils.c (decode_M_packet): Likewise.
5532 * server.c (process_serial_event): Likewise.
5533
5534 2014-02-12 Tom Tromey <tromey@redhat.com>
5535
5536 * server.c (handle_query, handle_v_run): Use hex2bin, not
5537 unhexify.
5538 * tracepoint.c (cmd_qtdpsrc, cmd_qtdv, cmd_qtnotes): Likewise.
5539
5540 2014-02-12 Tom Tromey <tromey@redhat.com>
5541
5542 * ax.c (gdb_unparse_agent_expr): Use bin2hex, not
5543 convert_int_to_ascii.
5544 * regcache.c (registers_to_string, collect_register_as_string):
5545 Likewise.
5546 * remote-utils.c (look_up_one_symbol, relocate_instruction):
5547 Likewise.
5548 * server.c (process_serial_event): Likewise.
5549 * tracepoint.c (cmd_qtstatus, response_source, response_tsv)
5550 (cmd_qtbuffer, cstr_to_hexstr): Likewise.
5551
5552 2014-02-12 Tom Tromey <tromey@redhat.com>
5553
5554 * remote-utils.c (look_up_one_symbol, monitor_output): Use
5555 bin2hex, not hexify.
5556 * tracepoint.c (cmd_qtstatus): Likewise.
5557
5558 2014-02-12 Tom Tromey <tromey@redhat.com>
5559
5560 * remote-utils.c (monitor_output): Pass explicit length to
5561 hexify.
5562
5563 2014-02-12 Tom Tromey <tromey@redhat.com>
5564
5565 * tracepoint.c: Include rsp-low.h.
5566 * server.c: Include rsp-low.h.
5567 * remote-utils.h (convert_ascii_to_int, convert_int_to_ascii)
5568 (unhexify, hexify, remote_escape_output, unpack_varlen_hex): Don't
5569 declare.
5570 * remote-utils.c: Include rsp-low.h.
5571 (fromhex, hexchars, ishex, unhexify, tohex, hexify)
5572 (remote_escape_output, remote_unescape_input, unpack_varlen_hex)
5573 (convert_int_to_ascii, convert_ascii_to_int): Move to
5574 common/rsp-low.c.
5575 * regcache.c: Include rsp-low.h.
5576 * ax.c: Include rsp-low.h.
5577 * Makefile.in (SFILES): Add common/rsp-low.c.
5578 (OBS): Add rsp-low.o.
5579 (rsp-low.o): New target.
5580
5581 2014-02-12 Tom Tromey <tromey@redhat.com>
5582
5583 * utils.h (pulongest, plongest, phex_nz): Don't declare.
5584 Include print-utils.h.
5585 * utils.c (NUMCELLS, CELLSIZE, get_cell, decimal2str, pulongest)
5586 (plongest, thirty_two, phex_nz): Remove.
5587 * Makefile.in (SFILES): Add common/print-utils.c.
5588 (OBS): Add print-utils.o.
5589 (print-utils-ipa.o): New target.
5590 (print-utils.o): New target.
5591 (IPA_OBJS): Add print-utils-ipa.o.
5592
5593 2014-02-06 Tom Tromey <tromey@redhat.com>
5594
5595 * Makefile.in (SFILES): Fix indentation.
5596
5597 2014-02-05 Doug Evans <dje@google.com>
5598
5599 * linux-low.c (linux_wait_for_event): Improve comment.
5600 (linux_wait_1): Keep current_inferior in sync with event_child.
5601
5602 2014-01-22 Doug Evans <dje@google.com>
5603
5604 * gdbthread.h (gdb_id_to_thread): Delete, unused.
5605
5606 2014-01-22 Doug Evans <dje@google.com>
5607
5608 * configure.ac (AC_CHECK_FUNCS): Add test for gettimeofday.
5609 * configure: Regenerate.
5610 * config.in: Regenerate.
5611 * Makefile.in (SFILES): Add debug.c.
5612 (OBS): Add debug.o.
5613 * debug.c: New file.
5614 * debug.h: New file.
5615 * linux-aarch64-low.c (*): Update all debugging printfs to use
5616 debug_printf instead of fprintf.
5617 * linux-arm-low.c (*): Ditto.
5618 * linux-cris-low.c (*): Ditto.
5619 * linux-crisv32-low.c (*): Ditto.
5620 * linux-m32r-low.c (*): Ditto.
5621 * linux-sparc-low.c (*): Ditto.
5622 * linux-x86.c (*): Ditto.
5623 * linux-low.c (*): Ditto.
5624 (linux_wait_1): Add calls to debug_enter, debug_exit.
5625 (linux_wait): Remove redundant debugging printf.
5626 (stop_all_lwps): Add calls to debug_enter, debug_exit.
5627 (linux_resume, unstop_all_lwps): Ditto.
5628 * mem-break.c (*): Update all debugging printfs to use
5629 debug_printf instead of fprintf.
5630 * remote-utils.c (*): Ditto.
5631 * thread-db.c (*): Ditto.
5632 * server.c #include <ctype.h>, "gdb_vecs.h".
5633 (debug_threads): Moved to debug.c.
5634 (*): Update all debugging printfs to use debug_printf instead of
5635 fprintf.
5636 (start_inferior): Replace call to fflush with call to debug_flush.
5637 (monitor_show_help): Mention set debug-format.
5638 (parse_debug_format_options): New function.
5639 (handle_monitor_command): Handle "monitor set debug-format".
5640 (gdbserver_usage): Mention --debug-format.
5641 (main): Parse --debug-format.
5642 * server.h (debug_threads): Declaration moved to debug.h.
5643 #include "debug.h".
5644 * tracepoint.c (trace_debug_1) [!IN_PROCESS_AGENT]: Add version of
5645 trace_debug_1 that uses debug_printf.
5646 (tracepoint_look_up_symbols): Update all debugging printfs to use
5647 debug_printf instead of fprintf.
5648
5649 2014-01-20 Baruch Siach <baruch@tkos.co.il>
5650
5651 * linux-xtensa-low.c: Include asm/ptrace.h instead of
5652 sys/ptrace.h.
5653
5654 2014-01-17 Pedro Alves <palves@redhat.com>
5655
5656 PR build/16445
5657 * linux-x86-low.c: Don't include elf/common.h if ELFMAG0 is
5658 defined after including gdb_proc_service.h.
5659
5660 2014-01-16 Doug Evans <dje@google.com>
5661
5662 * dll.c (UNSPECIFIED_CORE_ADDR): New macro.
5663 (match_dll): Use it.
5664
5665 2014-01-16 Markus Metzger <markus.t.metzger@intel.com>
5666
5667 * target.h (target_ops) <read_btrace>: Change parameters and
5668 return type to allow error reporting.
5669 * server.c (handle_qxfer_btrace): Support delta reads. Pass
5670 trace reading errors on.
5671 * linux-low.c (linux_low_read_btrace): Pass trace reading
5672 errors on.
5673 (linux_low_disable_btrace): New.
5674
5675 2014-01-15 Doug Evans <dje@google.com>
5676
5677 * inferiors.c (thread_id_to_gdb_id): Delete.
5678 * inferiors.h (thread_id_to_gdb_id): Delete.
5679
5680 2014-01-13 Eli Zaretskii <eliz@gnu.org>
5681
5682 * Makefile.in (INCLUDE_CFLAGS): Remove trailing slash from
5683 "-I$(srcdir)/../". Fixes MinGW compilation errors with old GCC
5684 versions.
5685
5686 2014-01-08 Pedro Alves <palves@redhat.com>
5687
5688 * server.c (handle_status): Don't discard previous queued stop
5689 replies or thread's pending status here.
5690 (main) <disconnection>: Do it here instead.
5691
5692 2014-01-08 Pedro Alves <palves@redhat.com>
5693
5694 * gdbthread.h (struct thread_info) <status_pending_p>: New field.
5695 * server.c (visit_actioned_threads, handle_pending_status): New
5696 function.
5697 (handle_v_cont): Factor out parts to ...
5698 (resume): ... this new function. If in all-stop, and a thread
5699 being resumed has a pending status, report it without actually
5700 resuming.
5701 (myresume): Adjust to use the new 'resume' function.
5702 (clear_pending_status_callback, set_pending_status_callback)
5703 (find_status_pending_thread_callback): New functions.
5704 (handle_status): Handle the case of multiple threads having
5705 interesting statuses to report. Report threads' real last signal
5706 instead of always reporting GDB_SIGNAL_TRAP. Look for a thread
5707 with an interesting thread to report the status for, instead of
5708 always reporting the status of the first thread.
5709
5710 2014-01-01 Joel Brobecker <brobecker@adacore.com>
5711
5712 * gdbserver.c (gdbserver_version): Set copyright year to 2014.
5713 * gdbreplay.c (gdbreplay_version): Likewise.
5714
5715 2013-12-18 Yufeng Zhang <yufeng.zhang@arm.com>
5716
5717 * linux-aarch64-low.c (aarch64_linux_set_debug_regs): Set
5718 iov.iov_len with the real length in use.
5719
5720 2013-12-13 Joel Brobecker <brobecker@adacore.com>
5721
5722 * Makefile.in (safe-ctype.o, lbasename.o): New rules.
5723 * configure.srv: Add safe-ctype.o and lbasename.o to srv_tgtobj
5724 for all targets that use win32-low.c.
5725 * win32-low.c (win32_ensure_ntdll_loaded): New function.
5726 (do_initial_child_stuff): Add call to win32_ensure_ntdll_loaded.
5727
5728 2013-12-13 Pedro Alves <palves@redhat.com>
5729
5730 * target.c (mywait): Set OURSTATUS->KIND to TARGET_WAITKIND_STOPPED
5731 if equal to TARGET_WAITKIND_LOADED.
5732 * win32-low.c (cached_status): New static global.
5733 (win32_wait): Add declaration.
5734 (do_initial_child_stuff): Flush all initial pending debug events
5735 up to the initial breakpoint.
5736 (win32_wait): If CACHED_STATUS was set, return that instead
5737 of doing a real wait. Remove the code resuming the execution
5738 of the inferior after receiving a TARGET_WAITKIND_LOADED event
5739 during the initial phase. Also remove the code changing
5740 OURSTATUS->KIND from TARGET_WAITKIND_LOADED to
5741 TARGET_WAITKIND_STOPPED.
5742
5743 2013-12-11 Yao Qi <yao@codesourcery.com>
5744
5745 * notif.c (handle_notif_ack): Return 0 if no notification
5746 matches.
5747
5748 2013-11-20 Doug Evans <dje@google.com>
5749
5750 * linux-low.c (linux_set_resume_request): Fix comment.
5751
5752 2013-11-20 Doug Evans <dje@google.com>
5753
5754 * linux-low.c (resume_status_pending_p): Tweak comment.
5755
5756 2013-11-20 Walfred Tedeschi <walfred.tedeschi@intel.com>
5757
5758 * Makefile.in: Add i386-mpx.c, i386-mpx-linux.c, amd64-mpx.c,
5759 amd64-mpx-linux.c, x32-mpx.c and x32-mpx-linux.c generation.
5760 * configure.srv (srv_i386_regobj): Add i386-mpx.o.
5761 (srv_i386_linux_regobj): Add i386-mpx-linux.o.
5762 (srv_amd64_regobj): Add amd64-mpx.o.
5763 (srv_amd64_linux_regobj): Add amd64-mpx-linux.o.
5764 (srv_i386_32bit_xmlfiles): Add i386/32bit-mpx.xml.
5765 (srv_i386_64bit_xmlfiles): Add i386/64bit-mpx.xml.
5766 * i387-fp.c (num_pl_bnd_register) Added constant.
5767 (num_pl_bnd_cfg_registers) Added constant.
5768 (struct i387_xsave) Added reserved area and MPX fields.
5769 (i387_cache_to_xsave, i387_xsave_to_cache) Add MPX.
5770 * linux-x86-low.c (init_registers_i386_mpx_linux): Declare new
5771 function.
5772 (tdesc_i386_mpx_linux): Add MPX amd64 target.
5773 (init_registers_amd64_mpx_linux): Declare new function.
5774 (tdesc_amd64_mpx_linux): Add MPX amd64 target.
5775 (x86_64_regmap): Add MPX registers.
5776 (x86_linux_read_description): Add MPX case.
5777 (initialize_low_arch): Initialize MPX targets.
5778
5779 2013-11-18 Tom Tromey <tromey@redhat.com>
5780
5781 * configure: Rebuild.
5782 * configure.ac: Don't check for stdlib.h.
5783 * gdbreplay.c: Unconditionally include stdlib.h.
5784
5785 2013-11-18 Tom Tromey <tromey@redhat.com>
5786
5787 * config.in: Rebuild.
5788 * configure: Rebuild.
5789 * configure.ac: Don't use AC_HEADER_DIRENT.
5790
5791 2013-11-18 Tom Tromey <tromey@redhat.com>
5792
5793 * server.h: Don't check HAVE_STRING_H.
5794 * gdbreplay.c: Don't check HAVE_STRING_H.
5795 * configure: Rebuild.
5796
5797 2013-11-18 Tom Tromey <tromey@redhat.com>
5798
5799 * Makefile.in (gdbreplay$(EXEEXT)): Depend on and link against
5800 LIBGNU.
5801
5802 2013-11-08 Tom Tromey <tromey@redhat.com>
5803
5804 * configure, config.in: Rebuild.
5805 * configure.ac: Remove unused configury.
5806
5807 2013-11-08 Tom Tromey <tromey@redhat.com>
5808
5809 * acinclude.m4: Include common.m4, codeset.m4.
5810 * configure, config.in: Rebuild.
5811 * configure.ac: Use GDB_AC_COMMON.
5812
5813 2013-11-06 Andreas Arnez <arnez@linux.vnet.ibm.com>
5814
5815 * linux-s390-low.c (HWCAP_S390_TE): New define.
5816 (s390_arch_setup): Consider the TE field in the HWCAP for
5817 determining 'have_regset_tdb'.
5818
5819 2013-10-16 Sergio Durigan Junior <sergiodj@redhat.com>
5820
5821 PR gdb/16014
5822 * tracepoint.c (download_tracepoint_1): Remove unnecessary double
5823 call to sizeof.
5824
5825 2013-10-02 Pedro Alves <palves@redhat.com>
5826
5827 * server.c (process_serial_event): Don't output "GDBserver
5828 exiting" if GDB is connected through stdio.
5829 * target.c (mywait): Likewise, be silent if GDB is connected
5830 through stdio.
5831
5832 2013-10-01 Joel Brobecker <brobecker@adacore.com>
5833
5834 * lynx-low.c (lynx_add_threads_after_attach): New function.
5835 (lynx_attach): Remove call to add_thread. Add call to
5836 lynx_add_threads_after_attach instead.
5837
5838 2013-09-28 Mike Frysinger <vapier@gentoo.org>
5839
5840 * configure.ac (AC_CHECK_HEADERS): Add sys/syscall.h
5841 * config.in, configure: Regenerated.
5842
5843 2013-09-18 Yao Qi <yao@codesourcery.com>
5844
5845 PR server/15959
5846 * server.c (start_inferior): Clear 'resume_info'.
5847
5848 2013-09-16 Jiong Wang <jiwang@tilera.com>
5849
5850 * linux-tile-low.c (tile_regsets): Modify the size field to 64-bit
5851 for each register.
5852
5853 2013-09-16 Jiong Wang <jiwang@tilera.com>
5854
5855 * configure.srv <tilegx*-*-linux*>: Remove linux-osdata.o from and add
5856 linux-tile-low.o to srv_tgtobj.
5857
5858 2013-09-16 Will Newton <will.newton@linaro.org>
5859
5860 * linux-aarch64-low.c (aarch64_linux_set_debug_regs): Zero
5861 out regs.
5862
5863 2013-09-06 Pedro Alves <palves@redhat.com>
5864
5865 * Makefile.in (gdb_proc_service_h, regdef_h, regcache_h)
5866 (signals_def, signals_h, ptid_h, ax_h, agent_h, linux_btrace_h)
5867 (linux_osdata_h, vec_h, gdb_vecs_h, host_defs_h, libiberty_h)
5868 (server_h, gdbthread_h, linux_low_h, linux_ptrace_h)
5869 (gdb_thread_db_h, linux_procfs_h, lynx_low_h, nto_low_h)
5870 (mips_linux_watch_h, i386_low_h, win32_low_h): Delete.
5871
5872 2013-09-06 Pedro Alves <palves@redhat.com>
5873
5874 * Makefile.in (linux-btrace.o, mips-linux-watch.o): Remove
5875 explicit header dependencies and use $COMPILE/$POSTCOMPILE.
5876
5877 2013-09-06 Pedro Alves <palves@redhat.com>
5878
5879 * linux-amd64-ipa.c: Include tracepoint.h.
5880 * linux-i386-ipa.c: Include tracepoint.h.
5881
5882 2013-09-06 Ricard Wanderlof <ricardw@axis.com>
5883
5884 * linux-crisv32-low.c (PTRACE_GET_THREAD_AREA): New macro.
5885 (ps_get_thread_area): New function.
5886
5887 2013-09-06 Ricard Wanderlof <ricardw@axis.com>
5888
5889 * linux-crisv32-low.c (elf_gregset_t): Delete typedef.
5890 (initialize_low_arch): Call init_registers_crisv32 rather than
5891 init_register_crisv32.
5892
5893 2013-09-05 Pedro Alves <palves@redhat.com>
5894
5895 * server.h (handle_vFile, hostio_last_error_from_errno): Move
5896 to ...
5897 * hostio.h: ... this new file.
5898 * hostio.c, server.c, linux-low.c, nto-low.c, spu-low,
5899 win32-low.c: Include hostio.h.
5900
5901 2013-09-05 Pedro Alves <palves@redhat.com>
5902
5903 * server.h (gdb_client_data, handler_func, callback_handler_func)
5904 (delete_file_handler, add_file_handler, append_callback_event)
5905 (delete_callback_event, start_event_loop, initialize_event_loop):
5906 Move to event-loop.h and include it.
5907 * event-loop.h: New file.
5908
5909 2013-09-05 Pedro Alves <palves@redhat.com>
5910
5911 * dll.c, inferiors.c, remote-utils.c, server.c: Include "dll.h".
5912 * server.h (struct dll_info, all_dlls, dlls_changed, clear_dlls)
5913 (loaded_dll, unloaded_dll): Move to ...
5914 * dll.h: ... this new file.
5915 * inferiors.c, remote-utils.c, win32-low.c: Include "dll.h".
5916
5917 2013-09-05 Pedro Alves <palves@redhat.com>
5918
5919 * server.h (current_process, get_thread_process, all_processes)
5920 (add_inferior_to_list, for_each_inferior, current_inferior)
5921 (remove_inferior, add_process, remove_process, find_process_pid)
5922 (have_started_inferiors_p, have_attached_inferiors_p)
5923 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id)
5924 (clear_inferiors, find_inferior, find_inferior_id)
5925 (inferior_target_data, set_inferior_target_data)
5926 (inferior_regcache_data, set_inferior_regcache_data): Move to
5927 inferiors.h, and include it.
5928 * inferiors.h: New file.
5929
5930 2013-09-05 Pedro Alves <palves@redhat.com>
5931
5932 * server.h (struct emit_ops, current_insn_ptr, emit_error):
5933 Move ...
5934 * ax.h: ... here.
5935
5936 2013-09-05 Pedro Alves <palves@redhat.com>
5937
5938 * ax.c, linux-low.c, linux-x86-low.c, server.c: Include
5939 tracepoint.h.
5940 * server.h (IPA_BUFSIZ, initialize_tracepoint, tracing)
5941 (disconnected_tracing, tracepoint_look_up_symbols, stop_tracing
5942 (handle_tracepoint_general_set, handle_tracepoint_query)
5943 (tracepoint_finished_step, tracepoint_was_hit)
5944 (release_while_stepping_state_list, current_traceframe)
5945 (in_readonly_region, traceframe_read_mem)
5946 (fetch_traceframe_registers, traceframe_read_sdata)
5947 (traceframe_read_info, struct fast_tpoint_collect_status)
5948 (fast_tracepoint_collecting, force_unlock_trace_buffer)
5949 (handle_tracepoit_bkpts, initialize_low_tracepoint)
5950 (supply_fast_tracepoint_registers)
5951 (supply_static_tracepoint_registers, set_trampoline_buffer_space)
5952 (ipa_tdesc, claim_trampoline_space)
5953 (have_fast_tracepoint_trampoline_buffer, gdb_agent_about_to_close)
5954 (agent_mem_read, agent_get_trace_state_variable_value)
5955 (agent_set_trace_state_variable_value, agent_tsv_read)
5956 (agent_mem_read_string, get_raw_reg_func_addr)
5957 (get_get_tsv_func_addr, get_set_tsv_func_addr): Move to ...
5958 * tracepoint.h: ... this new file.
5959
5960 2013-09-05 Pedro Alves <palves@redhat.com>
5961
5962 * server.h (perror_with_name, error, fatal, warning, paddress)
5963 (pulongest, plongest, phex_nz, pfildes): Move to utils.h, and
5964 include it.
5965 * utils.h: New file.
5966
5967 2013-09-05 Pedro Alves <palves@redhat.com>
5968
5969 * server.h (remote_debug, noack_mode, transport_is_reliable)
5970 (gdb_connected, STDIO_CONNECTION_NAME, remote_connection_is_stdio)
5971 (read_ptid, write_ptid, putpkt, putpkt_binary, putpkt_notif)
5972 (getpkt, remote_prepare, remote_open, remote_close, write_ok)
5973 (write_enn, initialize_async_io, enable_async_io)
5974 (disable_async_io, check_remote_input_interrupt_request)
5975 (convert_ascii_to_int, convert_int_to_ascii, new_thread_notify)
5976 (dead_thread_notify, prepare_resume_reply)
5977 (decode_address_to_semicolon, decode_address, decode_m_packet)
5978 (decode_M_packet, decode_X_packet, decode_xfer_write)
5979 (decode_search_memory_packet, unhexify, hexify)
5980 (remote_escape_output, unpack_varlen_hex, clear_symbol_cache)
5981 (look_up_one_symbol, relocate_instruction)
5982 (monitor_output): Move to remote-utils.h, and include it.
5983 * remote-utils.h: New file.
5984
5985 2013-09-05 Pedro Alves <palves@redhat.com>
5986
5987 * server.h (_): Delete.
5988
5989 2013-09-02 Pedro Alves <palves@redhat.com>
5990
5991 * tracepoint.c (TRACEFRAME_EOB_MARKER_SIZE): New macro.
5992 (init_trace_buffer): Ensure at least TRACEFRAME_EOB_MARKER_SIZE is
5993 allocated.
5994 (trace_buffer_alloc): Use TRACEFRAME_EOB_MARKER_SIZE.
5995
5996 2013-09-02 Pierre Muller <muller@sourceware.org>
5997
5998 * win32-low.c (child_xfer_memory): Check if ReadProcessMemory
5999 or WriteProcessMemory complete successfully and handle
6000 ERROR_PARTIAL_COPY error.
6001
6002 2013-09-02 Pedro Alves <palves@redhat.com>
6003
6004 * server.c (gdb_read_memory): Return -1 on traceframe memory read
6005 error instead of EIO.
6006
6007 2013-08-28 Jan Kratochvil <jan.kratochvil@redhat.com>
6008
6009 PR server/15604
6010 * linux-low.c: Include filestuff.h.
6011 (linux_create_inferior) <pid == 0>: Call close_most_fds.
6012 * lynx-low.c: Include filestuff.h.
6013 (lynx_create_inferior) <pid == 0>: Call close_most_fds.
6014 * server.c: Include filestuff.h.
6015 (main): Call notice_open_fds.
6016 * spu-low.c: Include filestuff.h.
6017 (spu_create_inferior) <pid == 0>: Call close_most_fds.
6018
6019 2013-08-22 Luis Machado <lgustavo@codesourcery.com>
6020
6021 * Makefile.in: Explain why ../target and ../nat are not
6022 listed as include file search paths.
6023 (linux-waitpid.o): New object file rule.
6024 * configure.srv (srv_native_linux_obj): New variable.
6025 Replace all occurrences of linux native object files with
6026 $srv_native_linux_obj.
6027 * linux-low.c: Include nat/linux-nat.h and nat/linux-waitpid.h.
6028 (HAS_NOMMU): Move defining logic to common/linux-ptrace.c.
6029 (linux_enable_event_reporting): Remove declaration.
6030 (my_waitpid): Moved to common/linux-waitpid.c.
6031 (linux_wait_for_event): Pass ptid when calling
6032 linux_enable_event_reporting.
6033 (linux_supports_tracefork_flag): Remove.
6034 (linux_enable_event_reporting): Likewise.
6035 (linux_tracefork_grandchild): Remove.
6036 (STACK_SIZE): Moved to common/linux-ptrace.c.
6037 (linux_tracefork_child): Remove.
6038 (linux_test_for_tracefork): Remove.
6039 (linux_look_up_symbols): Call linux_supports_traceclone.
6040 (initialize_low): Remove call to linux_test_for_tracefork.
6041 * linux-low.h (PTRACE_TYPE_ARG3): Move to
6042 common/linux-ptrace.h.
6043 (PTRACE_TYPE_ARG4): Likewise.
6044 Include linux-ptrace.h.
6045
6046 2013-08-21 Pedro Alves <palves@redhat.com>
6047
6048 * config.in: Renegerate.
6049
6050 2013-08-19 Luis Machado <lgustavo@codesourcery.com>
6051
6052 * Makefile.in (INCLUDE_CFLAGS): Include -I$(srcdir)/../.
6053 (SFILES): Remove $(srcdir)/common/target-common.c and
6054 add $(srcdir)/target/waitstatus.c.
6055 (OBS): Remove target-common.o and add waitstatus.o.
6056 (server_h): Remove $(srcdir)/../common/target-common.h and
6057 add $(srcdir)/../target/resume.h, $(srcdir)/../target/wait.h
6058 and $(srcdir)/../target/waitstatus.h.
6059 (target-common.o): Remove.
6060 (waitstatus.o): New target object file.
6061 * target.h: Do not include target-common.h and
6062 include target/resume.h, target/wait.h and
6063 target/waitstatus.h.
6064
6065 2013-08-13 Luis Machado <lgustavo@codesourcery.com>
6066
6067 * linux-arm-low.c: Rename all occurrences of PTRACE_ARG3_TYPE
6068 to PTRACE_TYPE_ARG3.
6069 * linux-low.c: Rename all occurrences of PTRACE_ARG3_TYPE
6070 to PTRACE_TYPE_ARG3 and PTRACE_ARG4_TYPE to
6071 PTRACE_TYPE_ARG4.
6072 * linux-low.h (PTRACE_ARG3_TYPE): Rename to PTRACE_TYPE_ARG3.
6073 (PTRACE_ARG4_TYPE): Rename to PTRACE_TYPE_ARG4.
6074
6075 2013-07-27 Jie Zhang <jie@codesourcery.com>
6076 Daniel Jacobowitz <dan@codesourcery.com>
6077 Yao Qi <yao@codesourcery.com>
6078
6079 * Makefile.in (SFILES): Add common/mips-linux-watch.c.
6080 (mips-linux-watch.o): New rule.
6081 (mips_linux_watch_h): New variable.
6082 * configure.srv <mips*-*-linux*>: Add mips-linux-watch.o to
6083 srv_tgtobj.
6084 * linux-mips-low.c: Include mips-linux-watch.h.
6085 (struct arch_process_info, struct arch_lwp_info): New.
6086 (update_watch_registers_callback): New function.
6087 (mips_linux_new_process, mips_linux_new_thread) New functions.
6088 (mips_linux_prepare_to_resume, mips_insert_point): New
6089 functions.
6090 (mips_remove_point, mips_stopped_by_watchpoint): New
6091 functions.
6092 (rsp_bp_type_to_target_hw_bp_type): New function.
6093 (mips_stopped_data_address): New function.
6094 (the_low_target): Add watchpoint support functions.
6095
6096 2013-07-27 Yao Qi <yao@codesourcery.com>
6097
6098 * i386-low.c: Include break-common.h.
6099 (enum target_hw_bp_type): Remove.
6100
6101 2013-07-24 Luis Machado <lgustavo@codesourcery.com>
6102
6103 * Makefile.in (SFILES): /common/target-common.c.
6104 (OBS): Add target-common.o.
6105 (server_h): Add $(srcdir)/../common/target-common.h.
6106 (target-common.o): New target.
6107 * server.c (queue_stop_reply_callback): Free
6108 status string after use.
6109 * target.c (target_waitstatus_to_string): Remove.
6110 * target.h: Include target-common.h.
6111 (resume_kind): Likewise.
6112 (target_waitkind): Likewise.
6113 (target_waitstatus): Likewise.
6114 (TARGET_WNOHANG): Likewise.
6115
6116 2013-07-04 Yao Qi <yao@codesourcery.com>
6117
6118 * Makefile.in (host_alias): Use @host_noncanonical@.
6119 (target_alias): Use @target_noncanonical@.
6120 * configure.ac: Use ACX_NONCANONICAL_TARGET and
6121 ACX_NONCANONICAL_HOST.
6122 * configure: Regenerated.
6123
6124 Revert:
6125 2013-06-28 Mircea Gherzan <mircea.gherzan@intel.com>
6126
6127 * configure.ac (version_host, version_target): Set and AC_SUBST them.
6128 * configure: Rebuild.
6129 * Makefile.in (version_host, version_target): Get from configure.
6130 (version.c): Use $(version_host) and $(version_target).
6131
6132 2013-07-03 Pedro Alves <palves@redhat.com>
6133
6134 * Makefile.in (config.status): Depend on development.sh.
6135 * acinclude.m4: Include libmcheck.m4.
6136 * configure: Regenerate.
6137
6138 2013-07-02 Mircea Gherzan <mircea.gherzan@intel.com>
6139
6140 * win32-low.c (winapi_DebugActiveProcessStop): Move the WINAPI
6141 attribute inside the parentheses.
6142 (winapi_DebugSetProcessKillOnExit): Ditto.
6143 (winapi_DebugBreakProcess): Ditto.
6144 (winapi_GenerateConsoleCtrlEvent): Ditto.
6145
6146 2013-07-02 Mircea Gherzan <mircea.gherzan@intel.com>
6147
6148 * notif.h (notif_event): Add a dummy member to avoid compiler
6149 errors.
6150
6151 2013-07-01 Pedro Alves <palves@redhat.com>
6152
6153 * hostio.c (HOSTIO_PATH_MAX): Define.
6154 (require_filename, handle_open, handle_unlink, handle_readlink):
6155 Use it.
6156
6157 2013-07-01 Pedro Alves <palves@redhat.com>
6158
6159 * server.h: Include "pathmax.h".
6160 * linux-low.c: Don't include sys/param.h.
6161 (linux_pid_exe_is_elf_64_file): Use PATH_MAX instead of
6162 MAXPATHLEN.
6163 * win32-low.c: Don't include sys/param.h.
6164 (win32_create_inferior): Use PATH_MAX instead of MAXPATHLEN.
6165
6166 2013-07-01 Pedro Alves <palves@redhat.com>
6167
6168 * event-loop.c: Don't check HAVE_UNISTD_H before including
6169 <unistd.h>.
6170 * gdbreplay.c: Likewise.
6171 * remote-utils.c: Likewise.
6172 * server.c: Likewise.
6173 * configure.ac: Don't check for unistd.h.
6174 * configure: Regenerate.
6175
6176 2013-06-28 Tom Tromey <tromey@redhat.com>
6177
6178 * Makefile.in (version.c): Use version.in, not
6179 common/version.in.
6180
6181 2013-06-28 Mircea Gherzan <mircea.gherzan@intel.com>
6182
6183 * configure.ac (version_host, version_target): Set and AC_SUBST them.
6184 * configure: Rebuild.
6185 * Makefile.in (version_host, version_target): Get from configure.
6186 (version.c): Use $(version_host) and $(version_target).
6187
6188 2013-06-10 Dmitry Kozlov <ddk@codesourcery.com>
6189
6190 Fix trace-status to output user name without trailing colon.
6191 * tracepoint.c (cmd_qtstatus): Remove unnecessary colon from user name.
6192
6193 2013-06-10 Dmitry Kozlov <ddk@codesourcery.com>
6194
6195 Fix trace-status to output proper start-time and stop-time.
6196 * tracepoint.c (cmd_qtstatus): Modify trace-status output to
6197 output start time and stop time in hex as gdb expects.
6198
6199 2013-06-26 Pedro Alves <pedro@codesourcery.com>
6200
6201 * tracepoint.c (build_traceframe_info_xml): Output trace state
6202 variables present in the trace buffer.
6203
6204 2013-06-24 Tom Tromey <tromey@redhat.com>
6205
6206 * Makefile.in (version.c): Use bfd/version.h, common/version.in,
6207 create-version.sh.
6208 (version.o): Remove.
6209 * gdbreplay.c: Include version.h.
6210 (version, host_name): Don't declare.
6211 * server.h: Include version.h.
6212 (version, host_name): Don't declare.
6213
6214 2013-06-12 Pedro Alves <palves@redhat.com>
6215
6216 * linux-x86-low.c (linux_is_elf64): Delete global.
6217 (x86_siginfo_fixup): Replace reference to `linux_is_elf64' global
6218 with local linux_pid_exe_is_elf_64_file use.
6219
6220 2013-06-11 Pedro Alves <palves@redhat.com>
6221
6222 * linux-low.c (regset_disabled, disable_regset): New functions.
6223 (regsets_fetch_inferior_registers)
6224 (regsets_store_inferior_registers): Use them.
6225 (initialize_regsets_info); Don't allocate the disabled_regsets
6226 array here.
6227 * linux-low.h (struct regsets_info) <disabled_regsets>: Extend
6228 comment.
6229
6230 2013-06-11 Pedro Alves <palves@redhat.com>
6231
6232 * linux-low.c (initialize_regsets_info): Use xcalloc instead of
6233 xmalloc.
6234
6235 2013-06-11 Pedro Alves <palves@redhat.com>
6236
6237 * linux-x86-low.c (initialize_low_arch): Call
6238 init_registers_x32_avx_linux.
6239
6240 2013-06-09 Jan Kratochvil <jan.kratochvil@redhat.com>
6241
6242 Fix compatibility with Android Bionic.
6243 * linux-low.c (linux_qxfer_libraries_svr4): Ignore first entry even if
6244 it is not empty.
6245
6246 2013-06-07 Pedro Alves <palves@redhat.com>
6247
6248 PR server/14823
6249 * Makefile.in (OBS): Add tdesc.o.
6250 (IPA_OBJS): Add tdesc-ipa.o.
6251 (tdesc-ipa.o): New rule.
6252 * ax.c (gdb_eval_agent_expr): Adjust register_size call to new
6253 interface.
6254 * linux-low.c (new_inferior): Delete.
6255 (disabled_regsets, num_regsets): Delete.
6256 (linux_add_process): Adjust to set the new per-process
6257 new_inferior flag.
6258 (linux_detach_one_lwp): Adjust to call regcache_invalidate_thread.
6259 (linux_wait_for_lwp): Adjust. Only call arch_setup if the event
6260 was a stop. When calling arch_setup, switch the current inferior
6261 to the thread that got an event.
6262 (linux_resume_one_lwp): Adjust to call regcache_invalidate_thread.
6263 (regsets_fetch_inferior_registers)
6264 (regsets_store_inferior_registers): New regsets_info parameter.
6265 Adjust to use it.
6266 (linux_register_in_regsets): New regs_info parameter. Adjust to
6267 use it.
6268 (register_addr, fetch_register, store_register): New usrregs_info
6269 parameter. Adjust to use it.
6270 (usr_fetch_inferior_registers, usr_store_inferior_registers): New
6271 parameter regs_info. Adjust to use it.
6272 (linux_fetch_registers): Get the current inferior's regs_info, and
6273 adjust to use it.
6274 (linux_store_registers): Ditto.
6275 [HAVE_LINUX_REGSETS] (initialize_regsets_info): New.
6276 (initialize_low): Don't initialize the target_regsets here. Call
6277 initialize_low_arch.
6278 * linux-low.h (target_regsets): Delete declaration.
6279 (struct regsets_info): New.
6280 (struct usrregs_info): New.
6281 (struct regs_info): New.
6282 (struct process_info_private) <new_inferior>: New field.
6283 (struct linux_target_ops): Delete the num_regs, regmap, and
6284 regset_bitmap fields. New field regs_info.
6285 [HAVE_LINUX_REGSETS] (initialize_regsets_info): Declare.
6286 * i387-fp.c (num_xmm_registers): Delete.
6287 (i387_cache_to_fsave, i387_fsave_to_cache): Adjust find_regno
6288 calls to new interface.
6289 (i387_cache_to_fxsave, i387_cache_to_xsave, i387_fxsave_to_cache)
6290 (i387_xsave_to_cache): Adjust find_regno calls to new interface.
6291 Infer the number of xmm registers from the regcache's target
6292 description.
6293 * i387-fp.h (num_xmm_registers): Delete.
6294 * inferiors.c (add_thread): Don't install the thread's regcache
6295 here.
6296 * proc-service.c (gregset_info): Fetch the current inferior's
6297 regs_info. Adjust to use it.
6298 * regcache.c: Include tdesc.h.
6299 (register_bytes, reg_defs, num_registers)
6300 (gdbserver_expedite_regs): Delete.
6301 (get_thread_regcache): If the thread doesn't have a regcache yet,
6302 create one, instead of aborting gdbserver.
6303 (regcache_invalidate_one): Rename to ...
6304 (regcache_invalidate_thread): ... this.
6305 (regcache_invalidate_one): New.
6306 (regcache_invalidate): Only invalidate registers of the current
6307 process.
6308 (init_register_cache): Add target_desc parameter, and use it.
6309 (new_register_cache): Ditto. Assert the target description has a
6310 non zero registers_size.
6311 (regcache_cpy): Add assertions. Adjust.
6312 (realloc_register_cache, set_register_cache): Delete.
6313 (registers_to_string, registers_from_string): Adjust.
6314 (find_register_by_name, find_regno, find_register_by_number)
6315 (register_cache_size): Add target_desc parameter, and use it.
6316 (free_register_cache_thread, free_register_cache_thread_one)
6317 (regcache_release, register_cache_size): New.
6318 (register_size): Add target_desc parameter, and use it.
6319 (register_data, supply_register, supply_register_zeroed)
6320 (supply_regblock, supply_register_by_name, collect_register)
6321 (collect_register_as_string, collect_register_by_name): Adjust.
6322 * regcache.h (struct target_desc): Forward declare.
6323 (struct regcache) <tdesc>: New field.
6324 (init_register_cache, new_register_cache): Add target_desc
6325 parameter.
6326 (regcache_invalidate_thread): Declare.
6327 (regcache_invalidate_one): Delete declaration.
6328 (regcache_release): Declare.
6329 (find_register_by_number, register_cache_size, register_size)
6330 (find_regno): Add target_desc parameter.
6331 (gdbserver_expedite_regs, gdbserver_xmltarget): Delete
6332 declarations.
6333 * remote-utils.c: Include tdesc.h.
6334 (outreg, prepare_resume_reply): Adjust.
6335 * server.c: Include tdesc.h.
6336 (gdbserver_xmltarget): Delete declaration.
6337 (get_features_xml, process_serial_event): Adjust.
6338 * server.h [IN_PROCESS_AGENT] (struct target_desc): Forward
6339 declare.
6340 (struct process_info) <tdesc>: New field.
6341 (ipa_tdesc): Declare.
6342 * tdesc.c: New file.
6343 * tdesc.h: New file.
6344 * tracepoint.c: Include tdesc.h.
6345 [IN_PROCESS_AGENT] (ipa_tdesc): Define.
6346 (get_context_regcache): Adjust to pass ipa_tdesc down.
6347 (do_action_at_tracepoint): Adjust to get the register cache size
6348 from the context regcache's description.
6349 (traceframe_walk_blocks): Adjust to get the register cache size
6350 from the current trace frame's description.
6351 (traceframe_get_pc): Adjust to get current trace frame's
6352 description and pass it down.
6353 (gdb_collect): Adjust to get the register cache size from the
6354 IPA's description.
6355 * linux-amd64-ipa.c (tdesc_amd64_linux): Declare.
6356 (gdbserver_xmltarget): Delete.
6357 (initialize_low_tracepoint): Set the ipa's target description.
6358 * linux-i386-ipa.c (tdesc_i386_linux): Declare.
6359 (initialize_low_tracepoint): Set the ipa's target description.
6360 * linux-x86-low.c: Include tdesc.h.
6361 [__x86_64__] (is_64bit_tdesc): New.
6362 (ps_get_thread_area, x86_get_thread_area): Use it.
6363 (i386_cannot_store_register): Rename to ...
6364 (x86_cannot_store_register): ... this. Use is_64bit_tdesc.
6365 (i386_cannot_fetch_register): Rename to ...
6366 (x86_cannot_fetch_register): ... this. Use is_64bit_tdesc.
6367 (x86_fill_gregset, x86_store_gregset): Adjust register_size calls
6368 to new interface.
6369 (target_regsets): Rename to ...
6370 (x86_regsets): ... this.
6371 (x86_get_pc, x86_set_pc): Adjust register_size calls to new
6372 interface.
6373 (x86_siginfo_fixup): Use is_64bit_tdesc.
6374 [__x86_64__] (tdesc_amd64_linux, tdesc_amd64_avx_linux)
6375 (tdesc_x32_avx_linux, tdesc_x32_linux)
6376 (tdesc_i386_linux, tdesc_i386_mmx_linux, tdesc_i386_avx_linux):
6377 Declare.
6378 (x86_linux_update_xmltarget): Delete.
6379 (I386_LINUX_XSAVE_XCR0_OFFSET): Define.
6380 (have_ptrace_getfpxregs, have_ptrace_getregset): New.
6381 (AMD64_LINUX_USER64_CS): New.
6382 (x86_linux_read_description): New, based on
6383 x86_linux_update_xmltarget.
6384 (same_process_callback): New.
6385 (x86_arch_setup_process_callback): New.
6386 (x86_linux_update_xmltarget): New.
6387 (x86_regsets_info): New.
6388 (amd64_linux_regs_info): New.
6389 (i386_linux_usrregs_info): New.
6390 (i386_linux_regs_info): New.
6391 (x86_linux_regs_info): New.
6392 (x86_arch_setup): Reimplement.
6393 (x86_install_fast_tracepoint_jump_pad): Use is_64bit_tdesc.
6394 (x86_emit_ops): Ditto.
6395 (the_low_target): Adjust. Install x86_linux_regs_info,
6396 x86_cannot_fetch_register, and x86_cannot_store_register.
6397 (initialize_low_arch): New.
6398 * linux-ia64-low.c (tdesc_ia64): Declare.
6399 (ia64_fetch_register): Adjust.
6400 (ia64_usrregs_info, regs_info): New globals.
6401 (ia64_regs_info): New function.
6402 (the_low_target): Adjust.
6403 (initialize_low_arch): New function.
6404 * linux-sparc-low.c (tdesc_sparc64): Declare.
6405 (sparc_fill_gregset_to_stack, sparc_store_gregset_from_stack):
6406 Adjust.
6407 (sparc_arch_setup): New function.
6408 (sparc_regsets_info, sparc_usrregs_info, regs_info): New globals.
6409 (the_low_target): Adjust.
6410 (initialize_low_arch): New function.
6411 * linux-ppc-low.c (tdesc_powerpc_32l, tdesc_powerpc_altivec32l)
6412 (tdesc_powerpc_cell32l, tdesc_powerpc_vsx32l)
6413 (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_altivec32l)
6414 (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_e500l)
6415 (tdesc_powerpc_64l, tdesc_powerpc_altivec64l)
6416 (tdesc_powerpc_cell64l, tdesc_powerpc_vsx64l)
6417 (tdesc_powerpc_isa205_64l, tdesc_powerpc_isa205_altivec64l)
6418 (tdesc_powerpc_isa205_vsx64l): Declare.
6419 (ppc_cannot_store_register, ppc_collect_ptrace_register)
6420 (ppc_supply_ptrace_register, parse_spufs_run, ppc_get_pc)
6421 (ppc_set_pc, ppc_get_hwcap): Adjust.
6422 (ppc_usrregs_info): Forward declare.
6423 (!__powerpc64__) ppc_regmap_adjusted: New global.
6424 (ppc_arch_setup): Adjust to the current process'es target
6425 description.
6426 (ppc_fill_vsxregset, ppc_store_vsxregset, ppc_fill_vrregset)
6427 (ppc_store_vrregset, ppc_fill_evrregset, ppc_store_evrregse)
6428 (ppc_store_evrregset): Adjust.
6429 (target_regsets): Rename to ...
6430 (ppc_regsets): ... this, and make static.
6431 (ppc_usrregs_info, ppc_regsets_info, regs_info): New globals.
6432 (ppc_regs_info): New function.
6433 (the_low_target): Adjust.
6434 (initialize_low_arch): New function.
6435 * linux-s390-low.c (tdesc_s390_linux32, tdesc_s390_linux32v1)
6436 (tdesc_s390_linux32v2, tdesc_s390_linux64, tdesc_s390_linux64v1)
6437 (tdesc_s390_linux64v2, tdesc_s390x_linux64, tdesc_s390x_linux64v1)
6438 (tdesc_s390x_linux64v2): Declare.
6439 (s390_collect_ptrace_register, s390_supply_ptrace_register)
6440 (s390_fill_gregset, s390_store_last_break): Adjust.
6441 (target_regsets): Rename to ...
6442 (s390_regsets): ... this, and make static.
6443 (s390_get_pc, s390_set_pc): Adjust.
6444 (s390_get_hwcap): New target_desc parameter, and use it.
6445 [__s390x__] (have_hwcap_s390_high_gprs): New global.
6446 (s390_arch_setup): Adjust to set the current process'es target
6447 description. Don't adjust the regmap.
6448 (s390_usrregs_info, s390_regsets_info, regs_info): New globals.
6449 [__s390x__] (s390_usrregs_info_3264, s390_regsets_info_3264)
6450 (regs_info_3264): New globals.
6451 (s390_regs_info): New function.
6452 (the_low_target): Adjust.
6453 (initialize_low_arch): New function.
6454 * linux-mips-low.c (tdesc_mips_linux, tdesc_mips_dsp_linux)
6455 (tdesc_mips64_linux, tdesc_mips64_dsp_linux): Declare.
6456 [__mips64] (init_registers_mips_linux)
6457 (init_registers_mips_dsp_linux): Delete defines.
6458 [__mips64] (tdesc_mips_linux, tdesc_mips_dsp_linux): New defines.
6459 (have_dsp): New global.
6460 (mips_read_description): New, based on mips_arch_setup.
6461 (mips_arch_setup): Reimplement.
6462 (get_usrregs_info): New function.
6463 (mips_cannot_fetch_register, mips_cannot_store_register)
6464 (mips_get_pc, mips_set_pc, mips_fill_gregset, mips_store_gregset)
6465 (mips_fill_fpregset, mips_store_fpregset): Adjust.
6466 (target_regsets): Rename to ...
6467 (mips_regsets): ... this, and make static.
6468 (mips_regsets_info, mips_dsp_usrregs_info, mips_usrregs_info)
6469 (dsp_regs_info, regs_info): New globals.
6470 (mips_regs_info): New function.
6471 (the_low_target): Adjust.
6472 (initialize_low_arch): New function.
6473 * linux-arm-low.c (tdesc_arm, tdesc_arm_with_iwmmxt)
6474 (tdesc_arm_with_vfpv2, tdesc_arm_with_vfpv3, tdesc_arm_with_neon):
6475 Declare.
6476 (arm_fill_vfpregset, arm_store_vfpregset): Adjust.
6477 (arm_read_description): New, with bits factored from
6478 arm_arch_setup.
6479 (arm_arch_setup): Reimplement.
6480 (target_regsets): Rename to ...
6481 (arm_regsets): ... this, and make static.
6482 (arm_regsets_info, arm_usrregs_info, regs_info): New globals.
6483 (arm_regs_info): New function.
6484 (the_low_target): Adjust.
6485 (initialize_low_arch): New function.
6486 * linux-m68k-low.c (tdesc_m68k): Declare.
6487 (target_regsets): Rename to ...
6488 (m68k_regsets): ... this, and make static.
6489 (m68k_regsets_info, m68k_usrregs_info, regs_info): New globals.
6490 (m68k_regs_info): New function.
6491 (m68k_arch_setup): New function.
6492 (the_low_target): Adjust.
6493 (initialize_low_arch): New function.
6494 * linux-sh-low.c (tdesc_sharch): Declare.
6495 (target_regsets): Rename to ...
6496 (sh_regsets): ... this, and make static.
6497 (sh_regsets_info, sh_usrregs_info, regs_info): New globals.
6498 (sh_regs_info, sh_arch_setup): New functions.
6499 (the_low_target): Adjust.
6500 (initialize_low_arch): New function.
6501 * linux-bfin-low.c (tdesc_bfin): Declare.
6502 (bfin_arch_setup): New function.
6503 (bfin_usrregs_info, regs_info): New globals.
6504 (bfin_regs_info): New function.
6505 (the_low_target): Adjust.
6506 (initialize_low_arch): New function.
6507 * linux-cris-low.c (tdesc_cris): Declare.
6508 (cris_arch_setup): New function.
6509 (cris_usrregs_info, regs_info): New globals.
6510 (cris_regs_info): New function.
6511 (the_low_target): Adjust.
6512 (initialize_low_arch): New function.
6513 * linux-cris-low.c (tdesc_crisv32): Declare.
6514 (cris_arch_setup): New function.
6515 (cris_regsets_info, cris_usrregs_info, regs_info): New globals.
6516 (cris_regs_info): New function.
6517 (the_low_target): Adjust.
6518 (initialize_low_arch): New function.
6519 * linux-m32r-low.c (tdesc_m32r): Declare.
6520 (m32r_arch_setup): New function.
6521 (m32r_usrregs_info, regs_info): New globals.
6522 (m32r_regs_info): Adjust.
6523 (initialize_low_arch): New function.
6524 * linux-tic6x-low.c (tdesc_tic6x_c64xp_linux)
6525 (tdesc_tic6x_c64x_linux, tdesc_tic6x_c62x_linux): Declare.
6526 (tic6x_usrregs_info): Forward declare.
6527 (tic6x_read_description): New function, based on ...
6528 (tic6x_arch_setup): ... this. Reimplement.
6529 (target_regsets): Rename to ...
6530 (tic6x_regsets): ... this, and make static.
6531 (tic6x_regsets_info, tic6x_usrregs_info, regs_info): New globals.
6532 (tic6x_regs_info): New function.
6533 (the_low_target): Adjust.
6534 (initialize_low_arch): New function.
6535 * linux-xtensa-low.c (tdesc_xtensa): Declare.
6536 (xtensa_fill_gregset, xtensa_store_gregset): Adjust.
6537 (target_regsets): Rename to ...
6538 (xtensa_regsets): ... this, and make static.
6539 (xtensa_regsets_info, xtensa_usrregs_info, regs_info): New
6540 globals.
6541 (xtensa_arch_setup, xtensa_regs_info): New functions.
6542 (the_low_target): Adjust.
6543 (initialize_low_arch): New function.
6544 * linux-nios2-low.c (tdesc_nios2_linux): Declare.
6545 (nios2_arch_setup): Set the current process'es tdesc.
6546 (target_regsets): Rename to ...
6547 (nios2_regsets): ... this.
6548 (nios2_regsets_info, nios2_usrregs_info, regs_info): New globals.
6549 (nios2_regs_info): New function.
6550 (the_low_target): Adjust.
6551 (initialize_low_arch): New function.
6552 * linux-aarch64-low.c (tdesc_aarch64): Declare.
6553 (aarch64_arch_setup): Set the current process'es tdesc.
6554 (target_regsets): Rename to ...
6555 (aarch64_regsets): ... this.
6556 (aarch64_regsets_info, aarch64_usrregs_info, regs_info): New globals.
6557 (aarch64_regs_info): New function.
6558 (the_low_target): Adjust.
6559 (initialize_low_arch): New function.
6560 * linux-tile-low.c (tdesc_tilegx, tdesc_tilegx32): Declare
6561 globals.
6562 (target_regsets): Rename to ...
6563 (tile_regsets): ... this.
6564 (tile_regsets_info, tile_usrregs_info, regs_info): New globals.
6565 (tile_regs_info): New function.
6566 (tile_arch_setup): Set the current process'es tdesc.
6567 (the_low_target): Adjust.
6568 (initialize_low_arch): New function.
6569 * spu-low.c (tdesc_spu): Declare.
6570 (spu_create_inferior, spu_attach): Set the new process'es tdesc.
6571 * win32-arm-low.c (tdesc_arm): Declare.
6572 (arm_arch_setup): New function.
6573 (the_low_target): Install arm_arch_setup instead of
6574 init_registers_arm.
6575 * win32-i386-low.c (tdesc_i386, tdesc_amd64): Declare.
6576 (init_windows_x86): Rename to ...
6577 (i386_arch_setup): ... this. Set `win32_tdesc'.
6578 (the_low_target): Adjust.
6579 * win32-low.c (win32_tdesc): New global.
6580 (child_add_thread): Don't create the thread cache here.
6581 (do_initial_child_stuff): Set the new process'es tdesc.
6582 * win32-low.h (struct target_desc): Forward declare.
6583 (win32_tdesc): Declare.
6584 * lynx-i386-low.c (tdesc_i386): Declare global.
6585 (lynx_i386_arch_setup): Set `lynx_tdesc'.
6586 * lynx-low.c (lynx_tdesc): New global.
6587 (lynx_add_process): Set the new process'es tdesc.
6588 * lynx-low.h (struct target_desc): Forward declare.
6589 (lynx_tdesc): Declare global.
6590 * lynx-ppc-low.c (tdesc_powerpc_32): Declare global.
6591 (lynx_ppc_arch_setup): Set `lynx_tdesc'.
6592 * nto-low.c (nto_tdesc): New global.
6593 (do_attach): Set the new process'es tdesc.
6594 * nto-low.h (struct target_desc): Forward declare.
6595 (nto_tdesc): Declare.
6596 * nto-x86-low.c (tdesc_i386): Declare.
6597 (nto_x86_arch_setup): Set `nto_tdesc'.
6598
6599 2013-06-04 Gary Benson <gbenson@redhat.com>
6600
6601 * server.c (handle_query): Add "augmented-libraries-svr4-read+"
6602 to qSupported response when appropriate.
6603 (handle_qxfer_libraries_svr4): Allow qXfer:libraries-svr4:read
6604 with nonzero-length annex.
6605 * linux-low.c (linux_qxfer_libraries_svr4): Parse and handle
6606 arguments supplied in annex.
6607
6608 2013-05-31 Doug Evans <dje@google.com>
6609
6610 PR server/15594
6611 * linux-x86-low.c (ps_get_thread_area): Properly extend address to
6612 64 bits in 64-cross-32 environment.
6613
6614 2013-05-28 Pedro Alves <palves@redhat.com>
6615
6616 * Makefile.in (clean): Remove reference to aarch64-without-fpu.c.
6617 (aarch64-without-fpu.c): Delete rule.
6618 * configure.srv (aarch64*-*-linux*): Remove references to
6619 aarch64-without-fpu.o and aarch64-without-fpu.xml.
6620 * linux-aarch64-low.c (init_registers_aarch64_without_fpu): Remove
6621 declaration.
6622
6623 2013-05-24 Pedro Alves <palves@redhat.com>
6624
6625 * server.c (handle_v_cont) <vCont;r>: Use unpack_varlen_hex
6626 instead of strchr/decode_address. Error if the range isn't split
6627 with a ','. Don't assume there's be a ':' in the action.
6628
6629 2013-05-23 Yao Qi <yao@codesourcery.com>
6630 Pedro Alves <palves@redhat.com>
6631
6632 * linux-low.c (lwp_in_step_range): New function.
6633 (linux_wait_1): If the thread was range stepping and stopped
6634 outside the stepping range, report the stop to GDB. Otherwise,
6635 continue stepping. Add range stepping debug output.
6636 (linux_set_resume_request): Copy the step range from the resume
6637 request to the lwp.
6638 (linux_supports_range_stepping): New.
6639 (linux_target_ops) <supports_range_stepping>: Set to
6640 linux_supports_range_stepping.
6641 * linux-low.h (struct linux_target_ops)
6642 <supports_range_stepping>: New field.
6643 (struct lwp_info) <step_range_start, step_range_end>: New fields.
6644 * linux-x86-low.c (x86_supports_range_stepping): New.
6645 (the_low_target) <supports_range_stepping>: Set to
6646 x86_supports_range_stepping.
6647 * server.c (handle_v_cont): Handle 'r' action.
6648 (handle_v_requests): Append ";r" if the target supports range
6649 stepping.
6650 * target.h (struct thread_resume) <step_range_start,
6651 step_range_end>: New fields.
6652 (struct target_ops) <supports_range_stepping>:
6653 New field.
6654 (target_supports_range_stepping): New macro.
6655
6656 2013-05-17 Joel Brobecker <brobecker@adacore.com>
6657
6658 * lynx-low.c (lynx_resume): Fix null_ptid/minus_one_ptid
6659 confusion in comment.
6660
6661 2013-05-17 Joel Brobecker <brobecker@adacore.com>
6662
6663 * lynx-low.c (struct process_info_private): New type.
6664 (lynx_add_process): New function.
6665 (lynx_create_inferior, lynx_attach): Replace calls to
6666 add_process by calls to lynx_add_process.
6667 (lynx_resume): If PTID is null, then try using
6668 current_process()->private->last_wait_event_ptid.
6669 Add comments.
6670 (lynx_clear_inferiors): Delete. The contents of that function
6671 has been inlined in lynx_mourn;
6672 (lynx_wait_1): Save the ptid in the process's private data.
6673 (lynx_mourn): Free the process' private data. Replace call
6674 to lynx_clear_inferiors by call to clear_inferiors.
6675
6676 2013-05-17 Yao Qi <yao@codesourcery.com>
6677
6678 * i386-low.c (i386_length_and_rw_bits): Move the comment to
6679 the right place.
6680
6681 2013-05-16 Luis Machado <lgustavo@codesourcery.com>
6682
6683 * linux-low.c: Move definition checks upwards for PT_TEXT_ADDR,
6684 PT_DATA_ADDR and PT_TEXT_END_ADDR. Update comments.
6685 (linux_read_offsets): Remove PT_TEXT_ADDR, PT_DATA_ADDR and
6686 PT_TEXT_END_ADDR guards. Update comments.
6687 (linux_target_op) <read_offsets>: Conditionally define to
6688 linux_read_offsets if the target is UCLIBC and if it defines
6689 PT_TEXT_ADDR, PT_DATA_ADDR and PT_TEXT_END_ADDR.
6690
6691 2013-05-06 Sandra Loosemore <sandra@codesourcery.com>
6692 Andrew Jenner <andrew@codesourcery.com>
6693
6694 * Makefile.in (SFILES): Add linux-nios2-low.c.
6695 (clean): Add action to delete nios2-linux.c.
6696 (nios2-linux.c): New rule.
6697 * configure.srv: Add nios2*-*-linux*.
6698 * linux-nios2-low.c: New.
6699
6700 2013-05-03 Hafiz Abid Qadeer <abidh@codesourcery.com>
6701
6702 * tracepoint.c (cmd_qtinit): Call 'stop_tracing'.
6703
6704 2013-04-25 Hui Zhu <hui@codesourcery.com>
6705
6706 PR gdb/15186
6707 * ax.c (ax_printf): Add fflush.
6708
6709 2013-04-22 Tom Tromey <tromey@redhat.com>
6710
6711 * Makefile.in (SFILES): Add filestuff.c.
6712 (OBS): Add filestuff.o.
6713 (filestuff.o): New target.
6714 * config.in, configure: Rebuild.
6715 * configure.ac: Check for fdwalk, pipe2.
6716
6717 2013-04-17 Pedro Alves <palves@redhat.com>
6718
6719 * configure.ac (USE_THREAD_DB): Delete variable.
6720 (if test "$srv_linux_thread_db" = "yes"): AC_DEFINE USE_THREAD_DB.
6721 Don't AC_SUBST USE_THREAD_DB.
6722 * Makefile.in (INTERNAL_CFLAGS): Remove @USE_THREAD_DB@.
6723 * config.in, configure: Regenerate.
6724
6725 2013-04-16 Pedro Alves <palves@redhat.com>
6726
6727 * linux-low.h (struct lwp_info) <thread_known>: Move under
6728 the USE_THREAD_DB #ifdef.
6729
6730 2013-04-16 Pedro Alves <palves@redhat.com>
6731
6732 * Makefile.in (INTERNAL_CFLAGS): Add @USE_THREAD_DB@.
6733 (linux-low.o): Delete rule.
6734 * linux-low.h: Always include "gdb_thread_db.h" instead of
6735 conditionally including thread_db.h.
6736 (struct lwp_info) <th>: Guard with #ifdef USE_THREAD_DB instead of
6737 HAVE_THREAD_DB_H.
6738
6739 2013-04-07 Jan Kratochvil <jan.kratochvil@redhat.com>
6740
6741 * Makefile.in (install-only): Fix make install regression.
6742
6743 2013-04-05 Jan Kratochvil <jan.kratochvil@redhat.com>
6744
6745 Convert man pages to texinfo, new gdbinit.5 texinfo page.
6746 * Makefile.in (install-only): Remove $(man1dir) and gdbserver.1
6747 installation.
6748 * gdbserver.1: Remove.
6749
6750 2013-03-22 Pedro Alves <palves@redhat.com>
6751
6752 * linux-low.c (handle_extended_wait): Don't call
6753 linux_enable_event_reporting.
6754
6755 2013-03-15 Tony Theodore <tonyt@logyst.com>
6756
6757 PR build/9098:
6758 * Makefile.in (SHELL): Use @SHELL@.
6759
6760 2013-03-14 Sergio Durigan Junior <sergiodj@redhat.com>
6761
6762 * tracepoint.c (cmd_qtv): Initialize `val' with zero, silencing
6763 compiler warning.
6764
6765 2013-03-13 Joel Brobecker <brobecker@adacore.com>
6766
6767 * linux-low.c (linux_target_ops) [!HAVE_LINUX_BTRACE]:
6768 Remove extraneous NULL element.
6769
6770 2013-03-13 Yao Qi <yao@codesourcery.com>
6771
6772 * tracepoint.c (traceframe_read_tsv): Look for the last matched
6773 'V' block in trace frame.
6774
6775 2013-03-11 Markus Metzger <markus.t.metzger@intel.com>
6776
6777 * target.h (struct target_ops): Add btrace ops.
6778 (target_supports_btrace): New macro.
6779 (target_enable_btrace): New macro.
6780 (target_disable_btrace): New macro.
6781 (target_read_btrace): New macro.
6782 * gdbthread.h (struct thread_info): Add btrace field.
6783 * server.c: Include btrace-common.h.
6784 (handle_btrace_general_set): New function.
6785 (handle_btrace_enable): New function.
6786 (handle_btrace_disable): New function.
6787 (handle_general_set): Call handle_btrace_general_set.
6788 (handle_qxfer_btrace): New function.
6789 (struct qxfer qxfer_packets[]): Add btrace entry.
6790 * inferiors.c (remove_thread): Disable btrace.
6791 * linux-low: Include linux-btrace.h.
6792 (linux_low_enable_btrace): New function.
6793 (linux_low_read_btrace): New function.
6794 (linux_target_ops): Add btrace ops.
6795 * configure.srv (i[34567]86-*-linux*): Add linux-btrace.o.
6796 Add srv_linux_btrace=yes.
6797 (x86_64-*-linux*): Add linux-btrace.o.
6798 Add srv_linux_btrace=yes.
6799 * configure.ac: Define HAVE_LINUX_BTRACE.
6800 * config.in: Regenerated.
6801 * configure: Regenerated.
6802
6803 2013-03-11 Markus Metzger <markus.t.metzger@intel.com>
6804
6805 * server.c (handle_qxfer): Preserve error message if -3 is
6806 returned.
6807 (qxfer): Document the -3 return value.
6808
6809 2013-03-11 Markus Metzger <markus.t.metzger@intel.com>
6810
6811 * Makefile.in (SFILES): Add $(srcdir)/common/linux-btrace.c.
6812 (linux_btrace_h): New variable.
6813 (linux-btrace.o): New rule.
6814
6815 2013-03-08 Stan Shebs <stan@codesourcery.com>
6816 Hafiz Abid Qadeer <abidh@codesourcery.com>
6817
6818 * tracepoint.c (trace_buffer_size): New global.
6819 (DEFAULT_TRACE_BUFFER_SIZE): New define.
6820 (init_trace_buffer): Change to one-argument function. Allocate
6821 trace buffer memory.
6822 (handle_tracepoint_general_set): Call cmd_bigqtbuffer_size to
6823 handle QTBuffer:size packet.
6824 (cmd_bigqtbuffer_size): New function.
6825 (initialize_tracepoint): Call init_trace_buffer with
6826 DEFAULT_TRACE_BUFFER_SIZE.
6827 * server.c (handle_query): Add QTBuffer:size in the
6828 supported packets.
6829
6830 2013-03-07 Yao Qi <yao@codesourcery.com>
6831
6832 * tracepoint.c (cur_action, cur_step_action): Make them unsigned.
6833 (cmd_qtfp): Initialize cur_action and cur_step_action 0 instead
6834 of -1.
6835 (cmd_qtsp): Adjust condition. Do post increment.
6836 Set cur_action and cur_step_action back to 0.
6837
6838 2013-03-07 Jeremy Bennett <jeremy.bennett@embecosm.com>
6839
6840 PR server/15236
6841 * linux-low.c (linux_write_memory): Return early success if LEN is
6842 zero.
6843
6844 2013-03-05 Corinna Vinschen <vinschen@redhat.de>
6845
6846 * configure.srv: Add x86_64-*-cygwin* as target.
6847
6848 2013-02-28 Tom Tromey <tromey@redhat.com>
6849
6850 * configure.ac: Invoke AC_SYS_LARGEFILE.
6851 * configure, config.in: Rebuild.
6852
6853 2013-02-28 Corinna Vinschen <vinschen@redhat.com>
6854
6855 * win32-low.c: Throughout, fix format strings and casts of
6856 printf-like functions to avoid type related warnings on all
6857 platforms.
6858 (get_child_debug_event): Print dwDebugEventCode as hex since
6859 that's how it's usually documented.
6860
6861 2013-02-28 Yao Qi <yao@codesourcery.com>
6862
6863 * tracepoint.c (cmd_qtbuffer): Call phex_nz instead of
6864 pulongest.
6865
6866 2013-02-27 Jiong Wang <jiwang@tilera.com>
6867
6868 * Makefile.in (clean): Remove reg-tilegx.c, reg-tilegx32.c.
6869 (reg-tilegx32.c): New rule.
6870 * configure.srv (tilegx-*-linux*): Add reg-tilegx32.o to srv_regobj.
6871 * linux-tile-low.c (tile_arch_setup): New function. Invoke
6872 different register info initializer according to elf class.
6873 (init_registers_tilgx32): New function. The tilegx32 register info
6874 initializer.
6875 (tile_fill_gregset): Use "uint_reg_t" to represent register size.
6876 (tile_store_gregset): Likewise.
6877
6878 2013-02-27 Yao Qi <yao@codesourcery.com>
6879
6880 * server.c (process_point_options): Print debug message when
6881 debug_threads is true.
6882
6883 2013-02-26 Yao Qi <yao@codesourcery.com>
6884
6885 * tracepoint.c (cmd_qtbuffer): Don't set '\0' in OWN_BUF.
6886
6887 2013-02-19 Pedro Alves <palves@redhat.com>
6888 Kai Tietz <ktietz@redhat.com>
6889
6890 PR gdb/15161
6891
6892 * server.c (handle_query) <CRC check>: Use unpack_varlen_hex
6893 instead of strtoul to extract address from packet.
6894 (process_serial_event) <'z'>: Likewise.
6895
6896 2013-02-18 Yao Qi <yao@codesourcery.com>
6897
6898 * linux-bfin-low.c (the_low_target): Use NULL instead of 0.
6899
6900 2013-02-14 Pedro Alves <palves@redhat.com>
6901
6902 Plug memory leak.
6903
6904 * tracepoint.c (cmd_qtnotes): Free TRACING_USER_NAME,
6905 TRACING_NOTES and TRACING_STOP_NOTE before clobbering.
6906
6907 2013-02-14 Pedro Alves <palves@redhat.com>
6908
6909 * tracepoint.c (cmd_qtdpsrc): Use savestring.
6910
6911 2013-02-14 Pedro Alves <palves@redhat.com>
6912
6913 * tracepoint.c (save_string): Delete.
6914 (add_tracepoint_action): Use savestring instead of save_string.
6915
6916 2013-02-12 Pedro Alves <palves@redhat.com>
6917
6918 * linux-xtensa-low.c: Ditto.
6919 * xtensa-xtregs.c: Ditto.
6920
6921 2013-02-12 Sanimir Agovic <sanimir.agovic@intel.com>
6922
6923 * thread-db.c (thread_db_get_tls_address): NULL pointer check
6924 thread_db.
6925
6926 2013-02-07 Marcus Shawcroft <marcus.shawcroft@arm.com>
6927
6928 * linux-aarch64-low.c (aarch64_arch_setup): Clamp
6929 aarch64_num_wp_regs and aarch64_num_bp_regs to
6930 AARCH64_HWP_MAX_NUM and AARCH64_HBP_MAX_NUM respectively.
6931
6932 2013-02-07 Marcus Shawcroft <marcus.shawcroft@arm.com>
6933
6934 * linux-aarch64-low.c (ps_get_thread_area): Replace
6935 PTRACE_GET_THREAD_AREA with PTRACE_GETREGSET.
6936
6937 2013-02-04 Jim MacArthur <jim.macarthur@arm.com>
6938 Marcus Shawcroft <marcus.shawcroft@arm.com>
6939 Nigel Stephens <nigel.stephens@arm.com>
6940 Yufeng Zhang <yufeng.zhang@arm.com>
6941
6942 * Makefile.in (clean): Remove aarch64.c and aarch64-without-fpu.c.
6943 (aarch64.c, aarch64-without-fpu.c): New targets.
6944 * configure.srv (aarch64*-*-linux*): New.
6945 * linux-aarch64-low.c: New file.
6946
6947 2013-02-04 Marcus Shawcroft <marcus.shawcroft@arm.com>
6948
6949 * linux-low.c (handle_extended_wait, linux_create_inferior)
6950 (linux_attach_lwp_1, linux_kill_one_lwp, linux_attach_one_lwp)
6951 (dequeue_one_deferred_signal, linux_resume_one_thread)
6952 (fetch_register, linux_write_memory, linux_enable_event_reporting)
6953 (linux_tracefork_grandchild, linux_test_for_tracefork)
6954 (linux_read_offsets, linux_xfer_siginfo, linux_xfer_siginfo): Add
6955 PTRACE_ARG3_TYPE and PTRACE_ARG4_TYPE cast to ptrace arguments
6956 where the argument is 0.
6957
6958 2013-01-25 Yao Qi <yao@codesourcery.com>
6959
6960 * event-loop.c: Include "queue.h".
6961 (gdb_event_p): New typedef.
6962 (struct gdb_event) <next_event>: Remove.
6963 (event_queue): Change to QUEUE(gdb_event_p).
6964 (async_queue_event): Remove.
6965 (gdb_event_xfree): New.
6966 (initialize_event_loop): New.
6967 (process_event): Use API from QUEUE.
6968 (wait_for_event): Likewise.
6969 * server.c (main): Call initialize_event_loop.
6970 * server.h (initialize_event_loop): Declare.
6971
6972 2013-01-18 Yao Qi <yao@codesourcery.com>
6973
6974 * ax.h (struct eval_agent_expr_context): New.
6975 (gdb_eval_agent_expr): Update declaration.
6976 * ax.c (gdb_eval_agent_expr): Remove argument REGCACHE and
6977 TFRAME. Add new argument CTX.
6978 * server.h (struct eval_agent_expr_context): Declare.
6979 (agent_mem_read, agent_tsv_read): Update declaration.
6980 (agent_mem_read_string): Likewise.
6981 * tracepoint.c (eval_tracepoint_agent_expr): Remove.
6982 (add_traceframe_block): Add new argument TPOINT.
6983 Increase TPOINT->traceframe_usage.
6984 (do_action_at_tracepoint): Call gdb_eval_agent_expr instead of
6985 eval_tracepoint_agent_expr.
6986 (condition_true_at_tracepoint): Likewise.
6987 (agent_mem_read): Remove argument TFRAME. Add argument CTX.
6988 (agent_mem_read_string, agent_tsv_read): Likewise.
6989
6990 2013-01-16 Yao Qi <yao@codesourcery.com>
6991
6992 * linux-low.c (linux_resume_one_lwp): Don't check
6993 'lwp->bp_reinsert != 0'.
6994
6995 2013-01-07 Joel Brobecker <brobecker@adacore.com>
6996 Pedro Alves <palves@redhat.com>
6997
6998 * lynx-low.c (ptrace_request_to_str): Define a temporary
6999 macro and use it to simplify this function's implementation.
7000
7001 2013-01-07 Joel Brobecker <brobecker@adacore.com>
7002
7003 * lynx-low.c (lynx_resume): Call perror_with_name if lynx_ptrace
7004 sets errno.
7005
7006 2013-01-07 Joel Brobecker <brobecker@adacore.com>
7007
7008 * configure.srv (i[34567]86-*-lynxos*): Set srv_xmlfiles.
7009
7010 2013-01-07 Joel Brobecker <brobecker@adacore.com>
7011
7012 * configure.srv (powerpc-*-lynxos*): Set srv_xmlfiles.
7013
7014 2013-01-07 Joel Brobecker <brobecker@adacore.com>
7015
7016 * lynx-low.c (lynx_resume): Use the resume_info parameter
7017 to determine the ptid for the lynx_ptrace call, unless
7018 it is equal to minus_one_ptid, in which case we use the
7019 ptid of the current_inferior.
7020 (lynx_wait_1): After having received a thread create/exit
7021 event, resume the inferior's execution using the signaling
7022 thread's ptid, rather than the old ptid.
7023
7024 2013-01-07 Joel Brobecker <brobecker@adacore.com>
7025
7026 * lynx-low.c (lynx_resume): Delete variable ret.
7027
7028 2013-01-01 Joel Brobecker <brobecker@adacore.com>
7029
7030 * gdbreplay.c (gdbreplay_version): Update copyright year.
7031 * server.c (gdbserver_version): Likewise.
7032
7033 2012-12-17 Joel Brobecker <brobecker@adacore.com>
7034
7035 * lynx-low.c (lynx_wait_1): Add debug trace before adding
7036 new thread.
7037
7038 2012-12-17 Joel Brobecker <brobecker@adacore.com>
7039
7040 * lynx-low.c (ptrace_request_to_str): Add handling for
7041 PTRACE_GETTRACESIG.
7042
7043 2012-12-17 Joel Brobecker <brobecker@adacore.com>
7044
7045 * lynx-low.c (lynx_attach): Delete variable new_process.
7046
7047 2012-12-17 Joel Brobecker <brobecker@adacore.com>
7048
7049 * lynx-low.c (lynx_create_inferior): Delete variable
7050 new_process.
7051
7052 2012-12-17 Joel Brobecker <brobecker@adacore.com>
7053
7054 * lynx-low.c (ptrace_request_to_str): Do not handle
7055 PTRACE_GETTHREADLIST if this macro does not exist.
7056
7057 2012-12-15 Yao Qi <yao@codesourcery.com>
7058
7059 * Makefile.in (OBS): Add notif.o.
7060 * notif.c, notif.h: New.
7061 * server.c: Include "notif.h".
7062 (struct vstop_notif) <next>: Remove.
7063 <base>: New field.
7064 (queue_stop_reply): Update.
7065 (push_event, send_next_stop_reply): Remove.
7066 (discard_queued_stop_replies): Update.
7067 (notif_stop): New variable.
7068 (handle_v_stopped): Remove.
7069 (handle_v_requests): Don't call handle_v_stopped. Call
7070 handle_ack_notif instead.
7071 (queue_stop_reply_callback): Call notif_event_enque instead
7072 of queue_stop_reply.
7073 (handle_status): Don't call send_next_stop_reply, call
7074 notif_write_event instead.
7075 (kill_inferior_callback): Likewise.
7076 (detach_or_kill_inferior_callback): Likewise.
7077 (main): Call initialize_notif.
7078 (process_serial_event): Call QUEUE_is_empty.
7079 (handle_target_event): Call notif_push instead of push event.
7080 * server.h (push_event): Remove declaration.
7081
7082 2012-12-10 Tom Tromey <tromey@redhat.com>
7083
7084 * Makefile.in (DEPMODE, DEPDIR, depcomp, COMPILE.pre)
7085 (COMPILE.post, COMPILE, POSTCOMPILE, IPAGENT_COMPILE): New
7086 macros.
7087 (.c.o): Rewrite.
7088 (ax-ipa.o, tracepoint-ipa.o, utils-ipa.o, format-ipa.o)
7089 (common-utils-ipa.o, remote-utils-ipa.o, regcache-ipa.o)
7090 (i386-linux-ipa.o, linux-i386-ipa.o, linux-amd64-ipa.o)
7091 (amd64-linux-ipa.o, ax.o): Rewrite.
7092 (event-loop.o, hostio.o, hostio-errno.o, inferiors.o, mem-break.o)
7093 (proc-service.o, regcache.o, remote-utils.o, server.o, target.o)
7094 (thread-db.o, tracepoint.o, utils.o, gdbreplay.o, dll.o): Remove.
7095 (signals.o, linux-procfs.o, linux-ptrace.o, common-utils.o, vec.o)
7096 (gdb_vecs.o, xml-utils.o, linux-osdata.o, ptid.o, buffer.o)
7097 (format.o, agent.o, vasprintf.o, vsnprintf.o): Rewrite.
7098 (i386-low.o, i387-fp.o, linux-low.o, linux-arm-low.o)
7099 (linux-bfin-low.o, linux-cris-low.o, linux-crisv32-low.o)
7100 (linux-ia64-low.o, linux-m32r-low.o, linux-mips-low.o)
7101 (linux-ppc-low.o, linux-s390-low.o, linux-sh-low.o)
7102 (linux-tic6x-low.o, linux-x86-low.o, linux-xtensa-low.o)
7103 (linux-tile-low.o, lynx-low.o, lynx-ppc-low.o, nto-low.o)
7104 (nto-x86-low.o, linux-low.o, win32-low.o, win32-arm-low.o)
7105 (win32-i386-low.o, spu-low.o, reg-arm.o, arm-with-iwmmxt.o)
7106 (arm-with-vfpv2.o, arm-with-vfpv3.o, arm-with-neon.o, reg-bfin.o)
7107 (reg-cris.o, reg-crisv32.o, i386.o, i386-linux.o, i386-avx.o)
7108 (i386-avx-linux.o, i386-mmx.o, i386-mmx-linux.o, reg-ia64.o)
7109 (reg-m32r.o, reg-m68k.o, reg-cf.o, mips-linux.o, mips-dsp-linux.o)
7110 (mips64-linux.o, mips64-dsp-linux.o, powerpc-32.o, powerpc-32l.o)
7111 (powerpc-altivec32l.o, powerpc-cell32l.o, powerpc-vsx32l.o)
7112 (powerpc-isa205-32l.o, powerpc-isa205-altivec32l.o)
7113 (powerpc-isa205-vsx32l.o, powerpc-e500l.o, powerpc-64l.o)
7114 (powerpc-altivec64l.o, powerpc-cell64l.o, powerpc-vsx64l.o)
7115 (powerpc-isa205-64l.o, powerpc-isa205-altivec64l.o)
7116 (powerpc-isa205-vsx64l.o, s390-linux32.o, s390-linux32v1.o)
7117 (s390-linux32v2.o, s390-linux64.o, s390-linux64v1.o)
7118 (s390-linux64v2.o, s390x-linux64.o, s390x-linux64v1.o)
7119 (s390x-linux64v2.o, tic6x-c64xp-linux.o, tic6x-c64x-linux.o)
7120 (tic6x-c62x-linux.o, reg-sh.o, reg-sparc64.o, reg-spu.o, amd64.o)
7121 (amd64-linux.o, amd64-avx.o, amd64-avx-linux.o, x32.o)
7122 (x32-linux.o, x32-avx.o, x32-avx-linux.o, reg-xtensa.o)
7123 (reg-tilegx.o): Remove.
7124 (all_object_files): New macro.
7125 Include .deps files.
7126 * aclocal.m4, configure: Rebuild.
7127 * acinclude.m4: Include depstand.m4, lead-dot.m4.
7128 * configure.ac: Invoke ZW_CREATE_DEPDIR,
7129 ZW_PROG_COMPILER_DEPENDENCIES. Compute GMAKE condition.
7130
7131 2012-12-05 Tom Tromey <tromey@redhat.com>
7132
7133 PR gdb/14917:
7134 * server.h (current_insn_ptr, emit_error): Declare 'extern'.
7135
7136 2012-11-28 Markus Metzger <markus.t.metzger@intel.com>
7137
7138 * configure.ac: Check for linux/perf_event.h.
7139 * config.in: Regenerated.
7140 * configure: Regenerated.
7141
7142 2012-11-26 Maxime Villard <rustyBSD@gmx.fr>
7143
7144 * hostio.c (handle_readlink): Decrease buffer size
7145 parameter passed to readlink by one byte.
7146
7147 2012-11-26 Yao Qi <yao@codesourcery.com>
7148
7149 * configure.ac (build_warnings): Append '-Wempty-body'.
7150 * configure: Regenerated.
7151 * linux-low.c (linux_create_inferior): Use braces for empty 'if'
7152 body.
7153
7154 2012-11-15 Pierre Muller <muller@sourceware.org>
7155
7156 * configure.ac (AC_CHECK_HEADERS): Add wait.h header.
7157 * config.in: Regenerate.
7158 * configure: Regenerate.
7159 * linux-low.c: Use "gdb_stat.h" header instead of <sys/stat.h> header.
7160 Use "gdb_wait.h" header instead of <sys/wait.h> header.
7161 * lynx-low.c: Use "gdb_wait.h" header instead of <sys/wait.h> header.
7162 * remote-utils.c: Use "gdb_stat.h" header instead of <sys/stat.h>
7163 header.
7164 * server.c: Remove HAVE_WAIT_H conditional. Use "gdb_wait.h" header
7165 instead of <sys/wait.h> header.
7166 * spu-low.c: Use "gdb_wait.h" header instead of <sys/wait.h> header.
7167
7168 2012-11-13 Markus Metzger <markus.t.metzger@intel.com>
7169
7170 * Makefile.in: (INTERNAL_CFLAGS): Add -DGDBSERVER
7171 (various make rules): Remove -DGDBSERVER
7172
7173 2012-11-09 Yao Qi <yao@codesourcery.com>
7174
7175 * spu-low.c (current_ptid): Move it to ..
7176 * gdbthread.h: ... here. New.
7177 * remote-utils.c (read_ptid): Use macro 'current_ptid'.
7178 * server.c (myresume, process_serial_event): Likewise.
7179 * thread-db.c (thread_db_find_new_threads): Likewise.
7180 * tracepoint.c (run_inferior_command): Likewise.
7181
7182 2012-10-01 Andrew Burgess <aburgess@broadcom.com>
7183
7184 * server.c (handle_search_memory_1): Include access length in
7185 warning message.
7186
7187 2012-09-05 Michael Brandt <michael.brandt@axis.com>
7188
7189 * linux-crisv32-low.c: Fix compile errors.
7190
7191 2012-09-04 Yao Qi <yao@codesourcery.com>
7192
7193 * tracepoint.c (cmd_qtsv): Adjust debug message.
7194 Don't check CUR_TPOINT.
7195
7196 2012-08-28 Yao Qi <yao@codesourcery.com>
7197
7198 * ax.c, tracepoint.c: Replace ATTR_FORMAT with ATTRIBUTE_PRINTF.
7199 * server.h: Include 'libiberty.h' and 'ansidecl.h'.
7200 (ATTR_NORETURN, ATTR_FORMAT, ATTR_MALLOC): Remove.
7201 Remove declarations of xmalloc, xreallloc, xstrdup and
7202 freeargv.
7203 * Makefile.in (libiberty_h): New.
7204 (server_h): Append dependencies 'libiberty.h' and 'ansidecl.h'.
7205 (linux-bfin-low.o): Append dependency 'libiberty.h'.
7206
7207 2012-08-23 Yao Qi <yao@codesourcery.com>
7208
7209 * server.h: Remove declaration of 'xsnprintf'.
7210
7211 2012-08-22 Keith Seitz <keiths@redhat.com>
7212
7213 * server.h: Include build-gnulib-gbserver/config.h.
7214 * gdbreplay.c: Likewise.
7215
7216 2012-08-08 Doug Evans <dje@google.com>
7217
7218 * Makefile.in (SFILES): Add gdb_vecs.c.
7219 (OBS): Add gdb_vecs.o.
7220 (gdb_vecs_h, host_defs_h): New variables.
7221 (thread-db.o): Add $(gdb_vecs_h) dependency.
7222 (gdb_vecs.o): New rule.
7223 * thread-db.c: #include "gdb_vecs.h".
7224 (thread_db_load_search): Use a vector to iterate over path elements.
7225 Handle text appearing after "$pdir".
7226
7227 * configure.ac: Add check for strstr.
7228 * config.in: Regenerate.
7229 * configure: Regenerate.
7230
7231 2012-08-02 Ulrich Weigand <ulrich.weigand@linaro.org>
7232
7233 * hostio.c (handle_pread): If pread fails, fall back to attempting
7234 lseek/read.
7235 (handle_pwrite): Likewise for pwrite.
7236
7237 2012-08-01 Ulrich Weigand <ulrich.weigand@linaro.org>
7238
7239 * linux-arm-low.c (arm_linux_hw_point_initialize): Distinguish
7240 between unsupported TYPE and unimplementable ADDR/LEN combination.
7241 (arm_insert_point): Act on new return value.
7242
7243 2012-07-31 Pedro Alves <palves@redhat.com>
7244
7245 * server.c (process_point_options): Only skip tokens if we find
7246 one that is unrecognized. Don't treat 'X' specially while
7247 skipping unrecognized tokens.
7248
7249 2012-07-30 Ulrich Weigand <ulrich.weigand@linaro.org>
7250
7251 * linux-arm-low.c (arm_linux_hw_point_initialize): Do not attempt
7252 to 4-byte-align HW breakpoint addresses for Thumb.
7253
7254 2012-07-27 Yao Qi <yao@codesourcery.com>
7255
7256 PR remote/14161.
7257
7258 * server.h: Declare gdb_agent_about_to_close.
7259 * target.c (kill_inferior): Include "agent.h".
7260 New. Send command 'kill'.
7261 * target.h (kill_inferior): Removed macro.
7262 * tracepoint.c (gdb_agent_about_to_close): New.
7263 (gdb_agent_helper_thread): Handle command 'close'.
7264 Wait endlessly until the inferior stops.
7265 Install gdb_agent_remove_socket to atexit hook.
7266 (agent_socket_name): New static variable.
7267 (gdb_agent_socket_init): Replace local variable 'name' with
7268 'agent_socket_name'.
7269 (gdb_agent_remove_socket): New.
7270
7271 2012-07-27 Yao Qi <yao@codesourcery.com>
7272
7273 * server.c (process_point_options): Stop at 'X' when parsing.
7274
7275 2012-07-19 Michael Eager <eager@eagercon.com>
7276
7277 * i386-low.c (Z_packet_to_hw_type): Add Z_PACKET_HW_BP, translate
7278 to hw_execute.
7279 * linux-x86-low.c (x86_insert_point, x86_remove_point):
7280 Call i386_low_insert_watchpoint, i386_low_remove_watchpoint to add/del
7281 hardware breakpoint.
7282
7283 2012-07-07 Jan Kratochvil <jan.kratochvil@redhat.com>
7284
7285 * gdbserver/linux-low.c (initialize_low): Call
7286 linux_ptrace_init_warnings.
7287
7288 2012-07-02 Doug Evans <dje@google.com>
7289
7290 * mem-break.c (gdb_no_commands_at_breakpoint): Fix cast from
7291 pointer to int.
7292
7293 2012-07-02 Stan Shebs <stan@codesourcery.com>
7294
7295 * Makefile.in (WARN_CFLAGS_NO_FORMAT): Define.
7296 (ax.o): Add it to build rule.
7297 (ax-ipa.o): Ditto.
7298 (OBS): Add format.o.
7299 (IPA_OBS): Add format.o.
7300 * server.c (handle_query): Claim support for breakpoint commands.
7301 (process_point_options): Add command case.
7302 (process_serial_event): Leave running if there are printfs in
7303 effect.
7304 * mem-break.h (any_persistent_commands): Declare.
7305 (add_breakpoint_commands): Declare.
7306 (gdb_no_commands_at_breakpoint): Declare.
7307 (run_breakpoint_commands): Declare.
7308 * mem-break.c (struct point_command_list): New struct.
7309 (struct breakpoint): New field command_list.
7310 (any_persistent_commands): New function.
7311 (add_commands_to_breakpoint): New function.
7312 (add_breakpoint_commands): New function.
7313 (gdb_no_commands_at_breakpoint): New function.
7314 (run_breakpoint_commands): New function.
7315 * linux-low.c (linux_wait_1): Test for and run breakpoint commands
7316 locally.
7317 * ax.c: Include format.h.
7318 (ax_printf): New function.
7319 (gdb_eval_agent_expr): Add printf opcode.
7320
7321 2012-06-13 Yao Qi <yao@codesourcery.com>
7322
7323 * server.c (start_inferior): Remove duplicated writes to fields
7324 'last_resume_kind' and 'last_status' of 'current_inferior'.
7325
7326 2012-06-12 Yao Qi <yao@codesourcery.com>
7327 Pedro Alves <palves@redhat.com>
7328
7329 * linux-low.c (linux_set_resume_request): Simplify predicate. Add
7330 comment.
7331 * server.c (handle_v_cont): Extend comment.
7332
7333 2012-06-11 Yao Qi <yao@codesourcery.com>
7334
7335 * linux-low.c (linux_attach): Add 'static'.
7336
7337 2012-06-06 Yao Qi <yao@codesourcery.com>
7338
7339 * ax.c (gdb_eval_agent_expr): Print `top' in hex.
7340
7341 2012-06-01 Jan Kratochvil <jan.kratochvil@redhat.com>
7342
7343 Fix gcc -flto compilation warning.
7344 * server.c (main): Make variable multi_mode and attach volatile.
7345
7346 2012-05-30 Thiago Jung Bauermann <thiago.bauermann@linaro.org>
7347
7348 * linux-low.c (get_r_debug): Disable code using DT_MIPS_RLD_MAP
7349 if the platform doesn't know about it.
7350
7351 2012-05-30 Jeff Kenton <jkenton@tilera.com>
7352
7353 * Makefile.in (SFILES): Add linux-tile-low.c.
7354 (linux-tile-low.o, reg-tilegx.o, reg-tilegx.c): New rules.
7355 * configure.srv: Handle tilegx-*-linux*.
7356 * linux-tile-low.c: New file.
7357
7358 2012-05-28 Jan Kratochvil <jan.kratochvil@redhat.com>
7359
7360 * linux-low.c (linux_qxfer_libraries_svr4): Return -1 if R_DEBUG is -1.
7361
7362 2012-05-24 Pedro Alves <palves@redhat.com>
7363
7364 PR gdb/7205
7365
7366 Replace TARGET_SIGNAL_ with GDB_SIGNAL_ throughout.
7367
7368 2012-05-24 Pedro Alves <palves@redhat.com>
7369
7370 PR gdb/7205
7371
7372 Replace target_signal with gdb_signal throughout.
7373
7374 2012-05-22 Maciej W. Rozycki <macro@codesourcery.com>
7375
7376 * linux-low.c (linux_store_registers): Avoid the copying sequence
7377 when no data has been retrieved by ptrace.
7378
7379 2012-05-22 Will Deacon <will.deacon@arm.com>
7380
7381 * linux-low (__UCLIBC__ && !(__UCLIBC_HAS_MMU__ || __ARCH_HAS_MMU__)):
7382 Include asm/ptrace.h.
7383 (PT_TEXT_ADDR, PT_DATA_ADDR, PT_TEXT_END_ADDR): Define only if not
7384 already defined.
7385
7386 2012-05-21 Maciej W. Rozycki <macro@codesourcery.com>
7387
7388 * linux-low.c (linux_store_registers): Don't re-retrieve data
7389 with ptrace that has already been obtained from /proc. Always
7390 copy any data retrieved with ptrace to the buffer supplied.
7391
7392 2012-05-11 Yao Qi <yao@codesourcery.com>
7393 Pedro Alves <palves@redhat.com>
7394
7395 * linux-low.c (enum stopping_threads_kind): New.
7396 (stopping_threads): Change type to `enum stopping_threads_kind'.
7397 (handle_extended_wait): If stopping and suspending threads, leave
7398 the new_lwp suspended too.
7399 (linux_wait_for_event): Adjust.
7400 (stop_all_lwps): Set `stopping_threads' to
7401 STOPPING_AND_SUSPENDING_THREADS or STOPPING_THREADS depending on
7402 whether we're suspending threads or just stopping them. Assert no
7403 recursion happens.
7404
7405 2012-04-29 Yao Qi <yao@codesourcery.com>
7406
7407 * server.h: Move some code to ...
7408 * gdbthread.h: ... here. New.
7409 * Makefile.in (inferiors.o, regcache.o): Depends on gdbthread.h
7410 (remote-utils.o, server.o, target.o tracepoint.o): Likewise.
7411 (nto-low.o, win32-low.o): Likewise.
7412 * inferiors.c, linux-low.h, nto-low.c: Include gdbthread.h.
7413 * regcache.c, remote-utils.c, server.c: Likewise.
7414 * target.c, tracepoint.c, win32-low.c: Likewise.
7415
7416 2012-04-24 Thiago Jung Bauermann <thiago.bauermann@linaro.org>
7417
7418 * linux-low.h (PTRACE_ARG3_TYPE): Move macro from linux-low.c.
7419 (PTRACE_ARG4_TYPE): Likewise.
7420 (PTRACE_XFER_TYPE): Likewise.
7421 * linux-arm-low.c (arm_prepare_to_resume): Cast third argument of
7422 ptrace to PTRACE_ARG3_TYPE.
7423 * linux-low.c (PTRACE_ARG3_TYPE): Move macro to linux-low.h.
7424 (PTRACE_ARG4_TYPE): Likewise.
7425 (PTRACE_XFER_TYPE): Likewise.
7426 (linux_detach_one_lwp): Cast fourth argument of
7427 ptrace to long then PTRACE_ARG4_TYPE.
7428 (regsets_fetch_inferior_registers): Cast third argument of
7429 ptrace to long then PTRACE_ARG3_TYPE.
7430 (regsets_store_inferior_registers): Likewise.
7431
7432 2012-04-20 Pedro Alves <palves@redhat.com>
7433
7434 * configure: Regenerate.
7435
7436 2012-04-19 Pedro Alves <palves@redhat.com>
7437
7438 * Makefile.in (GNULIB_BUILDDIR): New.
7439 (LIBGNU, INCGNU, GNULIB_H): Adjust.
7440 (SUBDIRS, CLEANDIRS, REQUIRED_SUBDIRS): New.
7441 (all, install-only, uninstall, clean-info, all-lib, clean): No
7442 longer pass GNULIB_FLAGS_TO_PASS. Use subdir_do.
7443 (maintainer-clean realclean distclean): Use subdir_do.
7444 (subdir_do): New.
7445 (gnulib/import/Makefile): Adjust. Replace gnulib/import with
7446 $(GNULIB_BUILDDIR). Don't pass argument to config.status.
7447 * acinclude.m4: Include acx_configure_dir.m4.
7448 * configure.ac: Remove gl_EARLY, gl_INIT, and AM_INIT_AUTOMAKE
7449 calls. Call AC_PROG_RANLIB. Configure gnulib using
7450 ACX_CONFIGURE_DIR.
7451 (GNULIB): New.
7452 (GNULIB_STDINT_H): Adjust.
7453 (AC_OUTPUT): Don't output gnulib/Makefile anymore.
7454 * gdbreplay.c: Include build-gnulib/config.h.
7455 * server.h: Likewise.
7456 * aclocal.m4: Regenerate.
7457 * config.in: Regenerate.
7458 * configure: Regenerate.
7459
7460 2012-04-19 Pedro Alves <palves@redhat.com>
7461
7462 * Makefile.in (LIBGNU, INCGNU): Adjust.
7463 (GNULIB_FLAGS_TO_PASS, GNULIB_H): Adjust.
7464 (all, install-only, uninstall, clean-info, all-lib, clean)
7465 (maintainer-clean, Makefile, gnulib/Makefile): Adjust.
7466 * configure.ac: Adjust AC_OUTPUT output.
7467 * aclocal.m4: Regenerate.
7468 * configure: Regenerate.
7469
7470 2012-04-19 Pedro Alves <palves@redhat.com>
7471
7472 * Makefile.in (generated_files): New.
7473 (server_h): Remove the explicit dependency on config.h, and depend
7474 on $generated_files.
7475
7476 2012-04-19 Pedro Alves <palves@redhat.com>
7477
7478 * Makefile.in (INCGNU): Add -Ignulib.
7479
7480 2012-04-19 Pedro Alves <palves@redhat.com>
7481
7482 * Makefile.in (GNULIB_INCLUDE_DIR): Rename to ...
7483 (INCGNU): ... this, and spell out -I here.
7484 (GNULIB_LIB): Rename to ...
7485 (LIBGNU): ... this.
7486 (INCLUDE_CFLAGS, gdbserver$(EXEEXT), $(GNULIB_LIB) rule): Adjust.
7487
7488 2012-04-19 Pedro Alves <palves@redhat.com>
7489
7490 * config.in: Regenerate.
7491
7492 2012-04-19 Pedro Alves <palves@redhat.com>
7493
7494 * configure.ac: Remove AC_CHECK_DECLS check for memmem.
7495 * server.h (memmem): Remove declaration.
7496 * config.in: Regenerate.
7497 * configure: Regenerate.
7498
7499 2012-04-19 Yao Qi <yao@codesourcery.com>
7500
7501 * Makefile.in (SFILES): Add common/vec.c.
7502 (OBS): Add vec.o.
7503 (vec.o): New rule.
7504
7505 2012-04-19 Yao Qi <yao@codesourcery.com>
7506
7507 * remote-utils.c (prepare_resume_reply): Replace with macro
7508 target_core_of_thread.
7509 * server.c (handle_qxfer_threads_proper): Likewise.
7510 * target.h (traget_core_of_thread): New macro.
7511
7512 2012-04-18 Pedro Alves <palves@redhat.com>
7513
7514 * aclocal.m4: Regenerate.
7515 * configure: Regenerate.
7516
7517 2012-04-16 Yao Qi <yao@codesourcery.com>
7518
7519 * tracepoint.c (cmd_qtstart): Download tracepoints even when they are
7520 duplicated on address.
7521
7522 2012-04-16 Yao Qi <yao@codesourcery.com>
7523
7524 * tracepoint.c (COPY_FIELD_TO_BUF): New macro.
7525 (struct tracepoint_action_ops) <send>: New field.
7526 (m_tracepoint_action_send, r_tracepoint_action_send): New.
7527 (agent_expr_send, x_tracepoint_action_send): New.
7528 (l_tracepoint_action_send): New.
7529 (cmd_qtdp): Download and install tracepoint
7530 according to `use_agent'.
7531 (run_inferior_command): Add one more parameter `len'.
7532 Update callers.
7533 (tracepoint_send_agent): New.
7534 (cmd_qtdp, cmd_qtstart): Call tracepoint_send_agent.
7535
7536 2012-04-16 Yao Qi <yao@codesourcery.com>
7537
7538 * tracepoint.c (download_tracepoints): Moved to ...
7539 (cmd_qtstart): ... here.
7540
7541 2012-04-14 Yao Qi <yao@codesourcery.com>
7542
7543 * tracepoint.c: Include inttypes.h.
7544 (struct collect_memory_action): Use sized types.
7545 (struct tracepoint): Likewise.
7546 (cmd_qtdp, stop_tracing): Update print specifiers.
7547 (cmd_qtp, response_tracepoint): Likewise.
7548 (collect_data_at_tracepoint): Likewise.
7549 (collect_data_at_step): Likewise.
7550
7551 2012-04-14 Yao Qi <yao@codesourcery.com>
7552
7553 Import gnulib module inttypes.
7554 * aclocal.m4, config.in, configure: Regenerated.
7555
7556 2012-04-14 Yao Qi <yao@codesourcery.com>
7557
7558 * Makefile.in (maintainer-clean, realclean, distclean): Remove
7559 Makefile and config.status at last.
7560
7561 2012-04-13 Yao Qi <yao@codesourcery.com>
7562
7563 * tracepoint.c: Include stdint.h unconditionally.
7564
7565 2012-04-13 Thiago Jung Bauermann <thiago.bauermann@linaro.org>
7566
7567 * acinclude.m4 (GDBSERVER_HAVE_THREAD_DB_TYPE): New macro based
7568 on BFD_HAVE_SYS_PROCFS_TYPE.
7569 * configure.ac: Look for lwpid_t and psaddr_t in libthread_db.h.
7570 * configure: Regenerate.
7571 * config.in: Likewise.
7572
7573 2012-04-13 H.J. Lu <hongjiu.lu@intel.com>
7574
7575 * Makefile.in (clean): Also remove x32.c x32-linux.c
7576 x32-avx.c x32-avx-linux.c.
7577 (x32.o): New target.
7578 (x32.c): Likewise.
7579 (x32-linux.o): Likewise.
7580 (x32-linux.c): Likewise.
7581 (x32-avx.o): Likewise.
7582 (x32-avx.c): Likewise.
7583 (x32-avx-linux.o): Likewise.
7584 (x32-avx-linux.c): Likewise.
7585
7586 * configure.srv (srv_amd64_regobj): Add x32.o x32-avx.o.
7587 (srv_amd64_linux_regobj): Add x32-linux.o x32-avx-linux.o.
7588 (srv_i386_64bit_xmlfiles): Add i386/x32-core.xml.
7589 (srv_amd64_xmlfiles): Add i386/x32.xml i386/x32-avx.xml.
7590 (srv_amd64_linux_xmlfiles): Add i386/x32-linux.xml
7591 i386/x32-avx-linux.xml.
7592
7593 * linux-x86-low.c (init_registers_x32_linux): New prototype.
7594 (init_registers_x32_avx_linux): Likwise.
7595 (x86_linux_update_xmltarget): Call init_registers_x32_linux
7596 or init_registers_x32_avx_linux if linux_is_elf64 is false.
7597
7598 2012-04-13 Pedro Alves <palves@redhat.com>
7599
7600 * Makefile.in (GNULIB_FLAGS_TO_PASS): New.
7601 (FLAGS_TO_PASS): Don't change or set $top_srcdir, $srcdir and VPATH.
7602 (all, uninstall, clean-info, all-lib, clean, maintainer-clean)
7603 (realclean, distclean): Explicitly pass $GNULIB_FLAGS_TO_PASS to
7604 the sub-make.
7605
7606 2012-04-12 H.J. Lu <hongjiu.lu@intel.com>
7607
7608 * linux-x86-low.c (compat_x32_clock_t): New.
7609 (compat_x32_siginfo_t): Likewise.
7610 (compat_x32_siginfo_from_siginfo): Likewise.
7611 (siginfo_from_compat_x32_siginfo): Likewise.
7612 (linux_is_elf64): Likewise.
7613 (x86_siginfo_fixup): Call compat_x32_siginfo_from_siginfo
7614 and siginfo_from_compat_x32_siginfo for x32.
7615 (x86_arch_setup): Set linux_is_elf64.
7616
7617 2012-04-12 H.J. Lu <hongjiu.lu@intel.com>
7618
7619 PR gdb/13969
7620 * linux-low.c (linux_pid_exe_is_elf_64_file): Also return the
7621 e_machine field.
7622 (linux_qxfer_libraries_svr4): Update call to elf_64_file_p.
7623 * linux-low.h (linux_pid_exe_is_elf_64_file): Updated.
7624 * linux-x86-low.c (x86_arch_setup): Check if GDBserver is
7625 compatible with process.
7626
7627 2012-04-12 Yao Qi <yao@codesourcery.com>
7628
7629 * Makefile.in: Define abs_top_srcdir and abs_srcdir.
7630 (INCLUDE_CFLAGS): Append GNULIB_INCLUDE_DIR.
7631 (install-only, install-info, clean): Handle sub dir gnulib.
7632 (all-lib, am--refresh): New targets.
7633 (memmem.o): Remove target.
7634 * configure.ac: Remove AC_CONFIG_LIBOBJ_DIR.
7635 Invoke gl_EARLY. Invoke AC_CHECK_PROGS for make.
7636 (AC_REPLACE_FUNCS): Remove memmem.
7637 Invoke gl_INIT and AM_INIT_AUTOMAKE.
7638 (AC_OUTPUT): Generate Makefile in gnulib/.
7639 * aclocal.m4, config.in, configure: Regenerated.
7640
7641 2012-04-10 Maciej W. Rozycki <macro@codesourcery.com>
7642
7643 * linux-low.c (get_r_debug): Handle DT_MIPS_RLD_MAP.
7644
7645 2012-04-05 Pedro Alves <palves@redhat.com>
7646
7647 -Werror=strict-aliasing
7648
7649 * spu-low.c (parse_spufs_run): Avoid dereferencing type-punned
7650 pointer.
7651
7652 2012-04-04 Pedro Alves <palves@redhat.com>
7653
7654 * linux-sparc-low.c (sparc_fill_gregset_to_stack)
7655 (sparc_store_gregset_from_stack, sparc_store_gregset)
7656 (sparc_breakpoint_at): Fix formatting.
7657
7658 2012-03-30 Thiago Jung Bauermann <thiago.bauermann@linaro.org>
7659
7660 * configure.ac: Check whether Elf32_auxv_t and Elf64_auxv_t
7661 are available.
7662 * linux-low.c [HAVE_ELF32_AUXV_T] (Elf32_auxv_t): Add typedef.
7663 [HAVE_ELF64_AUXV_T] (Elf64_auxv_t): Likewise.
7664 * config.in: Regenerate.
7665 * configure: Likewise.
7666
7667 2012-03-29 Pedro Alves <palves@redhat.com>
7668
7669 * linux-low.c (regsets_store_inferior_registers) [__sparc__]:
7670 Correct ptrace arguments.
7671
7672 2012-03-28 Pedro Alves <palves@redhat.com>
7673
7674 * linux-ia64-low.c (ia64_regmap): Map IA64_EC_REGNUM to PT_AR_EC.
7675 (IA64_GR0_REGNUM, IA64_FR0_REGNUM)
7676 (IA64_FR1_REGNUM): New defines.
7677 (ia64_fetch_register): New.
7678 (the_low_target): Install it.
7679 * linux-low.h (struct linux_target_ops) <fetch_register>: New
7680 field.
7681 * linux-low.c (linux_fetch_registers): Try the
7682 the_low_target.fetch_register hook first.
7683
7684 * linux-arm-low.c (the_low_target): Adjust.
7685 * linux-bfin-low.c (the_low_target): Adjust.
7686 * linux-cris-low.c (the_low_target): Adjust.
7687 * linux-crisv32-low.c (the_low_target): Adjust.
7688 * linux-m32r-low.c (the_low_target): Adjust.
7689 * linux-m68k-low.c (the_low_target): Adjust.
7690 * linux-mips-low.c (the_low_target): Adjust.
7691 * linux-ppc-low.c (the_low_target): Adjust.
7692 * linux-s390-low.c (the_low_target): Adjust.
7693 * linux-sh-low.c (the_low_target): Adjust.
7694 * linux-sparc-low.c (the_low_target): Adjust.
7695 * linux-tic6x-low.c (the_low_target): Adjust.
7696 * linux-x86-low.c (the_low_target): Adjust.
7697 * linux-xtensa-low.c (the_low_target): Adjust.
7698
7699 2012-03-26 Pedro Alves <palves@redhat.com>
7700
7701 * server.c (handle_qxfer_libraries): Don't bail early if
7702 the_target->qxfer_libraries_svr4 is not NULL.
7703
7704 2012-03-26 Pedro Alves <palves@redhat.com>
7705
7706 * linux-low.c (linux_qxfer_libraries_svr4): Fix pasto in comment.
7707
7708 2012-03-23 Pedro Alves <palves@redhat.com>
7709
7710 * linux-low.c (linux_qxfer_libraries_svr4): Terminate the
7711 "library-list-svr4" element's start tag when the the DSO list is
7712 empty.
7713
7714 2012-03-23 Pedro Alves <palves@redhat.com>
7715
7716 * linux-low.c (read_one_ptr): Read the inferior's pointer through
7717 a variable whose type size is the same as the inferior's pointer
7718 size.
7719
7720 2012-03-21 Thomas Schwinge <thomas@codesourcery.com>
7721
7722 * linux-arm-low.c (arm_stopped_by_watchpoint): Use siginfo_t instead of
7723 struct siginfo.
7724 * linux-low.c (siginfo_fixup, linux_xfer_siginfo): Likewise.
7725 * linux-x86-low.c (x86_siginfo_fixup): Likewise.
7726 * linux-low.h: Include <signal.h>.
7727 (struct siginfo): Remove forward declaration.
7728 (struct linux_target_ops) <siginfo_fixup>: Use siginfo_t instead of
7729 struct siginfo.
7730
7731 2012-03-21 Mike Frysinger <vapier@gentoo.org>
7732
7733 * .gitignore: Ignore more files.
7734
7735 2012-03-19 Pedro Alves <palves@redhat.com>
7736 Jan Kratochvil <jan.kratochvil@redhat.com>
7737
7738 * server.c (cont_thread, general_thread): Add describing comments.
7739 (start_inferior): Clear `cont_thread'.
7740 (handle_v_cont): Don't set `cont_thread' if resuming all threads
7741 of a process.
7742
7743 2012-03-15 Yao Qi <yao@codesourcery.com>
7744
7745 * tracepoint.c (install_tracepoint): Move duplicated tracepoint
7746 handling to ...
7747 (cmd_qtdp): ... here.
7748
7749 2012-03-15 Yao Qi <yao@codesourcery.com>
7750
7751 * tracepoint.c (struct tracepoint_action_ops): New.
7752 (struct tracepoint_action) [!IN_PROCESS_AGENT] <ops>: New field.
7753 (m_tracepoint_action_download): New.
7754 (r_tracepoint_action_download): New.
7755 (x_tracepoint_action_download): New.
7756 (l_tracepoint_action_download): New.
7757 (add_tracepoint_action): Install `action->ops' according type.
7758 (download_tracepoint_1): Move code `download' function pointer
7759 of various tracepoint_action_ops.
7760
7761 2012-03-13 Jan Kratochvil <jan.kratochvil@redhat.com>
7762
7763 * linux-low.c (linux_attach_lwp_1): New variable buffer. Call
7764 linux_ptrace_attach_warnings.
7765
7766 2012-03-13 Jan Kratochvil <jan.kratochvil@redhat.com>
7767
7768 * Makefile.in (linux-ptrace.o): New.
7769 * configure.srv (arm*-*-linux*, bfin-*-*linux*, crisv32-*-linux*)
7770 (cris-*-linux*, i[34567]86-*-linux*, ia64-*-linux*, m32r*-*-linux*)
7771 (m68*-*-linux*, m68*-*-uclinux*, mips*-*-linux*, powerpc*-*-linux*)
7772 (s390*-*-linux*, sh*-*-linux*, sparc*-*-linux*, tic6x-*-uclinux)
7773 (x86_64-*-linux*, xtensa*-*-linux*): Add linux-ptrace.o to SRV_TGTOBJ
7774 of these targets.
7775 * linux-low.c (linux_attach_lwp_1): Remove redundent else clause.
7776
7777 2012-03-08 Yao Qi <yao@codesourcery.com>
7778 Pedro Alves <palves@redhat.com>
7779
7780 Fix PR server/13392.
7781 * linux-x86-low.c (amd64_install_fast_tracepoint_jump_pad): Check
7782 offset of JMP insn.
7783 * tracepoint.c (remove_tracepoint): New.
7784 (cmd_qtdp): Call remove_tracepoint when failed to install.
7785
7786 2012-03-07 Pedro Alves <palves@redhat.com>
7787
7788 * linux-low.c (get_detach_signal): New.
7789 (linux_detach_one_lwp): Get rid of a pending SIGSTOP with SIGCONT.
7790 Pass on pending signals to PTRACE_DETACH. Check the result of the
7791 ptrace call.
7792 * server.c (program_signals, program_signals_p): New.
7793 (handle_general_set): Handle QProgramSignals.
7794 * server.h (program_signals, program_signals_p): Declare.
7795
7796 2012-03-05 Pedro Alves <palves@redhat.com>
7797 Jan Kratochvil <jan.kratochvil@redhat.com>
7798
7799 * linux-low.c (get_dynamic): Don't warn when PT_PHDR isn't found.
7800 New comment why.
7801
7802 2012-03-03 Yao Qi <yao@codesourcery.com>
7803
7804 * tracepoint.c (tracepoint_look_up_symbols): Update call to
7805 agent_look_up_symbols.
7806
7807 2012-03-03 Yao Qi <yao@codesourcery.com>
7808
7809 * Makefile.in (linux-low.o): Keep dependence on agent.h.
7810 (linux-x86-low.o): Likewise.
7811 * server.h: Remove in_process_agent_loaded.
7812 * tracepoint.c (in_process_agent_loaded): Removed. Moved it
7813 common/agent.c.
7814 Update callers.
7815
7816 2012-03-03 Yao Qi <yao@codesourcery.com>
7817
7818 * tracepoint.c (gdb_agent_capability): New global.
7819 (in_process_agent_loaded_ust): Renamed to
7820 `in_process_agent_supports_ust'.
7821 Update callers.
7822 (in_process_agent_supports_ust): Call agent_capability_check.
7823 (clear_installed_tracepoints): Assert that agent supports
7824 agent.
7825
7826 2012-03-03 Yao Qi <yao@codesourcery.com>
7827
7828 * linux-low.c (linux_supports_agent): New.
7829 (linux_target_ops): Initialize field `supports_agent' with
7830 linux_supports_agent.
7831 * target.h (struct target_ops) <supports_agent>: New.
7832 (target_supports_agent): New macro.
7833 * server.c (handle_general_set): Handle packet 'QAgent'.
7834 (handle_query): Send `QAgent+'.
7835 * Makefile.in (server.o): Depends on agent.h.
7836
7837 2012-03-03 Yao Qi <yao@codesourcery.com>
7838
7839 * Makefile.in (OBS): Add agent.o.
7840 Add new rule for agent.o.
7841 Track dependence of tracepoint.c on agent.h.
7842 * tracepoint.c (run_inferior_command_1):
7843 (run_inferior_command): Call agent_run_command.
7844 (gdb_ust_connect_sync_socket): Deleted. Move it to
7845 common/agent.c.
7846 (resume_thread, stop_thread): Likewise.
7847 (gdb_ust_socket_init): Renamed to ...
7848 (gdb_agent_socket_init): ... New.
7849 (gdb_ust_thread): Renamed to ...
7850 (gdb_agent_helper_thread): ... New.
7851 (gdb_ust_init): Move some code to ...
7852 (gdb_agent_init): ... here. New.
7853 [HAVE_UST]: Call gdb_ust_init.
7854 (initialize_tracepoint_ftlib): Call gdb_agent_init.
7855 * configure.ac: Add `sys/un.h' to AC_CHECK_HEADERS.
7856 * config.in, configure: Regenerated.
7857
7858 2012-03-02 Pedro Alves <palves@redhat.com>
7859
7860 * inferiors.c (add_pid_to_list, pull_pid_from_list): Delete.
7861 * linux-low.c (struct simple_pid_list): New.
7862 (stopped_pids): New a struct simple_pid_list pointer.
7863 (add_to_pid_list, pull_pid_from_list): New.
7864 (handle_extended_wait): Don't assume the first signal new children
7865 report is SIGSTOP. Adjust call to pull_pid_from_list.
7866 (linux_wait_for_lwp): Adjust.
7867
7868 2012-03-02 Yao Qi <yao@codesourcery.com>
7869
7870 * tracepoint.c (do_action_at_tracepoint): Write `stop_pc' in
7871 debug log.
7872
7873 2012-03-02 Yao Qi <yao@codesourcery.com>
7874
7875 * tracepoint.c (collect_ust_data_at_tracepoint): Remove parameters
7876 `stop_pc' and `tpoint'. Update caller.
7877
7878 2012-03-01 Maciej W. Rozycki <macro@codesourcery.com>
7879
7880 * linux-low.h (linux_target_ops): Add regset_bitmap member.
7881 * linux-low.c (use_linux_regsets): New macro.
7882 [!HAVE_LINUX_REGSETS] (regsets_fetch_inferior_registers): Likewise.
7883 [!HAVE_LINUX_REGSETS] (regsets_store_inferior_registers): Likewise.
7884 (linux_register_in_regsets): New function.
7885 (usr_fetch_inferior_registers): Skip registers covered by
7886 regsets.
7887 (usr_store_inferior_registers): Likewise.
7888 (usr_fetch_inferior_registers): New macro.
7889 (usr_store_inferior_registers): Likewise.
7890 (linux_fetch_registers): Handle mixed regset/non-regset targets.
7891 (linux_store_registers): Likewise.
7892 * linux-mips-low.c (init_registers_mips_dsp_linux): New
7893 prototype.
7894 (init_registers_mips64_dsp_linux): Likewise.
7895 (init_registers_mips_linux): New macro.
7896 (init_registers_mips_dsp_linux): Likewise.
7897 (mips_dsp_num_regs): Likewise.
7898 (DSP_BASE, DSP_CONTROL): New fallback macros.
7899 (mips_base_regs): New macro.
7900 (mips_regmap): Use it. Fix the size.
7901 (mips_dsp_regmap): New variable.
7902 (mips_dsp_regset_bitmap): Likewise.
7903 (mips_arch_setup): New function.
7904 (mips_cannot_fetch_register): Use the_low_target.regmap rather
7905 than mips_regmap.
7906 (mips_cannot_store_register): Likewise.
7907 (the_low_target): Update .arch_setup, .num_regs and .regmap
7908 initializers. Add .regset_bitmap initializer.
7909 * linux-arm-low.c (the_low_target): Add .regset_bitmap
7910 initializer.
7911 * linux-bfin-low.c (the_low_target): Likewise.
7912 * linux-cris-low.c (the_low_target): Likewise.
7913 * linux-crisv32-low.c (the_low_target): Likewise.
7914 * linux-ia64-low.c (the_low_target): Likewise.
7915 * linux-m32r-low.c (the_low_target): Likewise.
7916 * linux-m68k-low.c (the_low_target): Likewise.
7917 * linux-ppc-low.c (the_low_target): Likewise.
7918 * linux-s390-low.c (the_low_target): Likewise.
7919 * linux-sh-low.c (the_low_target): Likewise.
7920 * linux-sparc-low.c (the_low_target): Likewise.
7921 * linux-tic6x-low.c (the_low_target): Likewise.
7922 * linux-x86-low.c (the_low_target): Likewise.
7923 * linux-xtensa-low.c (the_low_target): Likewise.
7924 * configure.srv <mips*-*-linux*>: Add mips-dsp-linux.o and
7925 mips64-dsp-linux.o to srv_regobj. Add mips-dsp-linux.xml,
7926 mips64-dsp-linux.xml, mips-dsp.xml and mips64-dsp.xml to
7927 srv_xmlfiles.
7928 * Makefile.in (mips-dsp-linux.o, mips-dsp-linux.c): New targets.
7929 (mips64-dsp-linux.o, mips64-dsp-linux.c): Likewise.
7930
7931 2012-02-29 Yao Qi <yao@codesourcery.com>
7932 Pedro Alves <palves@redhat.com>
7933
7934 * linux-low.c: (linux_wait_1): Call unsuspend_all_lwps when
7935 `step_over_finished' is true.
7936
7937 2012-02-27 Pedro Alves <palves@redhat.com>
7938
7939 * linux-low.c (pid_is_stopped): Delete, moved to common/.
7940 (linux_attach_lwp_1): Adjust to use linux_proc_pid_is_stopped.
7941
7942 2012-02-27 Pedro Alves <palves@redhat.com>
7943
7944 PR server/9684
7945 * linux-low.c (pid_is_stopped): New.
7946 (linux_attach_lwp_1): Handle attaching to 'T (stopped)' processes.
7947
7948 2012-02-25 Luis Machado <lgustavo@codesourcery.com>
7949
7950 * mem-break.c (clear_gdb_breakpoint_conditions): Fix de-allocation
7951 of conditions.
7952
7953 2012-02-24 Maciej W. Rozycki <macro@codesourcery.com>
7954
7955 * linux-mips-low.c (mips_regmap): Correct the index of $f9.
7956
7957 2012-02-24 Luis Machado <lgustavo@codesourcery>
7958
7959 * server.c (handle_query): Advertise support for target-side
7960 breakpoint condition evaluation.
7961 (process_point_options): New function.
7962 (process_serial_event): When inserting a breakpoint, check for
7963 a target-side condition that should be evaluated.
7964
7965 * mem-break.c: Include regcache.h and ax.h.
7966 (point_cond_list_t): New data structure.
7967 (breakpoint) <cond_list>: New field.
7968 (find_gdb_breakpoint_at): Make non-static.
7969 (delete_gdb_breakpoint_at): Clear any target-side
7970 conditions.
7971 (clear_gdb_breakpoint_conditions): New function.
7972 (add_condition_to_breakpoint): Likewise.
7973 (add_breakpoint_condition): Likewise.
7974 (gdb_condition_true_at_breakpoint): Likewise.
7975 (gdb_breakpoint_here): Return result directly instead
7976 of going through a local variable.
7977
7978 * mem-break.h (find_gdb_breakpoint_at): New prototype.
7979 (clear_gdb_breakpoint_conditions): Likewise.
7980 (add_breakpoint_condition): Likewise.
7981 (gdb_condition_true_at_breakpoint): Likewise.
7982
7983 * linux-low.c (linux_wait_1): Evaluate target-side breakpoint condition.
7984 (need_step_over_p): Take target-side breakpoint condition into
7985 consideration.
7986
7987 2012-02-24 Luis Machado <lgustavo@codesourcery>
7988
7989 * server.h: Include tracepoint.h.
7990 (agent_mem_read, agent_get_trace_state_variable_value,
7991 agent_set_trace_state_variable_value,
7992 agent_tsv_read, agent_mem_read_string, get_get_tsv_func_addr,
7993 get_set_tsv_func_addr): New prototypes.
7994
7995 * ax.h: New include file.
7996 * ax.c: New source file.
7997
7998 * tracepoint.c: Include ax.h.
7999 (gdb_agent_op, gdb_agent_op_names, gdb_agent_op_sizes,
8000 agent_expr, eval_result_type): Move to ax.h.
8001 (parse_agent_expr): Rename to ...
8002 (gdb_parse_agent_expr): ... this, make it non-static and move
8003 to ax.h.
8004 (unparse_agent_expr) Rename to ...
8005 (gdb_unparse_agent_expr): ... this, make it non-static and move
8006 to ax.h.
8007 (eval_agent_expr): Rename to ...
8008 (eval_tracepoint_agent_expr): ... this.
8009 (agent_mem_read, agent_mem_read_string, agent_tsv_read): Remove
8010 forward declarations.
8011 (add_tracepoint_action): Call gdb_parse_agent_expr (...).
8012 (agent_get_trace_state_variable_value): New function.
8013 (agent_set_trace_state_variable_value): New function.
8014 (cmd_qtdp): Call gdb_parse_agent_expr (...).
8015 (response_tracepoint): Call gdb_unparse_agent_expr (...).
8016 (do_action_at_tracepoint): Call eval_tracepoint_agent_expr (...).
8017 (condition_true_at_tracepoint): Likewise.
8018 (parse_agent_expr): Rename to ...
8019 (gdb_parse_agent_expr): ... this and move to ax.c.
8020 (unparse_agent_expr): Rename to ...
8021 (gdb_unparse_agent_expr): ... this and move to ax.c.
8022 (gdb_agent_op_name): Move to ax.c.
8023 (eval_agent_expr): Rename to ...
8024 (gdb_eval_agent_expr): ... this, use regcache passed as parameter
8025 and move to ax.c.
8026 (eval_tracepoint_agent_expr): New function.
8027 (agent_mem_read, agent_mem_read_string, agent_tsv_read): Make
8028 non-static.
8029 (current_insn_ptr, emit_error, struct bytecode_address): Move to
8030 ax.c.
8031 (emit_prologue, emit_epilogue, emit_add, emit_sub, emit_mul, emit_lsh,
8032 emit_rsh_signed, emit_rsh_unsigned, emit_ext, emit_log_not,
8033 emit_bit_and, emit_bit_or, emit_bit_xor, emit_bit_not, emit_equal,
8034 emit_less_signed, emit_less_unsigned, emit_ref, emit_if_goto,
8035 emit_goto, write_goto_address, emit_const, emit_reg, emit_pop,
8036 emit_stack, emit_zero_ext, emit_swap, emit_stack_adjust,
8037 emit_int_call_1, emit_void_call_2, emit_eq_goto, emit_ne_goto,
8038 emit_lt_goto, emit_ge_goto, emit_gt_goto, emit_le_goto): Move to ax.c.
8039 (get_get_tsv_func_addr, get_set_tsv_func_addr): New functions.
8040 (compile_bytecodes): Remove forward declaration.
8041 (is_goto_target): Move to ax.c.
8042 (compile_bytecodes): Move to ax.c and call
8043 agent_get_trace_state_variable_value (...) and
8044 agent_set_trace_state_variable_value (...).
8045
8046 * Makefile.in: Update ax.c and IPA dependencies.
8047
8048 2012-02-24 Pedro Alves <palves@redhat.com>
8049
8050 * tracepoint.c (cmd_bigqtbuffer): Rename as ...
8051 (cmd_bigqtbuffer_circular): ... this. Only handle
8052 'QTBuffer:circular:'.
8053 (handle_tracepoint_general_set): Adjust.
8054
8055 2012-02-16 Yao Qi <yao@codesourcery.com>
8056
8057 * inferiors.c: Move code to ...
8058 * dll.c: .... here. New.
8059 * server.h: Declare clear_dlls.
8060 * Makefile.in (SFILES): Add dll.c.
8061 (OBS): Add dll.o
8062 (dll.o): New rule.
8063
8064 2012-02-11 Yao Qi <yao@codesourcery.com>
8065
8066 * server.c: (handle_monitor_command): Add a new parameter
8067 `own_buf'.
8068 (handle_query): Update caller.
8069
8070 2012-02-09 Joel Brobecker <brobecker@adacore.com>
8071
8072 * configure.ac: Add readlink to AC_CHECK_FUNCS list.
8073 * configure, config.in: Regenerate.
8074 * hostio.c: Provide an alternate implementation if HAVE_READLINK
8075 is not defined.
8076
8077 2012-02-02 Pedro Alves <palves@redhat.com>
8078
8079 Try SIGKILL first, then PTRACE_KILL.
8080 * linux-low.c (linux_kill_one_lwp): New.
8081 (linux_kill_one_lwp): Rename to ...
8082 (kill_one_lwp_callback): ... this. Use the new
8083 linux_kill_one_lwp.
8084
8085 2012-02-02 Pedro Alves <palves@redhat.com>
8086
8087 * tracepoint.c (cmd_qtminftpilen): Return 0 if there's no current
8088 inferior.
8089
8090 2012-01-27 Pedro Alves <palves@redhat.com>
8091
8092 * linux-low.c (linux_child_pid_to_exec_file): Delete.
8093 (elf_64_file_p): Make static.
8094 (linux_pid_exe_is_elf_64_file): New.
8095 * linux-low.h (linux_child_pid_to_exec_file, elf_64_file_p):
8096 Delete declarations.
8097 (linux_pid_exe_is_elf_64_file): Declare.
8098 * linux-x86-low.c (x86_arch_setup): Use
8099 linux_pid_exe_is_elf_64_file.
8100
8101 2012-01-25 Jan Kratochvil <jan.kratochvil@redhat.com>
8102
8103 * linux-low.c (linux_wait_for_event_1): Rename to ...
8104 (linux_wait_for_event): ... here and merge it with former
8105 linux_wait_for_event - new variable wait_ptid, use it.
8106 (linux_wait_for_event): Remove - merge it to linux_wait_for_event_1.
8107
8108 2012-01-23 Pedro Alves <palves@redhat.com>
8109
8110 * server.c (main): Avoid yet another case of infinite loop while
8111 detaching/killing after a longjmp.
8112
8113 2012-01-20 Jan Kratochvil <jan.kratochvil@redhat.com>
8114
8115 Code cleanup.
8116 * linux-low.c (linux_wait_for_event_1): Use ptid_is_pid.
8117
8118 2012-01-20 Ulrich Weigand <ulrich.weigand@linaro.org>
8119
8120 * hostio.c (handle_readlink): New function.
8121 (handle_vFile): Call it to handle "vFile:readlink" packets.
8122
8123 2012-01-20 Pedro Alves <palves@redhat.com>
8124 Ulrich Weigand <ulrich.weigand@linaro.org>
8125
8126 * server.c (handle_v_requests): Only support vAttach and vRun to
8127 start multiple processes when in extended protocol mode.
8128
8129 2012-01-17 Pedro Alves <palves@redhat.com>
8130
8131 * tracepoint.c (initialize_tracepoint): Use mmap instead of
8132 memalign plus mprotect to allocate the scratch buffer.
8133
8134 2012-01-13 Pedro Alves <palves@redhat.com>
8135
8136 * server.c (attach_inferior): Clear `cont_thread'.
8137
8138 2012-01-13 Pedro Alves <palves@redhat.com>
8139
8140 * server.c (main): Avoid infinite loop while detaching/killing
8141 after a longjmp.
8142
8143 2012-01-09 Doug Evans <dje@google.com>
8144
8145 * server.c (start_inferior): Set last_ptid in --wrapper case.
8146
8147 2012-01-06 Yao Qi <yao@codesourcery.com>
8148
8149 * tracepoint.c [IN_PROCESS_AGENT] (debug_threads): Macro
8150 defined.
8151 [IN_PROCESS_AGENT] (debug_agent): New global variable.
8152
8153 2012-01-04 Yao Qi <yao@codesourcery.com>
8154
8155 * tracepoint.c (cmd_qtdp): Print debug message
8156 for static tracepoint.
8157
8158 2012-01-04 Yao Qi <yao@codesourcery.com>
8159
8160 * tracepoint.c (trace_vdebug): Differentiate debug message
8161 between gdbserver and IPA.
8162
8163 2012-01-03 Yao Qi <yao@codesourcery.com>
8164
8165 * tracepoint.c (tracepoint_was_hit): Don't collect for
8166 static tracepoint.
8167
8168 2012-01-02 Joel Brobecker <brobecker@adacore.com>
8169
8170 * terminal.h: Reformat copyright header.
8171
8172 2012-01-02 Joel Brobecker <brobecker@adacore.com>
8173
8174 * server.c (gdbserver_version): Update copyright year.
8175 * gdbreplay.c (gdbreplay_version): Likewise.
8176
8177 2011-12-18 Jan Kratochvil <jan.kratochvil@redhat.com>
8178
8179 * linux-low.c (linux_create_inferior): Put empty if clause for write.
8180
8181 Revert:
8182 2011-12-18 Hui Zhu <teawater@gmail.com>
8183 * linux-low.c (linux_create_inferior): Save return value to ret.
8184
8185 2011-12-18 Hui Zhu <teawater@gmail.com>
8186
8187 * linux-low.c (linux_create_inferior): Save return value to ret.
8188
8189 2011-12-16 Doug Evans <dje@google.com>
8190
8191 * linux-low.c (linux_create_inferior): If stdio connection,
8192 redirect stdin from /dev/null, stdout to stderr.
8193 * remote-utils.c (remote_is_stdio): New static global.
8194 (remote_connection_is_stdio): New function.
8195 (remote_prepare): Handle stdio connection.
8196 (remote_open): Ditto.
8197 (remote_close): Don't close stdin for stdio connections.
8198 (read_prim,write_prim): New functions. Replace all calls to
8199 read/write to these.
8200 * server.c (main): Watch for "-" argument. Move call to
8201 remote_prepare before start_inferior.
8202 * server.h (STDIO_CONNECTION_NAME): New macro.
8203 (remote_connection_is_stdio): Declare.
8204
8205 * remote-utils.c (prepare_resume_reply): Remove extraneous \n
8206 in debugging output.
8207
8208 2011-12-15 Yao Qi <yao@codesourcery.com>
8209
8210 * tracepoint.c: Include sys/syscall.h.
8211 (gdb_ust_thread): Remove preprocessor conditional.
8212
8213 2011-12-14 Pedro Alves <pedro@codesourcery.com>
8214
8215 * linux-low.c (linux_detach_one_lwp): Call
8216 the_low_target.prepare_to_resume before detaching.
8217
8218 2011-12-14 Yao Qi <yao@codesourcery.com>
8219
8220 * tracepoint.c (gdb_ust_thread): Don't ignore return value
8221 of write.
8222
8223 2011-12-14 Yao Qi <yao@codesourcery.com>
8224
8225 * i386-low.c (i386_low_stopped_data_address): Initialize local
8226 variable `control'.
8227
8228 2011-12-13 Pedro Alves <pedro@codesourcery.com>
8229
8230 PR remote/13492
8231
8232 * i386-low.c (i386_low_stopped_data_address): Avoid fetching
8233 DR_CONTROL unless necessary. Extend comments.
8234 * linux-x86-low.c (x86_linux_prepare_to_resume): Don't write to
8235 DR0-3 if not used. If any watchpoint was set, clear DR_STATUS.
8236
8237 2011-12-13 Yao Qi <yao@codesourcery.com>
8238
8239 * tracepoint.c (trace_buffer_alloc): Replace magic numbers with
8240 macros.
8241 (upload_fast_traceframes, upload_fast_traceframes): Likewise.
8242
8243 2011-12-08 Jan Kratochvil <jan.kratochvil@redhat.com>
8244
8245 * linux-low.c (linux_kill): Skip PTRACE_KILL if LWP does not exist.
8246 Print new debug message for such case.
8247
8248 2011-12-06 Jan Kratochvil <jan.kratochvil@redhat.com>
8249
8250 Fix overlapping memcpy.
8251 * mem-break.c (set_raw_breakpoint_at): New variable buf. Use it for
8252 the read_inferior_memory transfer.
8253 (delete_fast_tracepoint_jump): New variable buf. Use it for the
8254 write_inferior_memory transfer.
8255 (set_fast_tracepoint_jump): New variable buf. Use it for the
8256 read_inferior_memory and write_inferior_memory transfers.
8257 (uninsert_fast_tracepoint_jumps_at, reinsert_fast_tracepoint_jumps_at)
8258 (delete_raw_breakpoint, uninsert_raw_breakpoint): New variable buf.
8259 Use it for the write_inferior_memory transfer.
8260 (check_mem_read, check_mem_write): New gdb_asserts for overlapping
8261 buffers.
8262
8263 2011-12-06 Maciej W. Rozycki <macro@codesourcery.com>
8264
8265 * linux-low.c (fetch_register, store_register): Make code
8266 consistent, fix formatting.
8267
8268 2011-12-06 Maciej W. Rozycki <macro@codesourcery.com>
8269
8270 * linux-low.c (usr_store_inferior_registers): Factor out code
8271 to handle individual registers into...
8272 (store_register): ... this new function.
8273
8274 2011-12-06 Ulrich Weigand <uweigand@de.ibm.com>
8275
8276 * Makefile.in (s390-linux32v1.o, s390-linux32v1.c): New rules.
8277 (s390-linux32v2.o, s390-linux32v2.c): Likewise.
8278 (s390-linux64v1.o, s390-linux64v1.c): Likewise.
8279 (s390-linux64v2.o, s390-linux64v2.c): Likewise.
8280 (s390x-linux64v1.o, s390x-linux64v1.c): Likewise.
8281 (s390x-linux64v2.o, s390x-linux64v2.c): Likewise.
8282 * configure.srv [s390*-*-linux*] (srv_regobj): Add new objects.
8283 (srv_xmlfiles): Add new XML files.
8284
8285 * linux-s390-low.c: Include "elf/common.h", <sys/ptrace.h>,
8286 and <sys/uio.h>.
8287 (PTRACE_GETREGSET, PTRACE_SETREGSET): Define if undefined.
8288 (init_registers_s390_linux32v1): Add prototype.
8289 (init_registers_s390_linux32v2): Likewise.
8290 (init_registers_s390_linux64v1): Likewise.
8291 (init_registers_s390_linux64v2): Likewise.
8292 (init_registers_s390x_linux64v1): Likewise.
8293 (init_registers_s390x_linux64v2): Likewise.
8294 (s390_num_regs): Increment to 52.
8295 (s390_regmap): Add orig_r2 register.
8296 (s390_num_regs_3264): Increment to 68.
8297 (s390_regmap_3264): Add orig_r2 register.
8298 (s390_collect_ptrace_register): Handle orig_r2 register.
8299 (s390_supply_ptrace_register): Likewise.
8300 (s390_fill_last_break): New function.
8301 (s390_store_last_break): Likewise.
8302 (s390_fill_system_call): New function.
8303 (s390_store_system_call): Likewise.
8304 (target_regsets): Handle NT_S390_LAST_BREAK and NT_S390_SYSTEM_CALL
8305 register sets.
8306 (s390_check_regset): New function.
8307 (s390_arch_setup): Check for presence of NT_S390_LAST_BREAK and
8308 NT_S390_SYSTEM_CALL regsets and use appropriate description.
8309 Update target_regsets for available register sets.
8310
8311 2011-12-02 Paul Pluzhnikov <ppluzhnikov@google.com>
8312 Jan Kratochvil <jan.kratochvil@redhat.com>
8313
8314 * linux-low.c (get_phdr_phnum_from_proc_auxv, get_dynamic, get_r_debug)
8315 (read_one_ptr, struct link_map_offsets, linux_qxfer_libraries_svr4):
8316 New.
8317 (struct linux_target_ops): Install linux_qxfer_libraries_svr4.
8318 * linux-low.h (struct process_info_private): New member r_debug.
8319 * server.c (handle_qxfer_libraries): Call
8320 the_target->qxfer_libraries_svr4.
8321 (handle_qxfer_libraries_svr4): New function.
8322 (qxfer_packets): New entry "libraries-svr4".
8323 (handle_query): Check QXFER_LIBRARIES_SVR4 and report libraries-svr4.
8324 * target.h (struct target_ops): New member qxfer_libraries_svr4.
8325 * remote.c (remote_xfer_partial): Call add_packet_config_cmd for
8326 PACKET_qXfer_libraries_svr4.
8327
8328 2011-11-30 Ulrich Weigand <uweigand@de.ibm.com>
8329
8330 * linux-s390-low.c (s390_collect_ptrace_register): Fully convert
8331 PSW address/mask between 8-byte and 16-byte formats.
8332 (s390_supply_ptrace_register): Likewise.
8333 (s390_get_pc, s390_set_pc): 4-byte PSW address always includes
8334 basic addressing mode bit.
8335
8336 2011-11-24 Stan Shebs <stan@codesourcery.com>
8337
8338 * tracepoint.c (cmd_qtstatus): Use plongest instead of %llx.
8339
8340 2011-11-17 Stan Shebs <stan@codesourcery.com>
8341
8342 * tracepoint.c (struct tracepoint): New field traceframe_usage.
8343 (tracing_start_time): New global.
8344 (tracing_stop_time): New global.
8345 (tracing_user_name): New global.
8346 (tracing_notes): New global.
8347 (tracing_stop_note): New global.
8348 (cmd_qtstart): Set traceframe_usage, start_time.
8349 (stop_tracing): Set stop_time.
8350 (cmd_qtstatus): Report additional status.
8351 (cmd_qtp): New function.
8352 (handle_tracepoint_query): Call it.
8353 (cmd_qtnotes): New function.
8354 (handle_tracepoint_general_set): Call it.
8355 (get_timestamp): Rename from tsv_get_timestamp.
8356
8357 2011-11-14 Stan Shebs <stan@codesourcery.com>
8358 Kwok Cheung Yeung <kcy@codesourcery.com>
8359
8360 * linux-x86-low.c (small_jump_insn): New.
8361 (i386_install_fast_tracepoint_jump_pad): Add arguments for
8362 trampoline and error message, build a trampoline and issue a small
8363 jump instruction to it.
8364 (x86_install_fast_tracepoint_jump_pad): Add arguments for
8365 trampoline and error message.
8366 (x86_get_min_fast_tracepoint_insn_len): New.
8367 (the_low_target): Add call to x86_get_min_fast_tracepoint_insn_len.
8368 * linux-low.h (struct linux_target_ops): Add arguments to
8369 install_fast_tracepoint_jump_pad operation, add new operation.
8370 * linux-low.c (linux_install_fast_tracepoint_jump_pad): Add
8371 arguments.
8372 (linux_get_min_fast_tracepoint_insn_len): New function.
8373 (linux_target_op): Add new operation.
8374 * tracepoint.c (gdb_trampoline_buffer): New IPA variable.
8375 (gdb_trampoline_buffer_end): Ditto.
8376 (gdb_trampoline_buffer_error): Ditto.
8377 (struct ipa_sym_addresses): Add fields for new IPA variables.
8378 (symbol_list): Add entries for new IPA variables.
8379 (struct tracepoint): Add fields to hold the address range of the
8380 trampoline used by the tracepoint.
8381 (trampoline_buffer_head): New static variable.
8382 (trampoline_buffer_tail): Ditto.
8383 (claim_trampoline_space): New function.
8384 (have_fast_tracepoint_trampoline_buffer): New function.
8385 (clone_fast_tracepoint): Fill in trampoline fields of tracepoint
8386 structure.
8387 (install_fast_tracepoint): Ditto, also add error buffer argument.
8388 (cmd_qtminftpilen): New function.
8389 (handle_tracepoint_query): Add response to qTMinFTPILen packet.
8390 (fast_tracepoint_from_trampoline_address): New function.
8391 (fast_tracepoint_collecting): Handle trampoline as part of jump
8392 pad space.
8393 (set_trampoline_buffer_space): New function.
8394 (initialize_tracepoint): Initialize new IPA variables.
8395 * target.h (struct target_ops): Add arguments to
8396 install_fast_tracepoint_jump_pad operation, add new
8397 get_min_fast_tracepoint_insn_len operation.
8398 (target_get_min_fast_tracepoint_insn_len): New.
8399 (install_fast_tracepoint_jump_pad): Add arguments.
8400 * server.h (IPA_BUFSIZ): Define.
8401 * linux-i386-ipa.c: Include extra header files.
8402 (initialize_fast_tracepoint_trampoline_buffer): New function.
8403 (initialize_low_tracepoint): Call it.
8404 * server.h (set_trampoline_buffer_space): Declare.
8405 (claim_trampoline_space): Ditto.
8406 (have_fast_tracepoint_trampoline_buffer): Ditto.
8407
8408 2011-11-14 Yao Qi <yao@codesourcery.com>
8409
8410 * server.c (handle_query): Handle InstallInTrace for qSupported.
8411 * tracepoint.c (add_tracepoint): Sort list.
8412 (install_tracepoint, download_tracepoint): New.
8413 (cmd_qtdp): Call them to install and download tracepoints.
8414 (sort_tracepoints): Removed.
8415 (cmd_qtstart): Update.
8416
8417 2011-11-14 Yao Qi <yao@codesourcery.com>
8418
8419 * mem-break.c (inc_ref_fast_tracepoint_jump): New.
8420 * mem-break.h: Declare.
8421 * tracepoint.c (cmd_qtstart): Move some code to ...
8422 (clone_fast_tracepoint, install_fast_tracepoint): ... here.
8423 New.
8424 (download_tracepoints): Move some code to ...
8425 (download_tracepoint_1): ... here. New.
8426
8427 2011-11-08 Yao Qi <yao@codesourcery.com>
8428
8429 * remote-utils.c (relocate_instruction): A comment fix.
8430
8431 2011-11-07 Joel Brobecker <brobecker@adacore.com>
8432
8433 * win32-i386-low.c (dr_status_mirror, dr_control_mirror): Delete.
8434 (i386_dr_low_get_control, i386_dr_low_get_status): Use
8435 dr_status_mirror and dr_control_mirror from debug_reg_state.
8436 (i386_dr_low_get_status): Use debug_reg_state.dr_status_mirror
8437 (i386_initial_stuff): Remove use of deleted globals.
8438 (i386_get_thread_context, i386_set_thread_context,
8439 i386_thread_added): Use dr_status_mirror and dr_control_mirror
8440 from debug_reg_state.
8441
8442 2011-11-05 Yao Qi <yao@codesourcery.com>
8443
8444 * tracepoint.c (gdb_collect): Loop over tracepoints of same
8445 address as TPOINT's.
8446
8447 2011-11-02 Stan Shebs <stan@codesourcery.com>
8448
8449 * tracepoint.c (agent_mem_read_string): New function.
8450 (eval_agent_expr): Call it for tracenz.
8451 * server.c (handle_query): Report support for tracenz.
8452
8453 2011-11-02 Yao Qi <yao@codesourcery.com>
8454
8455 * tracepoint.c (cmd_qtstart): Remove unused local variables.
8456
8457 2011-11-02 Yao Qi <yao@codesourcery.com>
8458
8459 * target.h: Fix a typo in comment.
8460
8461 2011-10-31 Pedro Alves <pedro@codesourcery.com>
8462
8463 * mem-break.c (check_mem_write): Add `myaddr' parameter. Don't
8464 clobber the breakpoints' shadows with fast tracepoint jumps.
8465 * mem-break.h (check_mem_write): Add `myaddr' parameter.
8466 * target.c (write_inferior_memory): Also pass MYADDR down to
8467 check_mem_write.
8468
8469 2011-10-07 Ulrich Weigand <ulrich.weigand@linaro.org>
8470
8471 * configure.ac: Check support for personality routine.
8472 * configure: Regenerate.
8473 * config.in: Likewise.
8474 * linux-low.c: Include <sys/personality.h>.
8475 Define ADDR_NO_RANDOMIZE if necessary.
8476 (linux_create_inferior): Disable address space randomization when
8477 forking inferior, if requested.
8478 (linux_supports_disable_randomization): New function.
8479 (linux_target_ops): Install it.
8480 * server.h (disable_randomization): Declare.
8481 * server.c (disable_randomization): New global variable.
8482 (handle_general_set): Handle QDisableRandomization.
8483 (handle_query): Likewise for qSupported.
8484 (main): Support --disable-randomization and --no-disable-randomization
8485 command line arguments.
8486 * target.h (struct target_ops): Add supports_disable_randomization.
8487 (target_supports_disable_randomization): New macro.
8488
8489 2011-09-29 Mike Frysinger <vapier@gentoo.org>
8490
8491 * linux-low.c (target_loadseg): Add defined PTRACE_GETFDPIC to the
8492 ifdef check.
8493 [PT_GETDSBT] (target_loadmap): Wrap in a defined PT_GETDSBT check.
8494 [!PT_GETDSBT] (target_loadmap): New definition.
8495 (LINUX_LOADMAP, LINUX_LOADMAP_EXEC, LINUX_LOADMAP_INTERP): Define.
8496 (linux_read_loadmap): Change PTRACE_GETDSBT_EXEC to
8497 LINUX_LOADMAP_EXEC, PTRACE_GETDSBT_INTERP to LINUX_LOADMAP_INTERP,
8498 and PT_GETDSBT to LINUX_LOADMAP.
8499 [!PT_GETDSBT] (linux_read_loadmap): Define to NULL.
8500 (linux_target_ops): Delete unnecessary ifdef PT_GETDSBT check.
8501
8502 2011-09-21 Ulrich Weigand <ulrich.weigand@linaro.org>
8503
8504 * linux-arm-low.c (struct arm_linux_hwbp_cap): Remove.
8505 (arm_linux_hwbp_cap): New static variable.
8506 (arm_linux_get_hwbp_cap): Replace by ...
8507 (arm_linux_init_hwbp_cap): ... this new function.
8508 (arm_linux_get_hw_breakpoint_count): Use arm_linux_hwbp_cap.
8509 (arm_linux_get_hw_watchpoint_count): Likewise.
8510 (arm_linux_get_hw_watchpoint_max_length): Likewise.
8511 (arm_arch_setup): Call arm_linux_init_hwbp_cap.
8512 (arm_prepare_to_resume): Use perror_with_name instead of error.
8513
8514 2011-09-21 Ulrich Weigand <ulrich.weigand@linaro.org>
8515
8516 * linux-arm-low.c: Include <signal.h>.
8517 (PTRACE_GETHBPREGS, PTRACE_SETHBPREGS): Define if necessary.
8518 (struct arm_linux_hwbp_cap): New data type.
8519 (arm_hwbp_type, arm_hwbp_control_t): New typedefs.
8520 (struct arm_linux_hw_breakpoint): New data type.
8521 (MAX_BPTS, MAX_WPTS): Define.
8522 (struct arch_process_info, struct arch_lwp_info): New data types.
8523 (arm_linux_get_hwbp_cap): New function.
8524 (arm_linux_get_hw_breakpoint_count): Likewise.
8525 (arm_linux_get_hw_watchpoint_count): Likewise.
8526 (arm_linux_get_hw_watchpoint_max_length): Likewise.
8527 (arm_hwbp_control_initialize): Likewise.
8528 (arm_hwbp_control_is_enabled): Likewise.
8529 (arm_hwbp_control_is_initialized): Likewise.
8530 (arm_hwbp_control_disable): Likewise.
8531 (arm_linux_hw_breakpoint_equal): Likewise.
8532 (arm_linux_hw_point_initialize): Likewise.
8533 (struct update_registers_data): New data structure.
8534 (update_registers_callback: New function.
8535 (arm_insert_point): Likewise.
8536 (arm_remove_point): Likewise.
8537 (arm_stopped_by_watchpoint): Likewise.
8538 (arm_stopped_data_address): Likewise.
8539 (arm_new_process): Likewise.
8540 (arm_new_thread): Likewise.
8541 (arm_prepare_to_resume): Likewise.
8542 (the_low_target): Register arm_insert_point, arm_remove_point,
8543 arm_stopped_by_watchpoint, arm_stopped_data_address, arm_new_process,
8544 arm_new_thread, and arm_prepare_to_resume.
8545
8546 2011-09-15 Stan Shebs <stan@codesourcery.com>
8547
8548 * server.h (struct emit_ops): Add compare-goto fields.
8549 * tracepoint.c (gdb_agent_op_sizes): New table.
8550 (emit_eq_goto): New function.
8551 (emit_ne_goto): New function.
8552 (emit_lt_goto): New function.
8553 (emit_le_goto): New function.
8554 (emit_gt_goto): New function.
8555 (emit_ge_goto): New function.
8556 (is_goto_target): New function.
8557 (compile_bytecodes): Recognize special cases of compare-goto
8558 combinations and call specialized emitters for them.
8559 * linux-x86-low.c (amd64_emit_eq_goto): New function.
8560 (amd64_emit_ne_goto): New function.
8561 (amd64_emit_lt_goto): New function.
8562 (amd64_emit_le_goto): New function.
8563 (amd64_emit_gt_goto): New function.
8564 (amd64_emit_ge_goto): New function.
8565 (amd64_emit_ops): Add the new functions.
8566 (i386_emit_eq_goto): New function.
8567 (i386_emit_ne_goto): New function.
8568 (i386_emit_lt_goto): New function.
8569 (i386_emit_le_goto): New function.
8570 (i386_emit_gt_goto): New function.
8571 (i386_emit_ge_goto): New function.
8572 (i386_emit_ops): Add the new functions.
8573
8574 2011-09-08 Stan Shebs <stan@codesourcery.com>
8575
8576 * linux-x86-low.c (i386_emit_prologue): Save %ebx.
8577 (i386_emit_epilogue): Restore %ebx.
8578
8579 2011-08-31 Jie Zhang <jzhang918@gmail.com>
8580
8581 * server.c (step_thread): Remove definition.
8582 (process_serial_event): Don't handle Hs.
8583 * server.h (step_thread): Remove declaration.
8584 * target.c (set_desired_inferior): Remove use of step_thread.
8585
8586 2011-08-24 Luis Machado <lgustavo@codesourcery.com>
8587
8588 * linux-low.c: Include linux-procfs.h.
8589 (linux_attach_lwp_1): Update comments.
8590 (linux_attach): Scan for existing threads when attaching to a
8591 process that is the tgid.
8592 * Makefile.in: Update dependencies.
8593
8594 2011-08-24 Luis Machado <lgustavo@codesourcery.com>
8595
8596 * configure.srv: Add linux-procfs.o dependencies.
8597
8598 2011-08-14 Yao Qi <yao@codesourcery.com>
8599
8600 * target.h (struct target_ops): Fix indent.
8601 * win32-low.c (win32_target_ops): Fix comment.
8602
8603 2011-08-14 Andrew Jenner <andrew@codesourcery.com>
8604 Yao Qi <yao@codesourcery.com>
8605
8606 * Makefile.in (clean): Remove tic6x-*.c files.
8607 (linux-tic6x-low.o, tic6x-c62x-linux.o, tic6x-c64x-linux.o): New rules.
8608 (tic6x-c64xp-linux.o, tic6x-c62x-linux.c, tic6x-c64x-linux.c): Likewise.
8609 (tic6x-c64xp-linux.c): Likewise.
8610 * configure.srv: Add support for tic6x-*-uclinux.
8611 * linux-tic6x-low.c: New.
8612 * linux-low.c (PT_TEXT_ADDR, PT_DATA_ADDR, PT_TEXT_END_ADDR): Define.
8613
8614 2011-08-14 Andrew Stubbs <ams@codesourcery.com>
8615 Yao Qi <yao@codesourcery.com>
8616
8617 * target.h (struct target_ops): Add read_loadmap.
8618 * linux-low.c (struct target_loadseg): New type.
8619 (struct target_loadmap): New type.
8620 (linux_read_loadmap): New function.
8621 (linux_target_ops): Add linux_read_loadmap.
8622 * server.c (handle_query): Support qXfer:fdpic:read packet.
8623 * win32-low.c (win32_target_ops): Initialize field `read_loadmap'
8624 to NULL.
8625
8626 2011-08-05 Eli Zaretskii <eliz@gnu.org>
8627
8628 * win32-low.c: Include <stdint.h>.
8629
8630 2011-07-22 Pedro Alves <pedro@codesourcery.com>
8631
8632 * i386-low.c (i386_insert_aligned_watchpoint): Don't pass the info
8633 to the inferior here.
8634 (i386_remove_aligned_watchpoint): Ditto.
8635 (i386_handle_nonaligned_watchpoint): Return immediate on fail to
8636 fit part of the watchpoint in the debug registers.
8637 (i386_update_inferior_debug_regs): New.
8638 (i386_low_insert_watchpoint): Work on a local mirror of the debug
8639 registers, and only update the inferior on success.
8640 (i386_low_remove_watchpoint): Ditto.
8641
8642 2011-07-22 Kwok Cheung Yeung <kcy@codesourcery.com>
8643
8644 * linux-low.c (compare_ints, unique, list_threads, show_process,
8645 linux_core_of_thread): Delete.
8646 (linux_target_ops): Change linux_core_of_thread to
8647 linux_common_core_of_thread.
8648 (linux_qxfer_osdata): Defer to linux_common_xfer_osdata.
8649 * utils.c (malloc_failure): Change type of argument.
8650 (xmalloc, xrealloc, xcalloc, xsnprintf): Delete.
8651 * Makefile.in (SFILES): Add common/common-utils.c, common/xml-utils.c,
8652 common/linux-osdata.c, common/ptid.c and common/buffer.c.
8653 (OBS): Add xml-utils.o, common-utils.o, ptid.o and buffer.o.
8654 (IPA_OBJS): Add common-utils-ipa.o.
8655 (ptid_h, linux_osdata_h): New macros.
8656 (server_h): Add common/common-utils.h, common/xml-utils.h,
8657 common/buffer.h, common/gdb_assert.h, common/gdb_locale.h and
8658 common/ptid.h.
8659 (common-utils-ipa.o, common-utils.o, xml-utils.o, linux-osdata.o,
8660 ptid.o, buffer.o): New rules.
8661 (linux-low.o): Add common/linux-osdata.h as a dependency.
8662 * configure.srv (srv_tgtobj): Add linux-osdata.o to Linux targets.
8663 * configure.ac: Add AC_HEADER_DIRENT check.
8664 * config.in: Regenerate.
8665 * configure: Regenerate.
8666 * remote-utils.c (xml_escape_text): Delete.
8667 (buffer_grow, buffer_free, buffer_init, buffer_finish,
8668 buffer_xml_printf): Move to common/buffer.c.
8669 * server.c (main): Remove call to initialize_inferiors.
8670 * server.h (struct ptid, ptid_t, minus_one_ptid, null_ptid,
8671 ptid_build, pid_to_ptid, ptid_get_pid, ptid_get_lwp, ptid_get_tid,
8672 ptid_equal, ptid_is_pid, initialize_inferiors, xml_escape_text,
8673 internal_error, gdb_assert, gdb_assert_fail): Delete.
8674 (struct buffer, buffer_grow, buffer_free, buffer_init, buffer_finish,
8675 buffer_xml_printf, buffer_grow_str, buffer_grow_str0): Move to
8676 common/buffer.h.
8677 * inferiors.c (null_ptid, minus_one_ptid, ptid_build, pid_to_ptid,
8678 ptid_get_pid, ptid_get_lwp, ptid_get_tid, ptid_equal, ptid_is_pid,
8679 initialize_inferiors): Delete.
8680
8681 2011-07-20 Pedro Alves <pedro@codesourcery.com>
8682
8683 * tracepoint.c (tracepoint_look_up_symbols): Return upon the first
8684 symbol error.
8685
8686 2011-05-31 Pedro Alves <pedro@codesourcery.com>
8687
8688 * linux-x86-low.c (i386_dr_low_get_addr): Fix off by one in
8689 assertion.
8690 * win32-i386-low.c (i386_dr_low_get_addr): Ditto.
8691
8692 2011-05-26 Yao Qi <yao@codesourcery.com>
8693
8694 * Makefile.in (thread-db.o): Track dependence to
8695 common/gdb_thread_db.h.
8696 * thread-db.c: include gdb_thread_db.h from right place.
8697
8698 2011-05-16 Adrian Cornish <gnu@bluedreamer.com>
8699
8700 * linux-i386-ipa.c (supply_static_tracepoint_registers): Pass
8701 __FILE__ and __LINE__ to internal_error.
8702
8703 2011-05-13 Doug Evans <dje@google.com>
8704
8705 * thread-db.c (try_thread_db_load_from_sdir): New function.
8706 (try_thread_db_load_from_dir): New function.
8707 (thread_db_load_search): Handle $sdir, ignore $pdir.
8708 Remove trying of system directories if search of
8709 libthread-db-search-path fails, that is now done via $sdir.
8710
8711 2011-05-12 Kwok Cheung Yeung <kcy@codesourcery.com>
8712
8713 * server.c (handle_query): Add EnableDisableTracepoints to the list
8714 of supported features.
8715 * tracepoint.c (clear_installed_tracepoints): Uninstall disabled
8716 tracepoints.
8717 (cmd_qtenable_disable): New.
8718 (cmd_qtstart): Install tracepoints even if disabled.
8719 (handle_tracepoint_general_set): Add call to cmd_qtenable_disable on
8720 receiving a QTEnable or QTDisable packet.
8721 (gdb_collect): Skip data collection if fast tracepoint is disabled.
8722 (ust_marker_to_static_tracepoint): Do not ignore disabled static
8723 tracepoints.
8724 (gdb_probe): Skip data collection if static tracepoint is disabled.
8725
8726 2011-05-10 Doug Evans <dje@google.com>
8727
8728 * thread-db.c (thread_db_handle_monitor_command): Handle elided path.
8729
8730 2011-05-04 Doug Evans <dje@google.com>
8731
8732 * linux-low.c (linux_join): Skip process lookup.
8733 * spu-low.c (spu_join): Ditto.
8734 * server.c (join_inferiors_callback): Delete.
8735 (process_serial_event): For 'D' packet (detach) call join_inferior
8736 directly.
8737
8738 2011-05-04 Joseph Myers <joseph@codesourcery.com>
8739
8740 * README: Don't mention xscale*-*-linux*.
8741 * configure.srv (xscale*-*-linux*): Don't handle target.
8742
8743 2011-04-27 Nathan Froyd <froydnj@codesourcery.com>
8744
8745 * linux-x86-low.c (amd64_emit_const): Call memcpy instead of
8746 casting pointers.
8747 (amd64_emit_reg, amd64_emit_int_call_1, amd64_emit_void_call_2):
8748 (i386_emit_const, i386_emit_reg, i386_emit_int_call_1):
8749 (i386_emit_void_call_2): Likewise.
8750
8751 2011-04-26 Yao Qi <yao@codesourcery.com>
8752
8753 * linux-low.c: Move common macros to linux-ptrace.h.
8754 Include linux-ptrace.h.
8755 * Makefile.in (linux_ptrace_h): New.
8756 (linux-low.o): Depends on linux-ptrace.h.
8757
8758 2011-04-24 Jan Kratochvil <jan.kratochvil@redhat.com>
8759
8760 * remote-utils.c (handle_accept_event): Close LISTEN_DESC only if
8761 RUN_ONCE. Comment for the LISTEN_DESC delete_file_handler call.
8762 (remote_prepare): New function with most of the TCP code from ...
8763 (remote_open): ... here. Detect PORT here unconditionally. Move also
8764 setting transport_is_reliable.
8765 * server.c (run_once): New variable.
8766 (gdbserver_usage): Document it.
8767 (main): Set run_once for `--once'. Call remote_prepare. Exit after
8768 the first run if RUN_ONCE.
8769 * server.h (run_once, remote_prepare): New declarations.
8770
8771 2011-04-19 Tom Tromey <tromey@redhat.com>
8772
8773 * win32-low.c (handle_load_dll): Remove duplicate "the".
8774
8775 2011-04-07 Pierre Muller <muller@ics.u-strasbg.fr>
8776
8777 Remove support for old Cygwin 1.5 versions.
8778 * win32-low.c (win32_create_inferior): Use new cygwin_path_list
8779 function to avoid warning.
8780 (win32_add_one_solib): Use cygwin_conv_path function to avoid
8781 warning.
8782
8783 2011-03-18 Pierre Muller <muller@ics.u-strasbg.fr>
8784
8785 * gdbserver/server.h (Macro _): Define it if not available.
8786
8787 2011-03-14 Michael Snyder <msnyder@vmware.com>
8788
8789 * hostio.c (handle_close): Remove unnecessary null test.
8790
8791 2011-03-10 Joel Brobecker <brobecker@adacore.com>
8792
8793 * Makefile.in (maintainer-clean realclean distclean): Remove
8794 "make ... subdir_do" command.
8795
8796 2011-03-10 Michael Snyder <msnyder@vmware.com>
8797
8798 * tracepoint.c (tracepoint_finish_step): Fix loop variable.
8799
8800 * server.c (handle_v_run): Free alloced buffer on early return.
8801
8802 2011-03-09 Yao Qi <yao@codesourcery.com>
8803
8804 Revert:
8805 2011-03-04 Yao Qi <yao@codesourcery.com>
8806
8807 * Makefile.in: Remove GNU make feature --directory.
8808
8809 2011-03-05 Yao Qi <yao@codesourcery.com>
8810
8811 * Makefile.in (CLEANDIRS, REQUIRED_SUBDIRS): New variable.
8812 (subdir_do): New make target. Copied from gdb/Makefile.
8813 (maintainer-clean, realclean, distclean, clean): Call corresponding
8814 make targets in common/Makefile.
8815
8816 2011-02-11 Yao Qi <yao@codesourcery.com>
8817
8818 * configure.ac: Call AC_PROG_RANLIB.
8819 * Makefile.in: Remove signals.o from OBS. Link libcommon.a.
8820 * configure: Regenerate.
8821
8822 2011-03-07 Jan Kratochvil <jan.kratochvil@redhat.com>
8823
8824 * remote-utils.c (putpkt_binary_1): Calculate BUF2 size dynamically.
8825
8826 2011-03-06 Yao Qi <yao@codesourcery.com>
8827
8828 * Makefile.in (REQUIRED_SUBDIRS): Remove $(LIBCOMMON_DIR).
8829
8830 2011-03-05 Yao Qi <yao@codesourcery.com>
8831
8832 * Makefile.in (CLEANDIRS, REQUIRED_SUBDIRS): New variable.
8833 (subdir_do): New make target. Copied from gdb/Makefile.
8834 (maintainer-clean, realclean, distclean, clean): Call corresponding
8835 make targets in common/Makefile.
8836
8837 2011-03-04 Yao Qi <yao@codesourcery.com>
8838
8839 * Makefile.in: Remove GNU make feature --directory.
8840
8841 2011-03-04 Michael Snyder <msnyder@vmware.com>
8842
8843 * server.c (queue_stop_reply): Call xmalloc not malloc.
8844
8845 2011-03-02 Michael Snyder <msnyder@vmware.com>
8846
8847 * linux-arm-low.c (arm_arch_setup): Replace malloc with xmalloc.
8848
8849 2011-02-28 Michael Snyder <msnyder@vmware.com>
8850
8851 * tracepoint.c (cmd_qtv): Discard unused value 'packet'.
8852 (cmd_qtframe): Ditto.
8853 (cmd_qtbuffer): Ditto.
8854 (cmd_bigqtbuffer): Ditto.
8855
8856 * utils.c (decimal2str): Initialize 'width' to nine, then
8857 don't mess with it.
8858
8859 2011-02-28 Ulrich Weigand <uweigand@de.ibm.com>
8860
8861 * hostio.c (require_data): Free *data, not data.
8862
8863 2011-02-28 Jan Kratochvil <jan.kratochvil@redhat.com>
8864
8865 * hostio.c (require_data): Use free, not xfree.
8866
8867 2011-02-27 Michael Snyder <msnyder@vmware.com>
8868
8869 * server.c (handle_query): Discard unused value.
8870
8871 * hostio.c (require_data): Free malloc memory before returning
8872 error.
8873
8874 2011-02-26 Michael Snyder <msnyder@vmware.com>
8875
8876 * linux-low.c (list_threads): Call closedir for dirent.
8877
8878 2011-02-27 Michael Snyder <msnyder@vmware.com>
8879
8880 * i386-low.c (i386-length_and_rw_bits): Comment the fact that
8881 a case statement falls through.
8882
8883 * linux-low.c (linux_xfer_siginfo): Fix fencepost error.
8884
8885 * linux-amd64-ipa.c (gdb_agent_get_raw_reg): Fix fencepost error
8886 in comparison.
8887
8888 2011-02-26 Michael Snyder <msnyder@vmware.com>
8889
8890 * utils.c (decimal2str): Eliminate dead code and dead param.
8891 (pulongest): Drop dead param from call to decimal2str.
8892 (plongest): Ditto.
8893
8894 2011-02-24 Joel Brobecker <brobecker@adacore.com>
8895
8896 Revert the following patch (not approved yet):
8897 2011-02-21 Hui Zhu <teawater@gmail.com>
8898 * tracepoint.c (tp_printf): New function.
8899 (eval_agent_expr): Handle gdb_agent_op_printf.
8900
8901 2011-02-21 Hui Zhu <teawater@gmail.com>
8902
8903 * tracepoint.c (tp_printf): New function.
8904 (eval_agent_expr): Handle gdb_agent_op_printf.
8905
8906 2011-02-18 Tom Tromey <tromey@redhat.com>
8907
8908 * Makefile.in (tracepoint-ipa.o): Depend on ax.def.
8909 (tracepoint.o): Likewise.
8910 * tracepoint.c (enum gdb_agent_op): Use ax.def.
8911 (gdb_agent_op_names): Likewise.
8912
8913 2011-02-18 Tom Tromey <tromey@redhat.com>
8914
8915 * tracepoint.c (enum gdb_agent_op) <gdb_agent_op_pick,
8916 gdb_agent_op_rot>: New constants.
8917 (gdb_agent_op_names): Add pick and roll.
8918 (eval_agent_expr) <gdb_agent_op_pick, gdb_agent_op_rot>: New
8919 cases.
8920
8921 2011-02-15 Jan Kratochvil <jan.kratochvil@redhat.com>
8922
8923 * aclocal.m4: Regenerated with aclocal-1.11.1.
8924
8925 2011-02-14 Pedro Alves <pedro@codesourcery.com>
8926
8927 * server.c (handle_qxfer_traceframe_info): New.
8928 (qxfer_packets): Register "traceframe-info".
8929 (handle_query): Report support for qXfer:traceframe-info:read+.
8930 * tracepoint.c (match_blocktype): New.
8931 (traceframe_find_block_type): Rename to ...
8932 (traceframe_walk_blocks): ... this. Add callback filter argument,
8933 and use it.
8934 (traceframe_find_block_type): New, reimplemented on top of
8935 traceframe_walk_blocks.
8936 (build_traceframe_info_xml): New.
8937 (traceframe_read_info): New.
8938 * server.h (traceframe_read_info): Declare.
8939
8940 2011-02-11 Yao Qi <yao@codesourcery.com>
8941
8942 * configure.ac: Call AC_PROG_RANLIB.
8943 * Makefile.in: Remove signals.o from OBS. Link libcommon.a.
8944 * configure: Regenerate.
8945
8946 2011-02-07 Pedro Alves <pedro@codesourcery.com>
8947
8948 * server.c (gdb_read_memory): Change return semantics to allow
8949 partial transfers.
8950 (handle_search_memory_1): Adjust.
8951 (process_serial_event) <'m' packet>: Handle partial transfers.
8952 * tracepoint.c (traceframe_read_mem): Handle partial transfers.
8953
8954 2011-01-28 Pedro Alves <pedro@codesourcery.com>
8955
8956 * regcache.c (init_register_cache): Initialize
8957 regcache->register_status.
8958 (free_register_cache): Release regcache->register_status.
8959 (regcache_cpy): Copy register_status.
8960 (registers_to_string): Print 'x's for unavailable registers.
8961 (supply_register): Mark the register's status valid or
8962 unavailable, depending on whether a buffer was passed in or not.
8963 (supply_register_zeroed): New.
8964 (supply_regblock): Mark the registers' status valid or
8965 unavailable, depending on whether a buffer was passed in or not.
8966 * regcache.h (REG_UNAVAILABLE, REG_VALID): New defines.
8967 (struct regcache): New `register_status' field.
8968 (supply_register_zeroed): Declare.
8969 * i387-fp.c (i387_xsave_to_cache): Zero out registers using
8970 supply_register_zeroed, rather than passing a NULL buffer to
8971 supply_register.
8972 * tracepoint.c (fetch_traceframe_registers): Update comment.
8973
8974 2011-01-28 Pedro Alves <pedro@codesourcery.com>
8975
8976 * i387-fp.c (i387_xsave_to_cache): Make passing NULL as register
8977 buffer explicit.
8978
8979 2011-01-25 Pedro Alves <pedro@codesourcery.com>
8980
8981 * server.h (decode_xfer_write): Change prototype.
8982 * remote-utils.c (decode_xfer_write): Remove `annex' parameter,
8983 and don't extract the annex here.
8984 * server.c (decode_xfer_read): Remove `annex' parameter,
8985 and don't extract the annex here.
8986 (decode_xfer): New.
8987 (struct qxfer): New.
8988 (handle_qxfer_auxv, handle_qxfer_features, handle_qxfer_libraries)
8989 (handle_qxfer_osdata, handle_qxfer_siginfo, handle_qxfer_spu)
8990 (handle_qxfer_statictrace): New functions, abstracted out from
8991 handle_query, and made to use the struct qxfer interface.
8992 (handle_threads_qxfer_proper): Rename to ...
8993 (handle_qxfer_threads_proper): ... this.
8994 (handle_threads_qxfer): Rename to ...
8995 (handle_qxfer_threads): ... this. Adjust.
8996 (qxfer_packets): New array.
8997 (handle_qxfer): New function.
8998 (handle_query): Use handle_qxfer.
8999
9000 2011-01-05 Michael Snyder <msnyder@msnyder-server.eng.vmware.com>
9001
9002 * gdbreplay.c: Shorten lines of >= 80 columns.
9003 * linux-low.c: Ditto.
9004 * linux-ppc-low.c: Ditto.
9005 * linux-s390-low.c: Ditto.
9006 * linux-sparc-low.c: Ditto.
9007 * linux-x86-low.c: Ditto.
9008 * linux-xtensa-low.c: Ditto.
9009 * mem-break.c: Ditto.
9010 * nto-low.c: Ditto.
9011 * regcache.h: Ditto.
9012 * remote-utils.c: Ditto.
9013 * server.c: Ditto.
9014 * server.h: Ditto.
9015 * thread-db.c: Ditto.
9016 * tracepoint.c: Ditto.
9017 * utils.c: Ditto.
9018 * win32-low.h: Ditto.
9019
9020 2011-01-05 Joel Brobecker <brobecker@adacore.com>
9021
9022 * gdbserver/configure.ac, gdbserver/gdbserver.1: Copyright year
9023 update.
9024
9025 2011-01-01 Joel Brobecker <brobecker@adacore.com>
9026
9027 * server.c (gdbserver_version): Update copyright year in version
9028 output.
9029 * gdbreplay.c (gdbreplay_version): Ditto.
9030
9031 2010-12-29 Jie Zhang <jie.zhang@analog.com>
9032
9033 * configure.srv (bfin-*-*linux*): Handle Blackfin/Linux targets.
9034 * linux-bfin-low.c: New file.
9035 * linux-low.c: Define PT_TEXT_ADDR, PT_TEXT_END_ADDR, and
9036 PT_DATA_ADDR for BFIN targets.
9037 * Makefile.in (SFILES): Add linux-bfin-low.c.
9038 (clean): Remove reg-bfin.c.
9039 (linux-bfin-low.o, reg-bfin.o, reg-bfin.c): New targets.
9040 * README: Mention supported Blackfin targets.
9041
9042 2010-12-23 Mike Frysinger <vapier@gentoo.org>
9043
9044 * .gitignore: New file.
9045
9046 2010-11-16 Mike Frysinger <vapier@gentoo.org>
9047
9048 * linux-low.c (linux_tracefork_child): Add char* cast to arg.
9049
9050 2010-10-22 Jie Zhang <jie@codesourcery.com>
9051
9052 * Makefile.in: Add FLAGS_TO_PASS variable.
9053 (install): Remove dependency of install-only and recursively
9054 invoke make for install-only.
9055
9056 2010-10-04 Doug Evans <dje@google.com>
9057
9058 * Makefile.in (uninstall): Use $(DESTDIR).
9059
9060 2010-09-24 Pedro Alves <pedro@codesourcery.com>
9061
9062 PR gdb/11842
9063
9064 * linux-x86-low.c (compat_siginfo_from_siginfo)
9065 (siginfo_from_compat_siginfo): Also copy si_pid and si_uid when
9066 si_code is < 0. Check for si_code == SI_TIMER before checking for
9067 si_code < 0.
9068
9069 2010-09-13 Joel Brobecker <brobecker@adacore.com>
9070
9071 * lynx-i386-low.c: New file.
9072 * configure.srv: Add handling of i[34567]86-*-lynxos* targets.
9073
9074 2010-09-13 Joel Brobecker <brobecker@adacore.com>
9075
9076 * lynx-low.c (ptrace_request_to_str): Remove handling for
9077 request values that have been removed in LynxOS 5.x.
9078
9079 2010-09-13 Joel Brobecker <brobecker@adacore.com>
9080
9081 * lynx-low.c, lynx-ppc-loc.c: Include <sys/ptrace.h> instead of
9082 <ptrace.h>
9083
9084 2010-09-09 Nathan Sidwell <nathan@codesourcery.com>
9085
9086 * configure.ac: Add --enable-inprocess-agent option.
9087 * configure: Rebuilt.
9088
9089 2010-09-06 Yao Qi <yao@codesourcery.com>
9090
9091 * linux-low.c (linux_kill): Remove unused variable.
9092 (linux_stabilize_threads): Likewise.
9093 * server.c (start_inferior): Likewise.
9094 (queue_stop_reply_callback): Likewise.
9095 * tracepoint.c (do_action_at_tracepoint): Likewise.
9096
9097 2010-09-06 Yao Qi <yao@codesourcery.com>
9098
9099 * linux-low.c (maybe_move_out_of_jump_pad): Restore current_inferior
9100 on return.
9101
9102 2010-09-06 Jan Kratochvil <jan.kratochvil@redhat.com>
9103
9104 * target.c (mywait) <TARGET_WAITKIND_EXITED>: Fix to use INTEGER.
9105
9106 2010-09-06 Pedro Alves <pedro@codesourcery.com>
9107
9108 * Makefile.in (install-only): Replace $IPA_DEPFILES with
9109 "$(IPA_DEPFILES)".
9110
9111 2010-09-01 Joel Brobecker <brobecker@adacore.com>
9112
9113 * gdbserver/lynx-low.c, gdbserver/lynx-low.h,
9114 gdbserver/lynx-ppc-low.c: New files.
9115 * Makefile.in (lynx_low_h): New variable.
9116 (lynx-low.o, lynx-ppc-low.o): New rules.
9117 * configure.ac: On LynxOS, link with -lnetinet.
9118 * configure.srv: Add handling of powerpc-*-lynxos* targets.
9119 * configure: regenerate.
9120
9121 2010-09-01 Joel Brobecker <brobecker@adacore.com>
9122
9123 * Makefile.in (vasprintf.o, vsnprintf.o): New rules.
9124 * configure.ac: Add check for vasprintf and vsnprintf.
9125 * configure, config.in: Regenerate.
9126 * server.h (vasprintf, vsnprintf): Add conditional declarations.
9127
9128 2010-09-01 Joel Brobecker <brobecker@adacore.com>
9129
9130 * gdbreplay.c: Move include of alloca.h up, next to include of
9131 malloc.h.
9132 * server.h: Add include of malloc.h.
9133 * mem-break.c: Remove include of malloc.h.
9134 * server.c, tracepoint.c, utils.c, win32-low.c: Likewise.
9135
9136 2010-09-01 Joel Brobecker <brobecker@adacore.com>
9137
9138 * Makefile.in (memmem.o): Build with -Wno-error.
9139
9140 2010-09-01 Joel Brobecker <brobecker@adacore.com>
9141
9142 * utils.c (xsnprintf): Make non-static.
9143 * server.h: Add xsnprintf declaration.
9144 * linux-low.c, nto-low.c, target.c, thread-db.c, tracepoint.c:
9145 replace calls to snprintf by calls to xsnprintf throughout.
9146
9147 2010-09-01 Joel Brobecker <brobecker@adacore.com>
9148
9149 * configure.ac: Add configure check for alloca.
9150 * configure, config.in: Regenerate.
9151 * server.h: Include alloca.h if it exists.
9152 * gdbreplay.c: Include alloca.h if it exists.
9153
9154 2010-08-28 Pedro Alves <pedro@codesourcery.com>
9155
9156 * linux-low.c (__SIGRTMIN): Define if not already defined.
9157 (linux_create_inferior): Check for __ANDROID__ rather than
9158 __SIGRTMIN.
9159 (enqueue_one_deferred_signal): Don't requeue non-RT signals that
9160 are already deferred.
9161 (linux_wait_1): Check for __ANDROID__ rather than __SIGRTMIN.
9162 (linux_resume_one_thread): Don't queue a SIGSTOP if the lwp is
9163 stopped and already has a pending signal to report.
9164 (proceed_one_lwp): : Don't queue a SIGSTOP if the lwp already has
9165 a pending signal to report or is moving out of a jump pad.
9166 (linux_init_signals): Check for __ANDROID__ rather than
9167 __SIGRTMIN.
9168
9169 2010-08-28 Pedro Alves <pedro@codesourcery.com>
9170
9171 * linux-low.c (linux_stabilize_threads): Wrap debug output in a
9172 debug_threads check. Avoid a linear search when not doing debug
9173 output.
9174
9175 2010-08-27 Pedro Alves <pedro@codesourcery.com>
9176
9177 * event-loop.c (event_handle_func): Adjust to use gdb_fildes_t.
9178 (struct gdb_event) <fd>: Change type to gdb_fildes_t.
9179 (struct file_handler) <fd>: Change type to gdb_fildes_t.
9180 (process_event): Change local fd's type to gdb_fildes_t.
9181 (create_file_handler): Adjust prototype.
9182 (delete_file_handler): Adjust prototype.
9183 (handle_file_event): Adjust prototype. Use pfildes.
9184 (create_file_event): Adjsut prototype.
9185 * remote-utils.c (remote_desc, listen_desc): Change type to
9186 gdb_fildes_t.
9187 * server.h: New gdb_fildes_t typedef.
9188 [USE_WIN32API]: Include winsock2.h.
9189 (delete_file_handler, add_file_handler): Adjust prototypes.
9190 (pfildes): Declare.
9191 * utils.c (pfildes): New.
9192
9193 2010-08-27 Pedro Alves <pedro@codesourcery.com>
9194
9195 * configure.ac (build_warnings): Add -Wno-char-subscripts.
9196 * configure: Regenerate.
9197
9198 2010-08-27 Pedro Alves <pedro@codesourcery.com>
9199
9200 * linux-low.c (linux_unprepare_to_access_memory): Rename to ...
9201 (linux_done_accessing_memory): ... this.
9202 (linux_target_ops): Adjust.
9203 * linux-x86-low.c (x86_insert_point, x86_remove_point): Adjust.
9204 * nto-low.c (nto_target_ops): Adjust comment.
9205 * server.c (gdb_read_memory, gdb_write_memory): Adjust.
9206 * spu-low.c (spu_target_ops): Adjust comment.
9207 * target.h (target_ops): Rename unprepare_to_access_memory field
9208 to done_accessing_memory.
9209 (unprepare_to_access_memory): Rename to ...
9210 (done_accessing_memory): ... this.
9211
9212 2010-08-26 Pedro Alves <pedro@codesourcery.com>
9213
9214 * linux-low.c (linux_prepare_to_access_memory): New.
9215 (linux_unprepare_to_access_memory): New.
9216 (linux_target_ops): Install them.
9217 * server.c (read_memory): Rename to ...
9218 (gdb_read_memory): ... this. Use
9219 prepare_to_access_memory/prepare_to_access_memory.
9220 (write_memory): Rename to ...
9221 (gdb_write_memory): ... this. Use
9222 prepare_to_access_memory/prepare_to_access_memory.
9223 (handle_search_memory_1): Adjust.
9224 (process_serial_event): Adjust.
9225 * target.h (struct target_ops): New fields
9226 prepare_to_access_memory and unprepare_to_access_memory.
9227 (prepare_to_access_memory, unprepare_to_access_memory): New.
9228 * linux-x86-low.c (x86_insert_point, x86_remove_point): Use
9229 prepare_to_access_memory/prepare_to_access_memory.
9230 * nto-low.c (nto_target_ops): Adjust.
9231 * spu-low.c (spu_target_ops): Adjust.
9232 * win32-low.c (win32_target_ops): Adjust.
9233
9234 2010-08-26 Pedro Alves <pedro@codesourcery.com>
9235
9236 * Makefile.in (WARN_CFLAGS): Get it from configure.
9237 (WERROR_CFLAGS): New.
9238 (INTERNAL_CFLAGS): Add WERROR_CFLAGS.
9239 * configure.ac: Introduce --enable-werror, which adds -Werror to
9240 the compiler command line. Enabled by default. Disable with
9241 --disable-werror. Add -Wdeclaration-after-statement
9242 Wpointer-arith and -Wformat-nonliteral to warning flags.
9243 * configure: Regenerate.
9244
9245 2010-08-26 Pedro Alves <pedro@codesourcery.com>
9246
9247 * mem-break.c [HAVE_MALLOC_H]: Include malloc.h.
9248
9249 2010-08-26 Pedro Alves <pedro@codesourcery.com>
9250
9251 * gdbreplay.c (remote_error): New.
9252 (gdbchar): New.
9253 (expect): Use gdbchar. Check for error reading from GDB.
9254 Clarify sync error output.
9255 (play): Check for errors writing to GDB.
9256 * linux-low.c (sigchld_handler): Really ignore `write' errors.
9257 * remote-utils.c (getpkt): Check for errors writing to the remote
9258 descriptor.
9259
9260 2010-08-25 Pedro Alves <pedro@codesourcery.com>
9261
9262 * linux-low.c (linux_wait_1): Move non-debugging code out of
9263 `debug_threads' control.
9264
9265 2010-08-25 Pedro Alves <pedro@codesourcery.com>
9266
9267 * linux-low.c (linux_wait_1): Don't set last_status here.
9268 * server.c (push_event, queue_stop_reply_callback): Assert we're
9269 not pushing a TARGET_WAITKIND_IGNORE event.
9270 (start_inferior, start_inferior, attach_inferior, handle_v_cont)
9271 (myresume, handle_target_event): Set the thread's last_resume_kind
9272 and last_status from the target returned status.
9273
9274 2010-08-25 Pedro Alves <pedro@codesourcery.com>
9275
9276 PR threads/10729
9277
9278 * linux-x86-low.c (update_debug_registers_callback): New.
9279 (i386_dr_low_set_addr): Use it.
9280 (i386_dr_low_get_addr): New.
9281 (i386_dr_low_set_control): Use update_debug_registers_callback.
9282 (i386_dr_low_get_control): New.
9283 (i386_dr_low_get_status): Adjust.
9284 * linux-low.c (linux_stop_lwp): New.
9285 * linux-low.h (linux_stop_lwp): Declare.
9286
9287 * i386-low.c (I386_DR_GET_RW_LEN): Take the dr7 contents as
9288 argument instead of a i386_debug_reg_state.
9289 (I386_DR_WATCH_HIT): Take the dr6 contents as argument instead of
9290 a i386_debug_reg_state.
9291 (i386_insert_aligned_watchpoint): Adjust.
9292 (i386_remove_aligned_watchpoint): Adjust.
9293 (i386_low_stopped_data_address): Read the debug registers from the
9294 inferior instead of from the mirrors.
9295 * i386-low.h (struct i386_debug_reg_state): Extend comment.
9296 (i386_dr_low_get_addr): Declare.
9297 (i386_dr_low_get_control): Declare.
9298 (i386_dr_low_get_status): Change prototype.
9299
9300 * win32-i386-low.c (dr_status_mirror, dr_control_mirror): New globals.
9301 (i386_dr_low_get_addr): New.
9302 (i386_dr_low_get_control): New.
9303 (i386_dr_low_get_status): Adjust prototype. Return
9304 dr_status_mirror.
9305 (i386_initial_stuff): Clear dr_status_mirror and
9306 dr_control_mirror.
9307 (i386_get_thread_context): Adjust.
9308 (i386_set_thread_context): Adjust.
9309 (i386_thread_added): Adjust.
9310
9311 2010-08-24 Pedro Alves <pedro@codesourcery.com>
9312
9313 * linux-low.h (linux_thread_area): Delete declaration.
9314
9315 2010-08-11 Thomas Schwinge <thomas@codesourcery.com>
9316
9317 * linux-low.c (linux_wait_1): Correctly return the ptid of the child
9318 after its termination.
9319
9320 2010-08-09 Pedro Alves <pedro@codesourcery.com>
9321
9322 * linux-low.c (gdb_wants_lwp_stopped): Delete.
9323 (gdb_wants_all_stopped): Delete.
9324 (linux_wait_1): Don't call them.
9325 * server.c (handle_v_cont): Tag all threads as want-stopped.
9326 (gdb_wants_thread_stopped): Fix comments. Tag the thread that
9327 stopped as "client-wants-stopped".
9328
9329 2010-07-31 Pedro Alves <pedro@codesourcery.com>
9330
9331 * Makefile.in (signals_h): New.
9332 (server_h): Depend on it.
9333 (server.o): Don't depend on $(signals_def).
9334 (signals.o): Depend on $(signals_def).
9335
9336 2010-07-31 Jan Kratochvil <jan.kratochvil@redhat.com>
9337
9338 * Makefile.in (signals_def): New.
9339 (server_h): Append include/gdb/signals.h and signals_def.
9340 (server.o): Append signals_def.
9341
9342 2010-07-25 Jan Kratochvil <jan.kratochvil@redhat.com>
9343
9344 * server.c (handle_target_event): Use target_signal_to_host for
9345 resume_info.sig initialization.
9346 * target.h (struct thread_resume) <sig>: New comment.
9347
9348 2010-07-20 Ozkan Sezer <sezeroz@gmail.com>
9349
9350 * server.c (handle_query): strcpy() the returned string from paddress()
9351 instead of sprintf().
9352 * utils.c (paddress): Return phex_nz().
9353
9354 2010-07-07 Joel Brobecker <brobecker@adacore.com>
9355
9356 * server.c (handle_v_cont): Call mourn_inferior if process
9357 just exited.
9358 (myresume): Likewise.
9359
9360 2010-07-01 Pedro Alves <pedro@codesourcery.com>
9361
9362 Static tracepoints, and integration with UST.
9363
9364 * configure.ac: Handle --with-ust. substitute ustlibs and ustinc.
9365 * mem-break.c (uninsert_all_breakpoints)
9366 (reinsert_all_breakpoints): New.
9367 * mem-break.h (reinsert_all_breakpoints, uninsert_all_breakpoints):
9368 * tracepoint.c (ust_loaded, helper_thread_id, cmd_buf): New.
9369 (gdb_agent_ust_loaded, helper_thread_id)
9370 (gdb_agent_helper_thread_id): New macros.
9371 (struct ipa_sym_addresses): Add addr_ust_loaded,
9372 addr_helper_thread_id, addr_cmd_buf.
9373 (symbol_list): Add ust_loaded, helper_thread_id, cmd_buf.
9374 (in_process_agent_loaded_ust): New.
9375 (write_e_ust_not_loaded): New.
9376 (maybe_write_ipa_ust_not_loaded): New.
9377 (struct collect_static_trace_data_action): New.
9378 (enum tracepoint_type) <static_tracepoint>: New.
9379 (struct tracepoint) <handle>: Mention static tracepoints.
9380 (struct static_tracepoint_ctx): New.
9381 (CMD_BUF_SIZE): New.
9382 (add_tracepoint_action): Handle static tracepoint actions.
9383 (unprobe_marker_at): New.
9384 (clear_installed_tracepoints): Handle static tracepoints.
9385 (cmd_qtdp): Handle static tracepoints.
9386 (probe_marker_at): New.
9387 (cmd_qtstart): Handle static tracepoints.
9388 (response_tracepoint): Handle static tracepoints.
9389 (cmd_qtfstm, cmd_qtsstm, cmd_qtstmat): New.
9390 (handle_tracepoint_query): Handle qTfSTM, qTsSTM and qTSTMat.
9391 (get_context_regcache): Handle static tracepoints.
9392 (do_action_at_tracepoint): Handle static tracepoint actions.
9393 (traceframe_find_block_type): Handle static trace data blocks.
9394 (traceframe_read_sdata): New.
9395 (download_tracepoints): Download static tracepoint actions.
9396 [HAVE_UST] Include ust/ust.h, dlfcn.h, sys/socket.h, and sys/un.h.
9397 (GDB_PROBE_NAME): New.
9398 (ust_ops): New.
9399 (GET_UST_SYM): New.
9400 (USTF): New.
9401 (dlsym_ust): New.
9402 (ust_marker_to_static_tracepoint): New.
9403 (gdb_probe): New.
9404 (collect_ust_data_at_tracepoint): New.
9405 (gdb_ust_probe): New.
9406 (UNIX_PATH_MAX, SOCK_DIR): New.
9407 (gdb_ust_connect_sync_socket): New.
9408 (resume_thread, stop_thread): New.
9409 (run_inferior_command): New.
9410 (init_named_socket): New.
9411 (gdb_ust_socket_init): New.
9412 (cstr_to_hexstr): New.
9413 (next_st): New.
9414 (first_marker, next_marker): New.
9415 (response_ust_marker): New.
9416 (cmd_qtfstm, cmd_qtsstm): New.
9417 (unprobe_marker_at, probe_marker_at): New.
9418 (cmd_qtstmat, gdb_ust_thread): New.
9419 (gdb_ust_init): New.
9420 (initialize_tracepoint_ftlib): Call gdb_ust_init.
9421 * linux-amd64-ipa.c [HAVE_UST]: Include ust/processor.h
9422 (ST_REGENTRY): New.
9423 (x86_64_st_collect_regmap): New.
9424 (X86_64_NUM_ST_COLLECT_GREGS): New.
9425 (AMD64_RIP_REGNUM): New.
9426 (supply_static_tracepoint_registers): New.
9427 * linux-i386-ipa.c [HAVE_UST]: Include ust/processor.h
9428 (ST_REGENTRY): New.
9429 (i386_st_collect_regmap): New.
9430 (i386_NUM_ST_COLLECT_GREGS): New.
9431 (supply_static_tracepoint_registers): New.
9432 * server.c (handle_query): Handle qXfer:statictrace:read.
9433 <qSupported>: Report support for StaticTracepoints, and
9434 qXfer:statictrace:read features.
9435 * server.h (traceframe_read_sdata)
9436 (supply_static_tracepoint_registers): Declare.
9437 * remote-utils.c (convert_int_to_ascii, hexchars, ishex, tohex)
9438 (unpack_varlen_hex): Include in IPA build.
9439 * Makefile.in (ustlibs, ustinc): New.
9440 (IPA_OBJS): Add remote-utils-ipa.o.
9441 ($(IPA_LIB)): Link -ldl and -lpthread.
9442 (UST_CFLAGS): New.
9443 (IPAGENT_CFLAGS): Add UST_CFLAGS.
9444 * config.in, configure: Regenerate.
9445
9446 2010-06-20 Ian Lance Taylor <iant@google.com>
9447 Pedro Alves <pedro@codesourcery.com>
9448
9449 * linux-x86-low.c (always_true): Delete.
9450 (EMIT_ASM, EMIT_ASM32): Use an uncondition asm jmp instead of
9451 trying to fool the compiler with always_true.
9452
9453 2010-06-20 Pedro Alves <pedro@codesourcery.com>
9454
9455 * tracepoint.c (condition_true_at_tracepoint): Don't run compiled
9456 conditions in gdbserver.
9457
9458 2010-06-19 Ulrich Weigand <uweigand@de.ibm.com>
9459
9460 * spu-low.c (spu_read_memory): Wrap around local store limit.
9461 (spu_write_memory): Likewise.
9462
9463 2010-06-15 Pedro Alves <pedro@codesourcery.com>
9464
9465 * linux-x86-low.c (amd64_emit_const, amd64_emit_void_call_2)
9466 (i386_emit_const, i386_emit_void_call_2): Replace int64_t uses with
9467 LONGEST uses.
9468 * server.h (struct emit_ops): Replace int64_t uses with LONGEST
9469 uses.
9470 * tracepoint.c (emit_const, emit_void_call_2): Replace int64_t
9471 uses with LONGEST uses.
9472
9473 2010-06-14 Stan Shebs <stan@codesourcery.com>
9474 Pedro Alves <pedro@codesourcery.com>
9475
9476 Bytecode compiler.
9477
9478 * linux-x86-low.c: Include limits.h.
9479 (add_insns): New.
9480 (always_true): New.
9481 (EMIT_ASM): New.
9482 (EMIT_ASM32): New.
9483 (amd64_emit_prologue, amd64_emit_epilogue, amd64_emit_add)
9484 (amd64_emit_sub, amd64_emit_mul, amd64_emit_lsh)
9485 (amd64_emit_rsh_signed, amd64_emit_rsh_unsigned, amd64_emit_ext,
9486 (amd64_emit_log_not, amd64_emit_bit_and, amd64_emit_bit_or)
9487 (amd64_emit_bit_xor, amd64_emit_bit_not, amd64_emit_equal,
9488 (amd64_emit_less_signed, amd64_emit_less_unsigned, amd64_emit_ref,
9489 (amd64_emit_if_goto, amd64_emit_goto, amd64_write_goto_address)
9490 (amd64_emit_const, amd64_emit_call, amd64_emit_reg)
9491 (amd64_emit_pop, amd64_emit_stack_flush, amd64_emit_zero_ext)
9492 (amd64_emit_swap, amd64_emit_stack_adjust, amd64_emit_int_call_1)
9493 (amd64_emit_void_call_2): New.
9494 (amd64_emit_ops): New.
9495 (i386_emit_prologue, i386_emit_epilogue, i386_emit_add)
9496 (i386_emit_sub,i386_emit_mul, i386_emit_lsh, i386_emit_rsh_signed)
9497 (i386_emit_rsh_unsigned, i386_emit_ext, i386_emit_log_not)
9498 (i386_emit_bit_and, i386_emit_bit_or, i386_emit_bit_xor)
9499 (i386_emit_bit_not, i386_emit_equal, i386_emit_less_signed)
9500 (i386_emit_less_unsigned, i386_emit_ref, i386_emit_if_goto)
9501 (i386_emit_goto, i386_write_goto_address, i386_emit_const)
9502 (i386_emit_call, i386_emit_reg, i386_emit_pop)
9503 (i386_emit_stack_flush, i386_emit_zero_ext, i386_emit_swap)
9504 (i386_emit_stack_adjust, i386_emit_int_call_1)
9505 (i386_emit_void_call_2): New.
9506 (i386_emit_ops): New.
9507 (x86_emit_ops): New.
9508 (the_low_target): Install x86_emit_ops.
9509 * server.h (struct emit_ops): New.
9510 (get_raw_reg_func_addr): Declare.
9511 (current_insn_ptr, emit_error): Declare.
9512 * tracepoint.c (get_raw_reg, get_trace_state_variable_value)
9513 (set_trace_state_variable_value): New defines.
9514 (struct ipa_sym_addresses): New fields addr_get_raw_reg,
9515 addr_get_trace_state_variable_value and
9516 addr_set_trace_state_variable_value.
9517 (symbol_list): New fields for get_raw_reg,
9518 get_trace_state_variable_value and set_trace_state_variable_value.
9519 (condfn): New typedef.
9520 (struct tracepoint): New field `compiled_cond'.
9521 (do_action_at_tracepoint): Clear compiled_cond.
9522 (get_trace_state_variable_value, set_trace_state_variable_value):
9523 Export in the IPA.
9524 (condition_true_at_tracepoint): If there's a compiled condition,
9525 run that.
9526 (current_insn_ptr, emit_error): New globals.
9527 (struct bytecode_address): New.
9528 (get_raw_reg_func_addr): New.
9529 (emit_prologue, emit_epilogue, emit_add, emit_sub, emit_mul)
9530 (emit_lsh, emit_rsh_signed, emit_rsh_unsigned, emit_ext)
9531 (emit_log_not, emit_bit_and, emit_bit_or, emit_bit_xor)
9532 (emit_bit_not, emit_equal, emit_less_signed, emit_less_unsigned)
9533 (emit_ref, emit_if_goto, emit_goto, write_goto_address, emit_const)
9534 (emit_reg, emit_pop, emit_stack_flush, emit_zero_ext, emit_swap)
9535 (emit_stack_adjust, emit_int_call_1, emit_void_call_2): New.
9536 (compile_tracepoint_condition, compile_bytecodes): New.
9537 * target.h (emit_ops): Forward declare.
9538 (struct target_ops): New field emit_ops.
9539 (target_emit_ops): New.
9540 * linux-amd64-ipa.c (gdb_agent_get_raw_reg): New.
9541 * linux-i386-ipa.c (gdb_agent_get_raw_reg): New.
9542 * linux-low.c (linux_emit_ops): New.
9543 (linux_target_ops): Install it.
9544 * linux-low.h (struct linux_target_ops): New field emit_ops.
9545
9546 2010-06-14 Ulrich Weigand <uweigand@de.ibm.com>
9547
9548 * linux-ppc-low.c (ppc_arch_setup): Use private regcache to test MSR.
9549 * linux-s390-low.c (ppc_arch_setup): Use private regcache to test PSW.
9550
9551 2010-06-01 Pedro Alves <pedro@codesourcery.com>
9552 Stan Shebs <stan@codesourcery.com>
9553
9554 * Makefile.in (IPA_DEPFILES, extra_libraries): New.
9555 (all): Depend on $(extra_libraries).
9556 (install-only): Install the IPA.
9557 (IPA_OBJS, IPA_LIB): New.
9558 (clean): Remove the IPA lib.
9559 (IPAGENT_CFLAGS): New.
9560 (tracepoint-ipa.o, utils-ipa.o, remote-utils-ipa.o)
9561 (regcache-ipa.o, i386-linux-ipa.o, linux-i386-ipa.o)
9562 (linux-amd64-ipa.o, amd64-linux-ipa.o): New rules.
9563 * linux-amd64-ipa.c, linux-i386-ipa.c: New files.
9564 * configure.ac: Check for atomic builtins support in the compiler.
9565 (IPA_DEPFILES, extra_libraries): Define.
9566 * configure.srv (ipa_obj): Add description.
9567 (ipa_i386_linux_regobj, ipa_amd64_linux_regobj): Define.
9568 (i[34567]86-*-linux*): Set ipa_obj.
9569 (x86_64-*-linux*): Set ipa_obj.
9570 * linux-low.c (stabilizing_threads): New.
9571 (supports_fast_tracepoints): New.
9572 (linux_detach): Stabilize threads before detaching.
9573 (handle_tracepoints): Handle internal tracing breakpoints. Assert
9574 the lwp is either not stabilizing, or is moving out of a jump pad.
9575 (linux_fast_tracepoint_collecting): New.
9576 (maybe_move_out_of_jump_pad): New.
9577 (enqueue_one_deferred_signal): New.
9578 (dequeue_one_deferred_signal): New.
9579 (linux_wait_for_event_1): If moving out of a jump pad, defer
9580 pending signals to later.
9581 (linux_stabilize_threads): New.
9582 (linux_wait_1): Check if threads need moving out of jump pads, and
9583 do it if so.
9584 (stuck_in_jump_pad_callback): New.
9585 (move_out_of_jump_pad_callback): New.
9586 (lwp_running): New.
9587 (linux_resume_one_lwp): Handle moving out of jump pads.
9588 (linux_set_resume_request): Dequeue deferred signals.
9589 (need_step_over_p): Also step over fast tracepoint jumps.
9590 (start_step_over): Also uninsert fast tracepoint jumps.
9591 (finish_step_over): Also reinsert fast tracepoint jumps.
9592 (linux_install_fast_tracepoint_jump): New.
9593 (linux_target_ops): Install linux_stabilize_threads and
9594 linux_install_fast_tracepoint_jump_pad.
9595 * linux-low.h (linux_target_ops) <get_thread_area,
9596 install_fast_tracepoint_jump_pad>: New fields.
9597 (struct lwp_info) <collecting_fast_tracepoint,
9598 pending_signals_to_report, exit_jump_pad_bkpt>: New fields.
9599 (linux_get_thread_area): Declare.
9600 * linux-x86-low.c (jump_insn): New.
9601 (x86_get_thread_area): New.
9602 (append_insns): New.
9603 (push_opcode): New.
9604 (amd64_install_fast_tracepoint_jump_pad): New.
9605 (i386_install_fast_tracepoint_jump_pad): New.
9606 (x86_install_fast_tracepoint_jump_pad): New.
9607 (the_low_target): Install x86_get_thread_area and
9608 x86_install_fast_tracepoint_jump_pad.
9609 * mem-break.c (set_raw_breakpoint_at): Use read_inferior_memory.
9610 (struct fast_tracepoint_jump): New.
9611 (fast_tracepoint_jump_insn): New.
9612 (fast_tracepoint_jump_shadow): New.
9613 (find_fast_tracepoint_jump_at): New.
9614 (fast_tracepoint_jump_here): New.
9615 (delete_fast_tracepoint_jump): New.
9616 (set_fast_tracepoint_jump): New.
9617 (uninsert_fast_tracepoint_jumps_at): New.
9618 (reinsert_fast_tracepoint_jumps_at): New.
9619 (set_breakpoint_at): Use write_inferior_memory.
9620 (uninsert_raw_breakpoint): Use write_inferior_memory.
9621 (check_mem_read): Mask out fast tracepoint jumps.
9622 (check_mem_write): Mask out fast tracepoint jumps.
9623 * mem-break.h (struct fast_tracepoint_jump): Forward declare.
9624 (set_fast_tracepoint_jump): Declare.
9625 (delete_fast_tracepoint_jump)
9626 (fast_tracepoint_jump_here, uninsert_fast_tracepoint_jumps_at)
9627 (reinsert_fast_tracepoint_jumps_at): Declare.
9628 * regcache.c: Don't compile many functions when building the
9629 in-process agent library.
9630 (init_register_cache) [IN_PROCESS_AGENT]: Don't allow allocating
9631 the register buffer in the heap.
9632 (free_register_cache): If the register buffer isn't owned by the
9633 regcache, don't free it.
9634 (set_register_cache) [IN_PROCESS_AGENT]: Don't re-alocate
9635 pre-existing register caches.
9636 * remote-utils.c (convert_int_to_ascii): Constify `from' parameter
9637 type.
9638 (convert_ascii_to_int): : Constify `from' parameter type.
9639 (decode_M_packet, decode_X_packet): Replace the `to' parameter by
9640 a `to_p' pointer to pointer parameter. If TO_P is NULL, malloc
9641 the needed buffer in-place.
9642 (relocate_instruction): New.
9643 * server.c (handle_query) <qSymbols>: If the target supports
9644 tracepoints, give it a chance of looking up symbols. Report
9645 support for fast tracepoints.
9646 (handle_status): Stabilize threads.
9647 (process_serial_event): Adjust.
9648 * server.h (struct fast_tracepoint_jump): Forward declare.
9649 (struct process_info) <fast_tracepoint_jumps>: New field.
9650 (convert_ascii_to_int, convert_int_to_ascii): Adjust.
9651 (decode_X_packet, decode_M_packet): Adjust.
9652 (relocate_instruction): Declare.
9653 (in_process_agent_loaded): Declare.
9654 (tracepoint_look_up_symbols): Declare.
9655 (struct fast_tpoint_collect_status): Declare.
9656 (fast_tracepoint_collecting): Declare.
9657 (force_unlock_trace_buffer): Declare.
9658 (handle_tracepoint_bkpts): Declare.
9659 (initialize_low_tracepoint)
9660 (supply_fast_tracepoint_registers) [IN_PROCESS_AGENT]: Declare.
9661 * target.h (struct target_ops) <stabilize_threads,
9662 install_fast_tracepoint_jump_pad>: New fields.
9663 (stabilize_threads, install_fast_tracepoint_jump_pad): New.
9664 * tracepoint.c [HAVE_MALLOC_H]: Include malloc.h.
9665 [HAVE_STDINT_H]: Include stdint.h.
9666 (trace_debug_1): Rename to ...
9667 (trace_vdebug): ... this.
9668 (trace_debug): Rename to ...
9669 (trace_debug_1): ... this. Add `level' parameter.
9670 (trace_debug): New.
9671 (ATTR_USED, ATTR_NOINLINE): New.
9672 (IP_AGENT_EXPORT): New.
9673 (gdb_tp_heap_buffer, gdb_jump_pad_buffer, gdb_jump_pad_buffer_end)
9674 (collecting, gdb_collect, stop_tracing, flush_trace_buffer)
9675 (about_to_request_buffer_space, trace_buffer_is_full)
9676 (stopping_tracepoint, expr_eval_result, error_tracepoint)
9677 (tracepoints, tracing, trace_buffer_ctrl, trace_buffer_ctrl_curr)
9678 (trace_buffer_lo, trace_buffer_hi, traceframe_read_count)
9679 (traceframe_write_count, traceframes_created)
9680 (trace_state_variables)
9681 New renaming defines.
9682 (struct ipa_sym_addresses): New.
9683 (STRINGIZE_1, STRINGIZE, IPA_SYM): New.
9684 (symbol_list): New.
9685 (ipa_sym_addrs): New.
9686 (all_tracepoint_symbols_looked_up): New.
9687 (in_process_agent_loaded): New.
9688 (write_e_ipa_not_loaded): New.
9689 (maybe_write_ipa_not_loaded): New.
9690 (tracepoint_look_up_symbols): New.
9691 (debug_threads) [IN_PROCESS_AGENT]: New.
9692 (read_inferior_memory) [IN_PROCESS_AGENT]: New.
9693 (UNKNOWN_SIDE_EFFECTS): New.
9694 (stop_tracing): New.
9695 (flush_trace_buffer): New.
9696 (stop_tracing_bkpt): New.
9697 (flush_trace_buffer_bkpt): New.
9698 (read_inferior_integer): New.
9699 (read_inferior_uinteger): New.
9700 (read_inferior_data_pointer): New.
9701 (write_inferior_data_pointer): New.
9702 (write_inferior_integer): New.
9703 (write_inferior_uinteger): New.
9704 (struct collect_static_trace_data_action): Delete.
9705 (enum tracepoint_type): New.
9706 (struct tracepoint) <type>: New field `type'.
9707 <actions_str, step_actions, step_actions_str>: Only include in
9708 GDBserver.
9709 <orig_size, obj_addr_on_target, adjusted_insn_addr>
9710 <adjusted_insn_addr_end, jump_pad, jump_pad_end>: New fields.
9711 (tracepoints): Use IP_AGENT_EXPORT.
9712 (last_tracepoint): Don't include in the IPA.
9713 (stopping_tracepoint): Use IP_AGENT_EXPORT.
9714 (trace_buffer_is_full): Use IP_AGENT_EXPORT.
9715 (alloced_trace_state_variables): New.
9716 (trace_state_variables): Use IP_AGENT_EXPORT.
9717 (traceframe_t): Delete unused variable.
9718 (circular_trace_buffer): Don't include in the IPA.
9719 (trace_buffer_start): Delete.
9720 (struct trace_buffer_control): New.
9721 (trace_buffer_free): Delete.
9722 (struct ipa_trace_buffer_control): New.
9723 (GDBSERVER_FLUSH_COUNT_MASK, GDBSERVER_FLUSH_COUNT_MASK_PREV)
9724 (GDBSERVER_FLUSH_COUNT_MASK_CURR, GDBSERVER_UPDATED_FLUSH_COUNT_BIT):
9725 New.
9726 (trace_buffer_ctrl): New.
9727 (TRACE_BUFFER_CTRL_CURR): New.
9728 (trace_buffer_start, trace_buffer_free, trace_buffer_end_free):
9729 Reimplement as macros.
9730 (trace_buffer_wrap): Delete.
9731 (traceframe_write_count, traceframe_read_count)
9732 (traceframes_created, tracing): Use IP_AGENT_EXPORT.
9733 (struct tracepoint_hit_ctx) <type>: New field.
9734 (struct fast_tracepoint_ctx): New.
9735 (memory_barrier): New.
9736 (cmpxchg): New.
9737 (record_tracepoint_error): Update atomically in the IPA.
9738 (clear_inferior_trace_buffer): New.
9739 (about_to_request_buffer_space): New.
9740 (trace_buffer_alloc): Handle GDBserver and inferior simulatenous
9741 updating the same buffer.
9742 (add_tracepoint): Default the tracepoint's type to trap
9743 tracepoint, and orig_size to -1.
9744 (get_trace_state_variable) [IN_PROCESS_AGENT]: Handle allocated
9745 internal variables.
9746 (create_trace_state_variable): New parameter `gdb'. Handle it.
9747 (clear_installed_tracepoints): Clear fast tracepoint jumps.
9748 (cmd_qtdp): Handle fast tracepoints.
9749 (cmd_qtdv): Adjust.
9750 (max_jump_pad_size): New.
9751 (gdb_jump_pad_head): New.
9752 (get_jump_space_head): New.
9753 (claim_jump_space): New.
9754 (sort_tracepoints): New.
9755 (MAX_JUMP_SIZE): New.
9756 (cmd_qtstart): Handle fast tracepoints. Sync tracepoints with the
9757 IPA.
9758 (stop_tracing) [IN_PROCESS_AGENT]: Don't include the tdisconnected
9759 support. Upload fast traceframes, and delete internal IPA
9760 breakpoints.
9761 (stop_tracing_handler): New.
9762 (flush_trace_buffer_handler): New.
9763 (cmd_qtstop): Upload fast tracepoints.
9764 (response_tracepoint): Handle fast tracepoints.
9765 (tracepoint_finished_step): Upload fast traceframes. Set the
9766 tracepoint hit context's tracepoint type.
9767 (handle_tracepoint_bkpts): New.
9768 (tracepoint_was_hit): Set the tracepoint hit context's tracepoint
9769 type. Add comment about fast tracepoints.
9770 (collect_data_at_tracepoint) [IN_PROCESS_AGENT]: Don't access the
9771 non-existing action_str field.
9772 (get_context_regcache): Handle fast tracepoints.
9773 (do_action_at_tracepoint) [!IN_PROCESS_AGENT]: Don't write the PC
9774 to the regcache.
9775 (fast_tracepoint_from_jump_pad_address): New.
9776 (fast_tracepoint_from_ipa_tpoint_address): New.
9777 (collecting_t): New.
9778 (force_unlock_trace_buffer): New.
9779 (fast_tracepoint_collecting): New.
9780 (collecting): New.
9781 (gdb_collect): New.
9782 (write_inferior_data_ptr): New.
9783 (target_tp_heap): New.
9784 (target_malloc): New.
9785 (download_agent_expr): New.
9786 (UALIGN): New.
9787 (download_tracepoints): New.
9788 (download_trace_state_variables): New.
9789 (upload_fast_traceframes): New.
9790 (IPA_FIRST_TRACEFRAME): New.
9791 (IPA_NEXT_TRACEFRAME_1): New.
9792 (IPA_NEXT_TRACEFRAME): New.
9793 [IN_PROCESS_AGENT]: Include sys/mman.h and fcntl.h.
9794 [IN_PROCESS_AGENT] (gdb_tp_heap_buffer, gdb_jump_pad_buffer)
9795 (gdb_jump_pad_buffer_end): New.
9796 [IN_PROCESS_AGENT] (initialize_tracepoint_ftlib): New.
9797 (initialize_tracepoint): Adjust.
9798 [IN_PROCESS_AGENT]: Allocate the IPA heap, and jump pad scratch
9799 buffer. Initialize the low module.
9800 * utils.c (PREFIX, TOOLNAME): New.
9801 (malloc_failure): Use PREFIX.
9802 (error): In the IPA, an error causes an exit.
9803 (fatal, warning): Use PREFIX.
9804 (internal_error): Use TOOLNAME.
9805 (NUMCELLS): Increase to 10.
9806 * configure, config.in: Regenerate.
9807
9808 2010-06-01 Pedro Alves <pedro@codesourcery.com>
9809
9810 * server.c (handle_query) <qSupported>: Do two passes over the
9811 qSupported string to avoid nesting strtok.
9812
9813 2010-05-28 Jan Kratochvil <jan.kratochvil@redhat.com>
9814
9815 * Makefile.in (SFILES): Add $(srcdir)/proc-service.list.
9816 (CDEPS): New.
9817 * configure.ac (RDYNAMIC): New AC_MSG_CHECKING wrapping. Test also
9818 -Wl,--dynamic-list.
9819 * configure: Regenerate.
9820 * proc-service.list: New.
9821
9822 2010-05-28 Jan Kratochvil <jan.kratochvil@redhat.com>
9823
9824 * linux-low.c (linux_core_of_thread): Fix crash on invalid CONTENT.
9825 New comment.
9826
9827 2010-05-26 Ozkan Sezer <sezeroz@gmail.com>
9828
9829 * gdbreplay.c (remote_open): Check error return from socket() call by
9830 its equality to -1 not by it being negative.
9831 * remote-utils.c (remote_open): Likewise.
9832
9833 2010-05-23 Pedro Alves <pedro@codesourcery.com>
9834
9835 * config.h: Regenerate.
9836
9837 2010-05-19 Maxim Kuvyrkov <maxim@codesourcery.com>
9838
9839 * linux-m68k-low.c (ps_get_thread_area): Don't define if kernel
9840 doesn't provide PTRACE_GET_THREAD_AREA.
9841
9842 2010-05-19 Maxim Kuvyrkov <maxim@codesourcery.com>
9843
9844 * linux-m68k-low.c: Include <asm/ptrace.h>
9845 (ps_get_thread_area): Implement.
9846
9847 2010-05-03 Doug Evans <dje@google.com>
9848
9849 * event-loop.c (struct callback_event): New struct.
9850 (callback_list): New global.
9851 (append_callback_event, delete_callback_event): New functions.
9852 (process_callback): New function.
9853 (start_event_loop): Call it.
9854 * remote-utils.c (NOT_SCHEDULED): Define.
9855 (readchar_buf, readchar_bufcnt, readchar_bufp): New static globals,
9856 moved out of readchar.
9857 (readchar): Rewrite. Call reschedule before returning.
9858 (reset_readchar): New function.
9859 (remote_close): Call it.
9860 (process_remaining, reschedule): New functions.
9861 * server.h (callback_handler_func): New typedef.
9862 (append_callback_event, delete_callback_event): Declare.
9863
9864 2010-05-03 Pedro Alves <pedro@codesourcery.com>
9865
9866 * proc-service.c (ps_pglobal_lookup): Use
9867 thread_db_look_up_one_symbol.
9868 * remote-utils.c (look_up_one_symbol): Add new `may_ask_gdb'
9869 parameter. Use it instead of all_symbols_looked_up.
9870 * server.h (struct process_info) <all_symbols_looked_up>: Delete
9871 field.
9872 (all_symbols_looked_up): Don't declare.
9873 (look_up_one_symbol): Add new `may_ask_gdb' parameter.
9874 * thread-db.c (struct thread_db) <all_symbols_looked_up>: New
9875 field.
9876 (thread_db_look_up_symbols): Adjust call to look_up_one_symbol.
9877 Set all_symbols_looked_up here.
9878 (thread_db_look_up_one_symbol): New.
9879 (thread_db_get_tls_address): Adjust.
9880 (thread_db_load_search, try_thread_db_load_1): Always allocate the
9881 thread_db object on the heap, and tentatively set it in the
9882 process structure.
9883 (thread_db_init): Don't set all_symbols_looked_up here.
9884 * linux-low.h (thread_db_look_up_one_symbol): Declare.
9885
9886 2010-05-03 Pedro Alves <pedro@codesourcery.com>
9887
9888 * linux-low.c (linux_kill, linux_detach): Adjust.
9889 (status_pending_p_callback): Remove redundant statement. Check
9890 for !TARGET_WAITIKIND_IGNORE, instead of
9891 TARGET_WAITKIND_STOPPED.
9892 (handle_tracepoints): Make sure LWP is locked. Adjust.
9893 (linux_wait_for_event_1): Adjust.
9894 (linux_cancel_breakpoints): New.
9895 (unsuspend_one_lwp): New.
9896 (unsuspend_all_lwps): New.
9897 (linux_wait_1): If finishing a step-over, unsuspend all lwps.
9898 (send_sigstop_callback): Change return type to int, add new
9899 `except' parameter and handle it.
9900 (suspend_and_send_sigstop_callback): New.
9901 (stop_all_lwps): Add new `suspend' and `expect' parameters, and
9902 pass them down. If SUSPEND, also increment the lwp's suspend
9903 count.
9904 (linux_resume_one_lwp): Add notice about resuming a suspended LWP.
9905 (need_step_over_p): Don't consider suspended LWPs.
9906 (start_step_over): Adjust.
9907 (proceed_one_lwp): Change return type to int, add new `except'
9908 parameter and handle it.
9909 (unsuspend_and_proceed_one_lwp): New.
9910 (proceed_all_lwps): Use find_inferior instead of
9911 for_each_inferior.
9912 (unstop_all_lwps): Add `unsuspend' parameter. If UNSUSPEND, them
9913 also decrement the suspend count of LWPs. Pass `except' down,
9914 instead of hacking its suspend count.
9915 (linux_pause_all): Add `freeze' parameter. Adjust.
9916 (linux_unpause_all): New.
9917 (linux_target_ops): Install linux_unpause_all.
9918 * server.c (handle_status): Adjust.
9919 * target.h (struct target_ops): New fields `unpause_all' and
9920 `cancel_breakpoints'. Add new parameter to `pause_all'.
9921 (pause_all): Add new `freeze' parameter.
9922 (unpause_all): New.
9923 (cancel_breakpoints): New.
9924 * tracepoint.c (clear_installed_tracepoints): Pause threads, and
9925 cancel breakpoints.
9926 (cmd_qtstart): Pause threads.
9927 (stop_tracing): Pause threads, and cancel breakpoints.
9928 * win32-low.c (win32_target_ops): Adjust.
9929
9930 2010-05-03 Pedro Alves <pedro@codesourcery.com>
9931
9932 * linux-low.c (linux_wait_for_event_1): Move passing the signal to
9933 the inferior right away from here...
9934 (linux_wait_1): ... to here, and adjust to check the thread's
9935 last_resume_kind instead of the lwp's step or stop_expected flags.
9936
9937 2010-05-02 Pedro Alves <pedro@codesourcery.com>
9938
9939 * README: Use consistent `GDB' and `GDBserver' spellings.
9940
9941 2010-05-02 Pedro Alves <pedro@codesourcery.com>
9942
9943 * linux-low.c (linux_kill_one_lwp): Assume the lwp is stopped.
9944 (linux_kill): Stop all lwps here. Don't delete the main lwp here.
9945 (linux_detach_one_lwp): Assume the lwp is stopped.
9946 (any_thread_of): Delete.
9947 (linux_detach): Stop all lwps here. Don't blindly delete all
9948 breakpoints.
9949 (delete_lwp_callback): New.
9950 (linux_mourn): Delete all lwps of the process that is gone.
9951 (linux_wait_1): Don't delete the last lwp of the process here.
9952 * mem-break.h (mark_breakpoints_out): Declare.
9953 * mem-break.c (mark_breakpoints_out): New.
9954 (free_all_breakpoints): Use it.
9955 * server.c (handle_target_event): If the process is gone, mark
9956 breakpoints out.
9957 * thread-db.c (struct thread_db) <create_bp>: New field.
9958 (thread_db_enable_reporting): Fix prototype. Store a thread event
9959 breakpoint reference in the thread_db struct.
9960 (thread_db_load_search): Clear the thread_db object.
9961 (try_thread_db_load_1): Ditto.
9962 (switch_to_process): New.
9963 (disable_thread_event_reporting): Use it.
9964 (remove_thread_event_breakpoints): New.
9965 (thread_db_detach, thread_db_mourn): Use it.
9966
9967 2010-05-01 Pedro Alves <pedro@codesourcery.com>
9968
9969 * linux-low.c (linux_enable_event_reporting): New.
9970 (linux_wait_for_event_1, handle_extended_wait): Use it.
9971
9972 2010-04-30 Pedro Alves <pedro@codesourcery.com>
9973
9974 * linux-low.c (linux_kill_one_lwp, linux_kill)
9975 (linux_detach_one_lwp): Adjust to send_sigstop interface change.
9976 (send_sigstop): Take an lwp_info as parameter instead. Queue a
9977 SIGSTOP even if the LWP is stopped.
9978 (send_sigstop_callback): New.
9979 (stop_all_lwps): Use send_sigstop_callback instead.
9980 (linux_resume_one_thread): Adjust.
9981 (proceed_one_lwp): Still proceed an LWP that the client has
9982 requested to stop, if we haven't reported it as stopped yet. Make
9983 sure that LWPs the client want stopped, have a pending SIGSTOP.
9984
9985 2010-04-26 Doug Evans <dje@google.com>
9986
9987 * server.c (handle_general_set): Make static.
9988
9989 * remote-utils.c (putpkt_binary_1): Call readchar instead of read.
9990 Print received char after testing for error/eof instead of before.
9991 (input_interrupt): Tweak comment.
9992
9993 2010-04-23 Doug Evans <dje@google.com>
9994
9995 * server.c (start_inferior): Print inferior argv if --debug.
9996
9997 2010-04-21 Aleksandar Ristovski <aristovski@qnx.com>
9998
9999 * Makefile.in (nto_low_h nto-low.o nto-x86-low.o): New dependency lists.
10000 * nto-x86-low.c: Include server.h
10001
10002 2010-04-20 Pierre Muller <muller@ics.u-strasbg.fr>
10003
10004 * win32-i386-low.c: Use __x86_64__ macro instead of __x86_64 to
10005 be consistent with other sources of this directory.
10006 (init_registers_amd64): Correct name of source file of this function
10007 in the comment.
10008
10009 2010-04-19 Pierre Muller <muller@ics.u-strasbg.fr>
10010
10011 * configure.srv (x86_64-*-mingw*): New configuration for Windows
10012 64-bit executables.
10013
10014 2010-04-19 Pierre Muller <muller@ics.u-strasbg.fr>
10015
10016 * win32-i386-low.c: Add 64-bit support.
10017 (CONTEXT_EXTENDED_REGISTERS): Set macro to zero if not exisiting.
10018 (init_registers_amd64): Declare.
10019 (mappings): Add 64-bit version of array.
10020 (init_windows_x86): New function.
10021 (the_low_target): Change init_arch field to init_windows_x86.
10022
10023 2010-04-19 Pierre Muller <muller@ics.u-strasbg.fr>
10024
10025 * win32-low.c: Adapt to support also 64-bit architecture.
10026 (child_xfer_memory): Use uintptr_t type for local variable `addr'.
10027 (get_image_name): Use SIZE_T type for local variable `done'.
10028 (psapi_get_dll_name): Use LPVOID type for parameter `BaseAddress'.
10029 (toolhelp_get_dll_name): Idem.
10030 (handle_load_dll): Use CORE_ADDR type for local variable `load_addr'.
10031 Use uintptr_t typecast to avoid warning.
10032 (handle_unload_dll): Use uintptr_t typecast to avoid warning.
10033 (handle_exception): Use phex_nz to avoid warning.
10034 (win32_wait): Remove unused local variable `process'.
10035
10036 2010-04-19 Pierre Muller <muller@ics.u-strasbg.fr>
10037
10038 * configure.srv (srv_amd64_regobj): Replace `x86-64-avx.o' by
10039 `amd64-avx.o'.
10040
10041 2010-04-17 Pierre Muller <muller@ics.u-strasbg.fr>
10042
10043 * configure.ac: Use `ws2_32' library for srv_mingw.
10044 * configure: Regenerate.
10045 * gdbreplay.c: Include winsock2.h instead of winsock.h.
10046 * remote-utils.c: Likewise.
10047
10048 2010-04-17 H.J. Lu <hongjiu.lu@intel.com>
10049
10050 * linux-x86-low.c (xmltarget_amd64_linux_no_xml): Define only
10051 if __x86_64__ is defined.
10052
10053 2010-04-16 Pierre Muller <muller@ics.u-strasbg.fr>
10054
10055 * configure: Regenerate.
10056
10057 2010-04-16 Pierre Muller <muller@ics.u-strasbg.fr>
10058
10059 * server.c (handle_query): Handle 'qGetTIBAddr' query.
10060 * target.h (target_ops): New get_tib_address field.
10061 * win32-low.h (win32_thread_info): Add thread_local_base field.
10062 * win32-low.c (child_add_thread): Add tlb argument.
10063 Set thread_local_base field to TLB.
10064 (get_child_debug_event): Adapt to child_add_thread change.
10065 (win32_get_tib_address): New function.
10066 (win32_target_ops): Set get_tib_address field to
10067 win32_get_tib_address.
10068 * linux-low.c (linux_target_ops): Set get_tib_address field to NULL.
10069
10070 2010-04-12 Pedro Alves <pedro@codesourcery.com>
10071
10072 * linux-low.c (linux_mourn): Also remove the process.
10073 * server.c (handle_target_event): Don't remove the process here.
10074 * nto-low.c (nto_mourn): New.
10075 (nto_target_ops): Install it.
10076 * spu-low.c (spu_mourn): New.
10077 (spu_target_ops): Install it.
10078 * win32-low.c (win32_mourn): New.
10079 (win32_target_ops): Install it.
10080
10081 2010-04-12 Pedro Alves <pedro@codesourcery.com>
10082
10083 * server.h (buffer_xml_printf): Remove redundant `;'.
10084
10085 2010-04-12 Pedro Alves <pedro@codesourcery.com>
10086
10087 * regcache.c (set_register_cache): Invalidate regcaches before
10088 changing the register cache layout.
10089 (regcache_invalidate_one): Allow a NULL regcache.
10090 * linux-x86-low.c (x86_linux_update_xmltarget): Invalidate
10091 regcaches before changing the register cache layout or the target
10092 regsets.
10093
10094 2010-04-12 H.J. Lu <hongjiu.lu@intel.com>
10095
10096 * linux-x86-low.c (x86_linux_update_xmltarget): Avoid unused
10097 variable warning on Linux/x86-64.
10098
10099 2010-04-11 Pedro Alves <pedro@codesourcery.com>
10100
10101 GDBserver disconnected tracing support.
10102
10103 * linux-low.c (linux_remove_process): Delete.
10104 (add_lwp): Don't set last_resume_kind here.
10105 (linux_kill): Use `mourn'.
10106 (linux_detach): Use `thread_db_detach', and `mourn'.
10107 (linux_mourn): New.
10108 (linux_attach_lwp_1): Adjust comment.
10109 (linux_attach): last_resume_kind moved the thread_info; adjust.
10110 (status_pending_p_callback): Adjust.
10111 (linux_wait_for_event_1): Adjust.
10112 (count_events_callback, select_singlestep_lwp_callback)
10113 (select_event_lwp_callback, cancel_breakpoints_callback)
10114 (db_wants_lwp_stopped, linux_wait_1, need_step_over_p)
10115 (proceed_one_lwp): Adjust.
10116 (linux_async): Add debug output.
10117 (linux_thread_stopped): New.
10118 (linux_pause_all): New.
10119 (linux_target_ops): Install linux_mourn, linux_thread_stopped and
10120 linux_pause_all.
10121 * linux-low.h (struct lwp_info): Delete last_resume_kind field.
10122 (thread_db_free): Delete declaration.
10123 (thread_db_detach, thread_db_mourn): Declare.
10124 * thread-db.c (thread_db_init): Use thread_db_mourn.
10125 (thread_db_free): Delete, split in two.
10126 (disable_thread_event_reporting): New.
10127 (thread_db_detach): New.
10128 (thread_db_mourn): New.
10129
10130 * server.h (struct thread_info) <last_resume_kind>: New field.
10131 <attached>: Add comment.
10132 <gdb_detached>: New field.
10133 (handler_func): Change return type to int.
10134 (handle_serial_event, handle_target_event): Ditto.
10135 (gdb_connected): Declare.
10136 (tracing): Delete.
10137 (disconnected_tracing): Declare.
10138 (stop_tracing): Declare.
10139
10140 * server.c (handle_query) <qSupported>: Report support for
10141 disconnected tracing.
10142 (queue_stop_reply_callback): Account for running threads.
10143 (gdb_wants_thread_stopped): New.
10144 (gdb_wants_all_threads_stopped): New.
10145 (gdb_reattached_process): New.
10146 (handle_status): Clear the `gdb_detached' flag of all processes.
10147 In all-stop, stop all threads.
10148 (main): Be sure to leave tfind mode. Handle disconnected tracing.
10149 (process_serial_event): If the remote connection breaks, or if an
10150 exit was forced with "monitor exit", force an event loop exit.
10151 Handle disconnected tracing on detach.
10152 (handle_serial_event): Adjust.
10153 (handle_target_event): If GDB isn't connected, forward events back
10154 to the inferior, unless the last process exited, in which case,
10155 exit gdbserver. Adjust interface.
10156
10157 * remote-utils.c (remote_open): Don't block in accept. Instead
10158 register an event loop source on the listen socket file
10159 descriptor. Refactor bits into ...
10160 (listen_desc): ... this new global.
10161 (gdb_connected): ... this new function.
10162 (enable_async_notification): ... this new function.
10163 (handle_accept_event): ... this new function.
10164 (remote_close): Clear remote_desc.
10165
10166 * inferiors.c (add_thread): Set the new thread's last_resume_kind.
10167
10168 * target.h (struct target_ops) <mourn, thread_stopped, pause_all>:
10169 New fields.
10170 (mourn_inferior): Define.
10171 (target_process_qsupported): Avoid the dangling else problem.
10172 (thread_stopped): Define.
10173 (pause_all): Define.
10174 (target_waitstatus_to_string): Declare.
10175 * target.c (target_waitstatus_to_string): New.
10176
10177 * tracepoint.c (tracing): Make extern.
10178 (disconnected_tracing): New.
10179 (stop_tracing): Make extern. Handle tracing stops due to GDB
10180 disconnecting.
10181 (cmd_qtdisconnected): New.
10182 (cmd_qtstatus): Report disconnected tracing status in trace reply.
10183 (handle_tracepoint_general_set): Handle QTDisconnected.
10184
10185 * event-loop.c (event_handler_func): Change return type to int.
10186 (process_event): Bail out if the event handler wants the event
10187 loop to stop.
10188 (handle_file_event): Ditto.
10189 (start_event_loop): Bail out if the event handler wants the event
10190 loop to stop.
10191
10192 * nto-low.c (nto_target_ops): Adjust.
10193 * spu-low.c (spu_wait): Don't remove the process here.
10194 (spu_target_ops): Adjust.
10195 * win32-low.c (win32_wait): Don't remove the process here.
10196 (win32_target_ops): Adjust.
10197
10198 2010-04-11 Pedro Alves <pedro@codesourcery.com>
10199
10200 * regcache.c (realloc_register_cache): Invalidate inferior's
10201 regcache before recreating it.
10202
10203 2010-04-09 Pedro Alves <pedro@codesourcery.com>
10204
10205 * tracepoint.c (cmd_qtstatus): Report trace buffer circularity.
10206
10207 2010-04-09 Stan Shebs <stan@codesourcery.com>
10208 Pedro Alves <pedro@codesourcery.com>
10209
10210 * server.h (LONGEST): New.
10211 (struct thread_info) <while_stepping>: New field.
10212 (unpack_varlen_hex, xrealloc, pulongest, plongest, phex_nz):
10213 Declare.
10214 (initialize_tracepoint, handle_tracepoint_general_set)
10215 (handle_tracepoint_query, tracepoint_finished_step)
10216 (tracepoint_was_hit, release_while_stepping_state_list):
10217 (current_traceframe): Declare.
10218 * server.c (handle_general_set): Handle tracepoint packets.
10219 (read_memory): New.
10220 (write_memory): New.
10221 (handle_search_memory_1): Use read_memory.
10222 (handle_query): Report support for conditional tracepoints, trace
10223 state variables, and tracepoint sources. Handle tracepoint
10224 queries.
10225 (main): Initialize the tracepoints module.
10226 (process_serial_event): Handle traceframe reads/writes.
10227
10228 * linux-low.c (handle_tracepoints): New.
10229 (linux_wait_1): Call it.
10230 (linux_resume_one_lwp): Handle while-stepping.
10231 (linux_supports_tracepoints, linux_read_pc, linux_write_pc): New.
10232 (linux_target_ops): Install them.
10233 * linux-low.h (struct linux_target_ops) <supports_tracepoints>:
10234 New field.
10235 * linux-x86-low.c (x86_supports_tracepoints): New.
10236 (the_low_target). Install it.
10237
10238 * mem-break.h (delete_breakpoint): Declare.
10239 * mem-break.c (delete_breakpoint): Make external.
10240
10241 * target.h (struct target_ops): Add `supports_tracepoints',
10242 `read_pc', and `write_pc' fields.
10243 (target_supports_tracepoints): Define.
10244 * utils.c (xrealloc, decimal2str, pulongest, plongest, thirty_two)
10245 (phex_nz): New.
10246
10247 * regcache.h (struct regcache) <registers_owned>: New field.
10248 (init_register_cache, regcache_cpy): Declare.
10249 (regcache_read_pc, regcache_write_pc): Declare.
10250 (register_cache_size): Declare.
10251 (supply_regblock): Declare.
10252 * regcache.c (init_register_cache): New.
10253 (new_register_cache): Use it.
10254 (regcache_cpy): New.
10255 (register_cache_size): New.
10256 (supply_regblock): New.
10257 (regcache_read_pc, regcache_write_pc): New.
10258
10259 * tracepoint.c: New.
10260
10261 * Makefile.in (OBS): Add tracepoint.o.
10262 (tracepoint.o): New rule.
10263
10264 2010-04-08 H.J. Lu <hongjiu.lu@intel.com>
10265
10266 * Makefile.in (clean): Also remove i386-mmx.c i386-mmx-linux.c.
10267 (i386-mmx.o): New.
10268 (i386-mmx.c): Likewise.
10269 (i386-mmx-linux.o): Likewise.
10270 (i386-mmx-linux.c): Likewise.
10271
10272 * configure.srv (srv_i386_regobj): Add i386-mmx.o.
10273 (srv_i386_linux_regobj): Add i386-mmx-linux.o.
10274 (srv_i386_xmlfiles): Add i386/i386-mmx.xml.
10275 (srv_i386_linux_xmlfiles): Add i386/i386-mmx-linux.xml.
10276
10277 * linux-x86-low.c (init_registers_i386_mmx_linux): New.
10278 (x86_linux_update_xmltarget): Call init_registers_i386_mmx_linux
10279 and return if ptrace PTRACE_GETFPXREGS failed in 32bit.
10280
10281 2010-04-07 H.J. Lu <hongjiu.lu@intel.com>
10282
10283 * Makefile.in (clean): Updated.
10284 (i386-avx.o): New.
10285 (i386-avx.c): Likewise.
10286 (i386-avx-linux.o): Likewise.
10287 (i386-avx-linux.c): Likewise.
10288 (amd64-avx.o): Likewise.
10289 (amd64-avx.c): Likewise.
10290 (amd64-avx-linux.o): Likewise.
10291 (amd64-avx-linux.c): Likewise.
10292
10293 * configure.srv (srv_i386_regobj): Add i386-avx.o.
10294 (srv_i386_linux_regobj): Add i386-avx-linux.o.
10295 (srv_amd64_regobj): Add amd64-avx.o.
10296 (srv_amd64_linux_regobj): Add amd64-avx-linux.o.
10297 (srv_i386_32bit_xmlfiles): Add i386/32bit-avx.xml.
10298 (srv_i386_64bit_xmlfiles): Add i386/64bit-avx.xml.
10299 (srv_i386_xmlfiles): Add i386/i386-avx.xml.
10300 (srv_amd64_xmlfiles): Add i386/amd64-avx.xml.
10301 (srv_i386_linux_xmlfiles): Add i386/i386-avx-linux.xml.
10302 (srv_amd64_linux_xmlfiles): Add i386/amd64-avx-linux.xml.
10303
10304 * i387-fp.c: Include "i386-xstate.h".
10305 (i387_xsave): New.
10306 (i387_cache_to_xsave): Likewise.
10307 (i387_xsave_to_cache): Likewise.
10308 (x86_xcr0): Likewise.
10309
10310 * i387-fp.h (i387_cache_to_xsave): Likewise.
10311 (i387_xsave_to_cache): Likewise.
10312 (x86_xcr0): Likewise.
10313
10314 * linux-arm-low.c (target_regsets): Initialize nt_type to 0.
10315 * linux-crisv32-low.c (target_regsets): Likewise.
10316 * linux-m68k-low.c (target_regsets): Likewise.
10317 * linux-mips-low.c (target_regsets): Likewise.
10318 * linux-ppc-low.c (target_regsets): Likewise.
10319 * linux-s390-low.c (target_regsets): Likewise.
10320 * linux-sh-low.c (target_regsets): Likewise.
10321 * linux-sparc-low.c (target_regsets): Likewise.
10322 * linux-xtensa-low.c (target_regsets): Likewise.
10323
10324 * linux-low.c: Include <sys/uio.h>.
10325 (regsets_fetch_inferior_registers): Support nt_type.
10326 (regsets_store_inferior_registers): Likewise.
10327 (linux_process_qsupported): New.
10328 (linux_target_ops): Add linux_process_qsupported.
10329
10330 * linux-low.h (regset_info): Add nt_type.
10331 (linux_target_ops): Add process_qsupported.
10332
10333 * linux-x86-low.c: Include "i386-xstate.h", "elf/common.h"
10334 and <sys/uio.h>.
10335 (init_registers_i386_avx_linux): New.
10336 (init_registers_amd64_avx_linux): Likewise.
10337 (xmltarget_i386_linux_no_xml): Likewise.
10338 (xmltarget_amd64_linux_no_xml): Likewise.
10339 (PTRACE_GETREGSET): Likewise.
10340 (PTRACE_SETREGSET): Likewise.
10341 (x86_fill_xstateregset): Likewise.
10342 (x86_store_xstateregset): Likewise.
10343 (use_xml): Likewise.
10344 (x86_linux_update_xmltarget): Likewise.
10345 (x86_linux_process_qsupported): Likewise.
10346 (target_regsets): Add NT_X86_XSTATE entry and Initialize nt_type.
10347 (x86_arch_setup): Don't call init_registers_amd64_linux nor
10348 init_registers_i386_linux here. Call
10349 x86_linux_update_xmltarget.
10350 (the_low_target): Add x86_linux_process_qsupported.
10351
10352 * server.c (handle_query): Call target_process_qsupported.
10353
10354 * target.h (target_ops): Add process_qsupported.
10355 (target_process_qsupported): New.
10356
10357 2010-04-03 Pedro Alves <pedro@codesourcery.com>
10358
10359 * inferiors.c (add_thread): Set last_status kind to
10360 TARGET_WAITKIND_IGNORE.
10361 * linux-low.c (cancel_breakpoint): Remove unnecessary regcache
10362 fetch. Use ptid_of. Avoid unnecessary get_lwp_thread calls.
10363 (linux_wait_1): Move `thread' local definition to block that uses
10364 it. Don't NULL initialize `event_child'.
10365 (linux_resume_one_thread): Avoid unnecessary get_lwp_thread calls.
10366 Alway set the thread's last_status to TARGET_WAITKIND_IGNORE.
10367 * linux-x86-low.c (x86_breakpoint_at): Read raw memory.
10368
10369 2010-04-01 Pedro Alves <pedro@codesourcery.com>
10370
10371 * linux-low.c (get_stop_pc): Don't adjust the PC if stopped with
10372 an extended waitstatus, or by a watchpoint.
10373 (cancel_breakpoints_callback): Don't cancel a breakpoint if the
10374 thread was stepping or has been stopped by a watchpoint.
10375
10376 2010-04-01 Pedro Alves <pedro@codesourcery.com>
10377
10378 * mem-break.c (struct raw_breakpoint): New field shlib_disabled.
10379 (set_gdb_breakpoint_at): If GDB is inserting a breakpoint on top
10380 of another, then delete the previous, and validate all
10381 breakpoints.
10382 (validate_inserted_breakpoint): New.
10383 (delete_disabled_breakpoints): New.
10384 (validate_breakpoints): New.
10385 (check_mem_read): Validate breakpoints before trusting their
10386 shadow. Delete disabled breakpoints.
10387 (check_mem_write): Validate breakpoints before trusting they
10388 should be inserted. Delete disabled breakpoints.
10389 * mem-break.h (validate_breakpoints):
10390 * server.c (handle_query): Validate breakpoints when we see a
10391 qSymbol query.
10392
10393 2010-04-01 Pedro Alves <pedro@codesourcery.com>
10394
10395 * linux-low.c (linux_wait_1): Avoid setting need_step_over is
10396 there's a GDB breakpoint at stop_pc. Always report a trap to GDB
10397 if we could tell there's a GDB breakpoint at stop_pc.
10398 (need_step_over_p): Don't do a step over if we find a GDB
10399 breakpoint at the resume PC.
10400
10401 * mem-break.c (struct raw_breakpoint): New.
10402 (enum bkpt_type): New type `gdb_breakpoint'.
10403 (struct breakpoint): Delete the `PC', `old_data' and `inserted'
10404 fields. New field `raw'.
10405 (find_raw_breakpoint_at): New.
10406 (set_raw_breakpoint_at): Handle refcounting. Create a raw
10407 breakpoint instead.
10408 (set_breakpoint_at): Adjust.
10409 (delete_raw_breakpoint): New.
10410 (release_breakpoint): New.
10411 (delete_breakpoint): Rename to...
10412 (delete_breakpoint_1): ... this. Add proc parameter. Use
10413 release_breakpoint. Return ENOENT.
10414 (delete_breakpoint): Reimplement.
10415 (find_breakpoint_at): Delete.
10416 (find_gdb_breakpoint_at): New.
10417 (delete_breakpoint_at): Delete.
10418 (set_gdb_breakpoint_at): New.
10419 (delete_gdb_breakpoint_at): New.
10420 (gdb_breakpoint_here): New.
10421 (set_reinsert_breakpoint): Use release_breakpoint.
10422 (uninsert_breakpoint): Rename to ...
10423 (uninsert_raw_breakpoint): ... this.
10424 (uninsert_breakpoints_at): Adjust to handle raw breakpoints.
10425 (reinsert_raw_breakpoint): Change parameter type to
10426 raw_breakpoint.
10427 (reinsert_breakpoints_at): Adjust to handle raw breakpoints
10428 instead.
10429 (check_breakpoints): Adjust. Use release_breakpoint.
10430 (breakpoint_here): Rewrite using find_raw_breakpoint_at.
10431 (breakpoint_inserted_here): Ditto.
10432 (check_mem_read): Adjust to iterate over raw breakpoints instead.
10433 Don't trust the breakpoint's shadow if it is not inserted.
10434 (check_mem_write): Adjust to iterate over raw breakpoints instead.
10435 (delete_all_breakpoints): Adjust.
10436 (free_all_breakpoints): Mark all breakpoints as uninserted, and
10437 use delete_breakpoint_1.
10438
10439 * mem-break.h (breakpoints_supported): Delete declaration.
10440 (set_gdb_breakpoint_at): Declare.
10441 (gdb_breakpoint_here): Declare.
10442 (delete_breakpoint_at): Delete.
10443 (delete_gdb_breakpoint_at): Declare.
10444
10445 * server.h (struct raw_breakpoint): Forward declare.
10446 (struct process_info): New field `raw_breakpoints'.
10447
10448 * linux-x86-low.c (x86_insert_point, x86_remote_point): Handle Z0
10449 breakpoints.
10450
10451 2010-03-24 Pedro Alves <pedro@codesourcery.com>
10452
10453 * linux-low.c (status_pending_p_callback): Fix comment.
10454 (linux_wait_for_event_1): Move most of the internal breakpoint
10455 handling from here...
10456 (linux_wait_1): ... to here.
10457 (count_events_callback): New.
10458 (select_singlestep_lwp_callback): New.
10459 (select_event_lwp_callback): New.
10460 (cancel_breakpoints_callback): New.
10461 (select_event_lwp): New.
10462 (linux_wait_1): Simplify internal breakpoint handling. Give equal
10463 priority to all LWPs that have had events that should be reported
10464 to the client. Cancel breakpoints when about to reporting the
10465 event to the client, not while stopping lwps. No longer cancel
10466 finished single-steps here.
10467 (cancel_finished_single_step): Delete.
10468 (cancel_finished_single_steps): Delete.
10469
10470 2010-03-24 Pedro Alves <pedro@codesourcery.com>
10471
10472 * mem-break.c (enum bkpt_type): New.
10473 (struct breakpoint): New field `type'.
10474 (set_breakpoint_at): Change return type to struct breakpoint
10475 pointer. Set type to `other_breakpoint' by default.
10476 (delete_breakpoint): Rewrite, supporting more than one breakpoint
10477 in the breakpoint list.
10478 (delete_reinsert_breakpoints): Only delete reinsert breakpoints.
10479 (reinsert_breakpoint): Rename to ...
10480 (reinsert_raw_breakpoint): ... this.
10481 (reinsert_breakpoints_at): Adjust.
10482 * mem-break.h (struct breakpoint): Declare.
10483 (set_breakpoint_at): Change return type to struct breakpoint
10484 pointer.
10485
10486 2010-03-24 Pedro Alves <pedro@codesourcery.com>
10487
10488 * server.c (handle_query): Assign, not compare.
10489
10490 2010-03-24 Pedro Alves <pedro@codesourcery.com>
10491
10492 Teach linux gdbserver to step-over-breakpoints.
10493
10494 * linux-low.c (can_hardware_single_step): New.
10495 (supports_breakpoints): New.
10496 (handle_extended_wait): If stopping threads, read the stop pc of
10497 the new cloned LWP.
10498 (get_pc): New.
10499 (get_stop_pc): Add `lwp' parameter. Handle it. Bail out if the
10500 low target doesn't support retrieving the PC.
10501 (add_lwp): Set last_resume_kind to resume_continue.
10502 (linux_attach_lwp_1): Adjust comments. Always set stop_expected.
10503 (linux_attach): Don't clear stop_expected. Set the lwp's
10504 last_resume_kind to resume_stop.
10505 (linux_detach_one_lwp): Don't check for removed breakpoints.
10506 (check_removed_breakpoint): Delete.
10507 (status_pending_p): Rename to ...
10508 (status_pending_p_callback): ... this. Don't check for removed
10509 breakpoints. Don't consider threads that are stopped from GDB's
10510 perspective.
10511 (linux_wait_for_lwp): Always read the stop_pc here.
10512 (cancel_breakpoint): New.
10513 (step_over_bkpt): New global.
10514 (linux_wait_for_event_1): Implement stepping over breakpoints.
10515 (gdb_wants_lwp_stopped): New.
10516 (gdb_wants_all_stopped): New.
10517 (linux_wait_1): Tag threads as gdb-wants-stopped. Cancel finished
10518 single-step traps here. Store the thread's last reported target
10519 wait status.
10520 (send_sigstop): Don't clear stop_expected. Always set it,
10521 instead.
10522 (mark_lwp_dead): Remove reference to pending_is_breakpoint.
10523 (cancel_finished_single_step): New.
10524 (cancel_finished_single_steps): New.
10525 (wait_for_sigstop): Don't cancel finished single-step traps here.
10526 (linux_resume_one_lwp): Don't check for removed breakpoints.
10527 Don't set `step' on non-hardware step archs.
10528 (linux_set_resume_request): Ignore resume_stop requests if already
10529 stopping or stopped. Set the lwp's last_resume_kind.
10530 (resume_status_pending_p): Don't check for removed breakpoints.
10531 (need_step_over_p): New.
10532 (start_step_over): New.
10533 (finish_step_over): New.
10534 (linux_resume_one_thread): Always queue a sigstop for resume_stop
10535 requests. Clear the thread's last reported target waitstatus.
10536 Don't use the `suspended' flag. Don't consider pending breakpoints.
10537 (linux_resume): Start a step-over if necessary.
10538 (proceed_one_lwp): New.
10539 (proceed_all_lwps): New.
10540 (unstop_all_lwps): New.
10541 * linux-low.h (struct lwp_info): Rewrite comment for the
10542 `suspended' flag. Add the `stop_pc' field. Delete the
10543 `pending_stop_pc' field. Tweak the `stepping' flag's comment.
10544 Add `'last_resume_kind' and `need_step_over' fields.
10545 * inferiors.c (struct thread_info): Delete, moved elsewhere.
10546 * mem-break.c (struct breakpoint): Delete `reinserting' flag.
10547 Delete `breakpoint_to_reinsert' field. New flag `inserted'.
10548 (set_raw_breakpoint_at): New.
10549 (set_breakpoint_at): Rewrite to use it.
10550 (reinsert_breakpoint_handler): Delete.
10551 (set_reinsert_breakpoint): New.
10552 (reinsert_breakpoint_by_bp): Delete.
10553 (delete_reinsert_breakpoints): New.
10554 (uninsert_breakpoint): Rewrite.
10555 (uninsert_breakpoints_at): New.
10556 (reinsert_breakpoint): Rewrite.
10557 (reinsert_breakpoints_at): New.
10558 (check_breakpoints): Rewrite.
10559 (breakpoint_here): New.
10560 (breakpoint_inserted_here): New.
10561 (check_mem_read): Adjust.
10562 * mem-break.h (breakpoints_supported, breakpoint_here)
10563 (breakpoint_inserted_here, set_reinsert_breakpoint): Declare.
10564 (reinsert_breakpoint_by_bp): Delete declaration.
10565 (delete_reinsert_breakpoints): Declare.
10566 (reinsert_breakpoint): Delete declaration.
10567 (reinsert_breakpoints_at): Declare.
10568 (uninsert_breakpoint): Delete declaration.
10569 (uninsert_breakpoints_at): Declare.
10570 (check_breakpoints): Adjust prototype.
10571 * server.h: Adjust include order.
10572 (struct thread_info): Declare here. Add a `last_status' field.
10573
10574 2010-03-23 Michael Snyder <msnyder@vmware.com>
10575
10576 * server.c (crc32): New function.
10577 (handle_query): Add handling for 'qCRC:' request.
10578
10579 2010-03-23 Pedro Alves <pedro@codesourcery.com>
10580
10581 * linux-x86-low.c (x86_linux_prepare_to_resume): Clear DR6 if the
10582 lwp had been stopped by a watchpoint.
10583
10584 2010-03-16 Pedro Alves <pedro@codesourcery.com>
10585
10586 * server.h (internal_error): Declare.
10587 (gdb_assert, ASSERT_FUNCTION, gdb_assert_fail): Define.
10588 * utils.c (internal_error): New function.
10589
10590 2010-03-15 Andreas Schwab <schwab@redhat.com>
10591
10592 * configure.srv: Fix typo setting srv_regobj.
10593
10594 2010-03-15 Pedro Alves <pedro@codesourcery.com>
10595
10596 * linux-low.c (fetch_register): Avoid passing a non string literal
10597 format to `error'.
10598 (usr_store_inferior_registers): Ditto.
10599
10600 2010-03-14 Pedro Alves <pedro@codesourcery.com>
10601
10602 * linux-low.c (linux_write_memory): Bail out early if peeking
10603 memory failed.
10604
10605 2010-03-14 Pedro Alves <pedro@codesourcery.com>
10606
10607 * linux-low.h (struct lwp_info): New fields
10608 `stopped_by_watchpoint' and `stopped_data_address'.
10609 * linux-low.c (linux_wait_for_lwp): Check for watchpoint triggers
10610 here, and cache them in the lwp object.
10611 (wait_for_sigstop): Check stopped_by_watchpoint lwp field
10612 directly.
10613 (linux_resume_one_lwp): Clear the lwp's stopped_by_watchpoint
10614 field.
10615 (linux_stopped_by_watchpoint): Rewrite.
10616 (linux_stopped_data_address): Rewrite.
10617
10618 2010-03-06 Simo Melenius <simo.melenius@iki.fi>
10619
10620 * linux-low.c (linux_wait_for_lwp): Fetch the regcache after
10621 switching the current inferior, not before.
10622
10623 2010-03-01 H.J. Lu <hongjiu.lu@intel.com>
10624
10625 * Makefile.in (clean): Replace reg-i386.c, reg-x86-64.c,
10626 reg-i386-linux.c and reg-x86-64-linux.c with i386.c, amd64.c,
10627 i386-linux.c and amd64-linux.c.
10628 (reg-i386.o): Removed.
10629 (reg-i386.c): Likewise.
10630 (reg-i386-linux.o): Likewise.
10631 (reg-i386-linux.c): Likewise.
10632 (reg-x86-64.o): Likewise.
10633 (reg-x86-64.c): Likewise.
10634 (reg-x86-64-linux.o): Likewise.
10635 (reg-x86-64-linux.c): Likewise.
10636 (i386.o): New.
10637 (i386.c): Likewise.
10638 (i386-linux.o): Likewise.
10639 (i386-linux.c): Likewise.
10640 (amd64.o): Likewise.
10641 (amd64.c): Likewise.
10642 (amd64-linux.o): Likewise.
10643 (amd64-linux.c): Likewise.
10644
10645 * configure.srv (srv_i386_regobj): New.
10646 (srv_i386_linux_regobj): Likewise.
10647 (srv_amd64_regobj): Likewise.
10648 (srv_amd64_linux_regobj): Likewise.
10649 (srv_i386_32bit_xmlfiles): Likewise.
10650 (srv_i386_64bit_xmlfiles): Likewise.
10651 (srv_i386_xmlfiles): Likewise.
10652 (srv_amd64_xmlfiles): Likewise.
10653 (srv_i386_linux_xmlfiles): Likewise.
10654 (srv_amd64_linux_xmlfiles): Likewise.
10655 (i[34567]86-*-cygwin*): Set srv_regobj to $srv_i386_regobj. Set
10656 srv_xmlfiles to $srv_i386_xmlfiles.
10657 (i[34567]86-*-mingw32ce*): Likewise.
10658 (i[34567]86-*-mingw*): Likewise.
10659 (i[34567]86-*-nto*): Likewise.
10660 (i[34567]86-*-linux*): Set srv_regobj to $srv_i386_linux_regobj
10661 and $srv_amd64_linux_regobj. Set srv_xmlfiles to
10662 $srv_i386_linux_xmlfiles and $srv_amd64_linux_xmlfiles.
10663 (x86_64-*-linux*): Likewise.
10664
10665 * linux-x86-low.c (init_registers_x86_64_linux): Removed.
10666 (init_registers_amd64_linux): New.
10667 (x86_arch_setup): Replace init_registers_x86_64_linux with
10668 init_registers_amd64_linux.
10669
10670 2010-02-23 Maxim Kuvyrkov <maxim@codesourcery.com>
10671
10672 * configure.ac: Check for libdl. If it is not available link against
10673 static libthread_db.
10674 * configure: Regenerate.
10675
10676 2010-02-22 Pedro Alves <pedro@codesourcery.com>
10677
10678 PR9605
10679
10680 * i386-low.c (i386_length_and_rw_bits): Throw a fatal error if
10681 handing a read watchpoint.
10682 (i386_low_insert_watchpoint): Read watchpoints aren't supported.
10683
10684 2010-02-12 Doug Evans <dje@google.com>
10685
10686 * linux-low.c (linux_supports_tracefork_flag): Document.
10687 (linux_look_up_symbols): Add comment.
10688
10689 2010-02-03 H.J. Lu <hongjiu.lu@intel.com>
10690
10691 * regcache.c (supply_register): Clear regcache if buf is NULL.
10692
10693 2010-02-02 Nicolas Roche <roche@sourceware.org>
10694 Joel Brobecker <brobecker@adacore.com>
10695
10696 * inferiors.c (find_inferior): Add function documentation.
10697 (unloaded_dll): Handle the case where the unloaded dll has not
10698 been previously registered in the dll list.
10699
10700 2010-02-01 Daniel Jacobowitz <dan@codesourcery.com>
10701
10702 * linux-arm-low.c (thumb_breakpoint_len): Delete.
10703 (thumb2_breakpoint): New.
10704 (arm_breakpoint_at): Check for Thumb-2 breakpoints.
10705
10706 2010-01-29 Daniel Jacobowitz <dan@codesourcery.com>
10707
10708 * linux-low.c (get_stop_pc): Check for SIGTRAP.
10709 (linux_wait_for_event_1): Handle SIGILL and SIGSEGV as possible
10710 breakpoints.
10711
10712 2010-01-21 Pedro Alves <pedro@codesourcery.com>
10713
10714 * linux-ppc-low.c (ppc_arch_setup): Adjust to regcache changes.
10715
10716 2010-01-21 Jan Kratochvil <jan.kratochvil@redhat.com>
10717
10718 * linux-s390-low.c (s390_collect_ptrace_register)
10719 (s390_supply_ptrace_register): Adjust it for the new regcache parameter.
10720
10721 2010-01-21 Doug Evans <dje@google.com>
10722
10723 * linux-low.c (PTRACE_ARG3_TYPE): Change from long to void*.
10724 (PTRACE_ARG4_TYPE): New macro.
10725 (handle_extended_wait): Cast ptrace arg4 to PTRACE_ARG4_TYPE.
10726 (linux_wait_for_event_1, linux_resume_one_lwp): Ditto.
10727 (fetch_register): Cast to uintptr_t before casting to PTRACE_ARG3_TYPE.
10728 (usr_store_inferior_registers): Ditto.
10729 (linux_read_memory, linux_write_memory): Ditto.
10730 (linux_test_for_tracefork): Ditto.
10731
10732 * linux-arm-low.c: Remove redundant include of gdb_proc_service.h.
10733 Only include elf.h if gdb_proc_service.h didn't include linux/elf.h.
10734
10735 2010-01-21 Pedro Alves <pedro@codesourcery.com>
10736
10737 * proc-service.c (ps_lgetregs): Don't refetch registers from the
10738 target.
10739
10740 2010-01-21 Pedro Alves <pedro@codesourcery.com>
10741
10742 * spu-low.c (spu_fetch_registers, spu_store_registers): Change
10743 prototype to take a regcache. Adjust.
10744
10745 2010-01-20 Pedro Alves <pedro@codesourcery.com>
10746
10747 * regcache.h (struct thread_info): Forward declare.
10748 (struct regcache): New.
10749 (new_register_cache): Adjust prototype.
10750 (get_thread_regcache): Declare.
10751 (free_register_cache): Adjust prototype.
10752 (registers_to_string, registers_from_string): Ditto.
10753 (supply_register, supply_register_by_name, collect_register)
10754 (collect_register_as_string, collect_register_by_name): Ditto.
10755 * regcache.c (struct inferior_regcache_data): Delete.
10756 (get_regcache): Rename to ...
10757 (get_thread_regcache): ... this. Adjust. Switch inferior before
10758 fetching registers.
10759 (regcache_invalidate_one): Adjust.
10760 (regcache_invalidate): Fix prototype.
10761 (new_register_cache): Return the new register cache.
10762 (free_register_cache): Change prototype.
10763 (realloc_register_cache): Adjust.
10764 (registers_to_string): Change prototype to take a regcache. Adjust.
10765 (registers_from_string): Ditto.
10766 (register_data): Ditto.
10767 (supply_register): Ditto.
10768 (supply_register_by_name): Ditto.
10769 (collect_register): Ditto.
10770 (collect_register_as_string): Ditto.
10771 (collect_register_by_name): Ditto.
10772 * server.c (process_serial_event): Adjust.
10773 * linux-low.h (regset_fill_func, regset_store_func): Change
10774 prototype.
10775 (get_pc, set_pc, collect_ptrace_register, supply_ptrace_register):
10776 Change prototype.
10777 * linux-low.c (get_stop_pc): Adjust.
10778 (check_removed_breakpoint): Adjust.
10779 (linux_wait_for_event): Adjust.
10780 (linux_resume_one_lwp): Adjust.
10781 (fetch_register): Add regcache parameter. Adjust.
10782 (usr_store_inferior_registers): Ditto.
10783 (regsets_fetch_inferior_registers): Ditto.
10784 (regsets_store_inferior_registers): Ditto.
10785 (linux_fetch_registers, linux_store_registers): Ditto.
10786 * i387-fp.c (i387_cache_to_fsave): Change prototype to take a
10787 regcache. Adjust.
10788 (i387_fsave_to_cache, i387_cache_to_fxsave, i387_fxsave_to_cache):
10789 Ditto.
10790 * i387-fp.h (i387_cache_to_fsave, i387_fsave_to_cache): Change
10791 prototype to take a regcache.
10792 (i387_cache_to_fxsave, i387_fxsave_to_cache): Ditto.
10793 * remote-utils.c (convert_ascii_to_int, outreg)
10794 (prepare_resume_reply): Change prototype to take a regcache.
10795 Adjust.
10796 * target.h (struct target_ops) <fetch_registers, store_registers>:
10797 Change prototype to take a regcache.
10798 (fetch_inferior_registers, store_inferior_registers): Change
10799 prototype to take a regcache. Adjust.
10800 * proc-service.c (ps_lgetregs): Adjust.
10801 * linux-x86-low.c (x86_fill_gregset, x86_store_gregset)
10802 (x86_fill_fpregset, x86_store_fpregset, x86_fill_fpxregset)
10803 (x86_store_fpxregset, x86_get_pc, x86_set_pc): Change prototype to
10804 take a regcache. Adjust.
10805 * linux-arm-low.c (arm_fill_gregset, arm_store_gregset)
10806 (arm_fill_wmmxregset, arm_store_wmmxregset, arm_fill_vfpregset)
10807 (arm_store_vfpregset, arm_get_pc, arm_set_pc):
10808 (arm_breakpoint_at): Change prototype to take a regcache. Adjust.
10809 * linux-cris-low.c (cris_get_pc, cris_set_pc)
10810 (cris_cannot_fetch_register):
10811 (cris_breakpoint_at): Change prototype to take a regcache.
10812 Adjust.
10813 * linux-crisv32-low.c (cris_get_pc, cris_set_pc,
10814 cris_reinsert_addr, cris_write_data_breakpoint): Change prototype
10815 to take a regcache. Adjust.
10816 (cris_breakpoint_at, cris_insert_point, cris_remove_point):
10817 Adjust.
10818 * linux-m32r-low.c (m32r_get_pc, m32r_set_pc): Change prototype to
10819 take a regcache. Adjust.
10820 * linux-m68k-low.c (m68k_fill_gregset, m68k_store_gregset)
10821 (m68k_fill_fpregset, m68k_store_fpregset, m68k_get_pc,
10822 (m68k_set_pc): Change prototype to take a regcache. Adjust.
10823 * linux-mips-low.c (mips_get_pc):
10824 (mips_set_pc): Change prototype to take a regcache. Adjust.
10825 (mips_reinsert_addr): Adjust.
10826 (mips_collect_register): Change prototype to take a regcache.
10827 Adjust.
10828 (mips_supply_register):
10829 (mips_collect_register_32bit, mips_supply_register_32bit)
10830 (mips_fill_gregset, mips_store_gregset, mips_fill_fpregset)
10831 (mips_store_fpregset): Ditto.
10832 * linux-ppc-low.c (ppc_supply_ptrace_register)
10833 (ppc_supply_ptrace_register): Ditto.
10834 (parse_spufs_run): Adjust.
10835 (ppc_get_pc, ppc_set_pc, ppc_fill_gregset, ppc_fill_vsxregset)
10836 (ppc_store_vsxregset, ppc_fill_vrregset, ppc_store_vrregset)
10837 (ppc_fill_evrregset, ppc_store_evrregset): Change prototype to
10838 take a regcache. Adjust.
10839 * linux-s390-low.c (s390_collect_ptrace_register)
10840 (s390_supply_ptrace_register, s390_fill_gregset, s390_get_pc)
10841 (s390_set_pc): Change prototype to take a regcache. Adjust.
10842 (s390_arch_setup): Adjust.
10843 * linux-sh-low.c (sh_get_pc, sh_breakpoint_at)
10844 (sh_fill_gregset): Change prototype to take a regcache. Adjust.
10845 * linux-sparc-low.c (sparc_fill_gregset_to_stack)
10846 (sparc_fill_gregset, sparc_store_gregset_from_stack)
10847 (sparc_store_gregset, sparc_get_pc): Change prototype to take a
10848 regcache. Adjust.
10849 (sparc_breakpoint_at): Adjust.
10850 * linux-xtensa-low.c (xtensa_fill_gregset):
10851 (xtensa_store_gregset):
10852 (xtensa_fill_xtregset, xtensa_store_xtregset, xtensa_get_pc)
10853 (xtensa_set_pc): Change prototype to take a regcache. Adjust.
10854 * nto-low.c (nto_fetch_registers, nto_store_registers): Change
10855 prototype to take a regcache. Adjust.
10856 * win32-arm-low.c (arm_fetch_inferior_register)
10857 (arm_store_inferior_register): Change prototype to take a
10858 regcache. Adjust.
10859 * win32-i386-low.c (i386_fetch_inferior_register)
10860 (i386_store_inferior_register): Change prototype to take a
10861 regcache. Adjust.
10862 * win32-low.c (child_fetch_inferior_registers)
10863 (child_store_inferior_registers): Change prototype to take a
10864 regcache. Adjust.
10865 (win32_wait): Adjust.
10866 (win32_fetch_inferior_registers): Change prototype to take a
10867 regcache. Adjust.
10868 (win32_store_inferior_registers): Adjust.
10869 * win32-low.h (struct win32_target_ops) <fetch_inferior_register,
10870 store_inferior_register>: Change prototype to take a regcache.
10871
10872 2010-01-20 Doug Evans <dje@google.com>
10873
10874 * linux-low.c (linux_create_inferior): Wrap use of __SIGRTMIN in
10875 #ifdef.
10876 (linux_wait_for_event1, linux_init_signals): Ditto.
10877 (W_STOPCODE): Provide definition if missing.
10878
10879 2010-01-13 Vladimir Prus <vladimir@codesourcery.com>
10880
10881 * linux-low.c (linux_core_of_thread): New.
10882 (compare_ints, show_process, list_threads): New.
10883 (linux_qxfer_osdata): Report threads and cores.
10884 (linux_target_op): Register linux_core_of_thread.
10885 * remote-utils.c (prepare_resume_reply): Report the core.
10886 (buffer_xml_printf): Support %d specifier.
10887 * server.c (handle_threads_qxfer_proper, handle_threads_qxfer):
10888 New.
10889 (handle_query): Handle qXfer:threads. Announce availability
10890 thereof.
10891 * target.h (struct target_ops): New field core_of_thread.
10892
10893 2010-01-04 Ulrich Weigand <uweigand@de.ibm.com>
10894
10895 * Makefile.in (clean): Remove new generated files.
10896 (reg-s390.o, reg-s390.c): Remove rules.
10897 (reg-s390x.o, reg-s390x.c): Likewise.
10898 (s390-linux32.o, s390-linux32.c): Add rules.
10899 (s390-linux64.o, s390-linux64.c): Likewise.
10900 (s390x-linux64.o, s390x-linux64.c): Likewise.
10901 * configure.srv (s390*-*-linux*): Update srv_regobj and srv_xmlfiles.
10902 * linux-s390-low.c: Include <elf.h>.
10903 (HWCAP_S390_HIGH_GPRS): Define if undefined.
10904 (init_registers_s390): Remove prototype.
10905 (init_registers_s390x): Likewise.
10906 (init_registers_s390_linux32): Add prototype.
10907 (init_registers_s390_linux64): Likewise.
10908 (init_registers_s390x_linux64): Likewise.
10909 (s390_num_regs_3264): New define.
10910 (s390_regmap_3264): New global variable.
10911 (s390_cannot_fetch_register): Remove obsolete check.
10912 (s390_cannot_store_register): Likewise.
10913 (s390_collect_ptrace_register): Handle upper/lower register halves.
10914 (s390_supply_ptrace_register): Likewise.
10915 (s390_fill_gregset): Update to register number changes.
10916 (s390_get_hwcap): New routine.
10917 (s390_arch_setup): Detect 32-bit process running on 64-bit system.
10918 Install appropriate regmap and register set.
10919
10920 2010-01-01 Joel Brobecker <brobecker@adacore.com>
10921
10922 * server.c (gdbserver_version): Update copyright year to 2010.
10923 * gdbreplay.c (gdbreplay_version): Likewise.
10924
10925 2009-12-28 Doug Evans <dje@google.com>
10926
10927 * linux-low.c: Delete inclusion of ansidecl.h, elf/common.h,
10928 elf/external.h. Include <elf.h> instead but only if necessary.
10929
10930 2009-12-28 Pedro Alves <pedro@codesourcery.com>
10931
10932 * linux-low.c (linux_remove_process): Remove `detaching'
10933 parameter. Don't release/detach from thread_db here.
10934 (linux_kill): Release/detach from thread_db here, ...
10935 (linux_detach): ... and here, before actually detaching.
10936 (linux_wait_1): ... and here, when a process exits.
10937 * thread-db.c (any_thread_of): New.
10938 (thread_db_free): Switch the current inferior to a thread of the
10939 passed in process.
10940
10941 2009-12-21 Doug Evans <dje@google.com>
10942
10943 * linux-x86-low.c: Delete outdated comment about Elf32_Phdr.
10944
10945 * linux-low.c (kill_lwp): Use __NR_tkill instead of SYS_tkill.
10946 Move definition of tkill_failed to ifdef __NR_tkill to avoid gcc
10947 warning ifndef __NR_tkill. Move setting of errno there too.
10948 Delete unnecessary resetting of errno after syscall.
10949 Minor comment changes to match gdb/linux-nat.c:kill_lwp.
10950
10951 * configure.ac: Check for dladdr.
10952 * config.in: Regenerate.
10953 * configure: Regenerate.
10954 * thread-db.c (dladdr_to_soname): Only define ifdef HAVE_DLADDR.
10955 (try_thread_db_load): Update.
10956
10957 * linux-low.c (my_waitpid): Delete unnecessary prototype.
10958
10959 2009-12-18 Doug Evans <dje@google.com>
10960
10961 * event-loop.c: Include unistd.h if it exists.
10962
10963 * linux-low.c (my_waitpid): Move definition away from being in
10964 between linux_tracefork_child/linux_test_for_tracefork.
10965
10966 * gdb_proc_service.h (psaddr_t): Fix type.
10967 * thread-db.c (thread_db_info.td_thr_tls_get_addr_p): Fix
10968 signature to match glibc.
10969
10970 2009-12-16 Doug Evans <dje@google.com>
10971
10972 * linux-low.c (linux_read_memory): Fix argument to read.
10973
10974 2009-11-26 Pedro Alves <pedro@codesourcery.com>
10975
10976 * win32-low.c (get_child_debug_event): On EXIT_THREAD_DEBUG_EVENT
10977 events, don't leave current_inferior pointing at null.
10978
10979 2009-11-26 Pedro Alves <pedro@codesourcery.com>
10980
10981 * win32-low.c (LOG): Delete.
10982 (OUTMSG): Output to stderr.
10983 (OUTMSG2): Conditionalize on `debug_threads' variable, instead of
10984 on compile time LOG macro.
10985 (win32_wait): Fix debug output.
10986
10987 2009-11-26 Pedro Alves <pedro@codesourcery.com>
10988
10989 * win32-low.c (win32_add_one_solib): If the dll name is
10990 "ntdll.dll", prepend the system directory to the dll path.
10991
10992 2009-11-17 Daniel Jacobowitz <dan@codesourcery.com>
10993
10994 * m68k-tdep.c (m68k_gdbarch_init): Reuse previous initialization.
10995
10996 2009-11-17 Nathan Sidwell <nathan@codesourcery.com>
10997 Vladimir Prus <vladimir@codesourcery.com>
10998
10999 * Makefile.in (reg-cf.o, reg-cf.c): New targets.
11000 * configure.ac: Check for __mcoldfire__ and set
11001 gdb_cv_m68k_is_coldfire.
11002 * configure.srv: Use gdb_cv_m68k_is_coldfire to select between
11003 reg-cf.o and reg-m68k.o.
11004 * configure: Regenerated.
11005
11006 2009-11-16 Pedro Alves <pedro@codesourcery.com>
11007
11008 * linux-low.c (linux_remove_process): Add `detaching' parameter.
11009 Pass it to thread_db_free.
11010 (linux_kill, linux_detach, linux_wait_1): Adjust to pass the
11011 proper `detaching' argument to linux_remove_process.
11012 * linux-low.h (thread_db_free): Add `detaching' parameter.
11013 * thread-db.c (thread_db_init): Pass false as `detaching' argument
11014 to thread_db_free.
11015 (thread_db_free): Add `detaching' parameter. Only
11016 call td_ta_clear_event if detaching from process.
11017
11018 2009-11-12 Maxim Kuvyrkov <maxim@codesourcery.com>
11019
11020 * thread-db.c (thread_db_free): Fix typo.
11021
11022 2009-11-11 Paul Pluzhnikov <ppluzhnikov@google.com>
11023
11024 PR gdb/10838
11025 * thread-db.c (thread_db_free): Call td_ta_clear_event.
11026
11027 2009-11-03 Nathan Sidwell <nathan@codesourcery.com>
11028
11029 * configure.ac (i[34567]86-*): Check if we're targetting x86-64
11030 with an i686 compiler.
11031 * configure.srv (i[34567]86-*-linux*): Pull in x86-64 handling if
11032 needed.
11033 * configure: Rebuilt.
11034
11035 2009-10-29 Sandra Loosemore <sandra@codesourcery.com>
11036
11037 PR gdb/10783
11038
11039 * server.c (handle_search_memory_1): Correct read_addr initialization
11040 in loop for searching subsequent chunks.
11041
11042 2009-10-29 Paul Pluzhnikov <ppluzhnikov@google.com>
11043
11044 * configure.ac: New --with-libthread-db option.
11045 * thread-db.c: Allow direct dependence on libthread_db.
11046 (thread_db_free): Adjust.
11047 * config.in: Regenerate.
11048 * configure: Likewise.
11049
11050 2009-10-28 Paul Pluzhnikov <ppluzhnikov@google.com>
11051
11052 PR gdb/10757
11053 * thread-db.c (attach_thread): New function.
11054 (maybe_attach_thread): Return success/failure.
11055 (find_new_threads_callback): Adjust.
11056 (thread_db_find_new_threads): Loop until no new threads.
11057
11058 2009-10-13 Pedro Alves <pedro@codesourcery.com>
11059
11060 * proc-service.c (ps_lgetregs): Formatting.
11061
11062 2009-10-08 Paul Pluzhnikov <ppluzhnikov@google.com>
11063
11064 * acinclude.m4: (SRV_CHECK_THREAD_DB, SRV_CHECK_TLS_GET_ADDR): Remove.
11065 * configure.ac: Adjust.
11066 * linux-low.h (struct process_info_private): Move members to struct
11067 thread_db.
11068 (thread_db_free, thread_db_handle_monitor_command): New prototype.
11069 * linux-low.c (linux_remove_process): Adjust.
11070 (linux_wait_for_event_1, linux_look_up_symbols): Likewise.
11071 * server.c (handle_query): Move code ...
11072 (handle_monitor_command): ... here. New function.
11073 * target.h (struct target_ops): New member.
11074 * thread-db.c (struct thread_db): New.
11075 (libthread_db_search_path): New variable.
11076 (thread_db_create_event, thread_db_enable_reporting)
11077 (find_one_thread, maybe_attach_thread, find_new_threads_callback)
11078 (thread_db_find_new_threads, (thread_db_get_tls_address): Adjust.
11079 (try_thread_db_load_1, dladdr_to_soname): New functions.
11080 (try_thread_db_load, thread_db_load_search): New functions.
11081 (thread_db_init): Search for libthread_db.
11082 (thread_db_free): New function.
11083 (thread_db_handle_monitor_command): Likewise.
11084 * config.in: Regenerate.
11085 * configure: Regenerate.
11086
11087 2009-09-27 Ulrich Weigand <uweigand@de.ibm.com>
11088
11089 * spu-low.c (spu_kill): Wait for inferior to terminate.
11090 Call clear_inferiors.
11091 (spu_detach): Call clear_inferiors.
11092
11093 2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11094
11095 * aclocal.m4: Regenerate.
11096 * config.in: Likewise.
11097 * configure: Likewise.
11098
11099 2009-07-31 Ulrich Weigand <uweigand@de.ibm.com>
11100
11101 * linux-ppc-low.c (INSTR_SC, NR_spu_run): Define.
11102 (parse_spufs_run): New function.
11103 (ppc_get_pc, ppc_set_pc): Detect and handle SPU PC.
11104 (ppc_breakpoint_at): Handle SPU breakpoints.
11105
11106 2009-07-31 Ulrich Weigand <uweigand@de.ibm.com>
11107
11108 * linux-low.c: Include <sys/stat.h> and <sys/vfs.h>.
11109 (SPUFS_MAGIC): Define.
11110 (spu_enumerate_spu_ids): New function.
11111 (linux_qxfer_spu): New function.
11112 (linux_target_ops): Install linux_qxfer_spu.
11113
11114 2009-07-31 Ulrich Weigand <uweigand@de.ibm.com>
11115
11116 * configure.srv (powerpc*-*-linux*): Add powerpc-cell32l.o
11117 and powerpc-cell64l.o to srv_regobj. Add rs6000/powerpc-cell32l.xml
11118 and rs6000/powerpc-cell64l.xml to srv_xmlfiles.
11119 * Makefile.in (powerpc-cell32l.o, powerpc-cell32l.c): New rules.
11120 (powerpc-cell64l.o, powerpc-cell64l.c): Likewise.
11121 (clean): Handle powerpc-cell32l.c and powerpc-cell64l.c.
11122 * linux-ppc-low.c (PPC_FEATURE_CELL): Define.
11123 (init_registers_powerpc_cell32l): Add prototype.
11124 (init_registers_powerpc_cell64l): Likewise.
11125 (ppc_arch_setup): Detect Cell/B.E. architecture.
11126
11127 2009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11128
11129 * Makefile.in (datarootdir): New variable.
11130
11131 2009-07-28 Daniel Jacobowitz <dan@codesourcery.com>
11132
11133 * linux-low.c (linux_write_memory): Update debugging output.
11134 * Makefile.in (clean): Add new descriptions.
11135 (arm-with-vfpv2.o, arm-with-vfpv2.c, arm-with-vfpv3.o)
11136 (arm-with-vfpv3.c, arm-with-neon.o, arm-with-neon.c): New rules.
11137 * configure.srv: Add new files for arm*-*-linux*.
11138 * linux-arm-low.c: Add new declarations.
11139 (PTRACE_GETVFPREGS, PTRACE_SETVFPREGS): Define if undefined.
11140 (arm_hwcap, HWCAP_VFP, HWCAP_IWMMXT, HWCAP_NEON, HWCAP_VFPv3)
11141 (HWCAP_VFPv3D16): New.
11142 (arm_fill_wmmxregset, arm_store_wmmxregset): Check HWCAP_IWMMXT
11143 instead of __IWMMXT__.
11144 (arm_fill_vfpregset, arm_store_vfpregset, arm_get_hwcap)
11145 (arm_arch_setup): New.
11146 (target_regsets): Remove #ifdef. Add VFP regset.
11147 (the_low_target): Use arm_arch_setup.
11148
11149 2009-07-28 Daniel Jacobowitz <dan@codesourcery.com>
11150
11151 * linux-low.c (linux_kill_one_lwp): Adjust kernel workaround to skip
11152 the main thread again.
11153
11154 2009-07-06 Aleksandar Ristovski <aristovski@qnx.com>
11155
11156 Adding Neutrino gdbserver.
11157 * configure: Regenerated.
11158 * configure.ac: Add case for srv_qnx and set LIBS accordingly.
11159 * configure.srv (i[34567]86-*-nto*): New target.
11160 * nto-low.c, nto-low.h, nto-x86-low.c: New files.
11161 * remote-utils.c [__QNX__]: Include sys/iomgr.h
11162 (nto_comctrl) [__QNX__]: New function.
11163 (enable_async_io, disable_async_io) [__QNX__]: Call nto_comctrl.
11164
11165 2009-07-05 Danny Backx <dannybackx@users.sourceforge.net>
11166
11167 * configure.srv (i[34567]86-*-mingw32ce*): Add i386-low.o to
11168 srv_tgtobj.
11169
11170 2009-07-04 Danny Backx <dannybackx@users.sourceforge.net>
11171 Pedro Alves <pedro@codesourcery.com>
11172
11173 * win32-i386-low.c (i386_get_thread_context): Handle systems that
11174 don't support CONTEXT_EXTENDED_REGISTERS.
11175 (i386_win32_breakpoint, i386_win32_breakpoint_len): New.
11176 (the_low_target): Install them.
11177 * win32-low.c (get_child_debug_event): Handle WaitForDebugEvent
11178 failing with ERROR_PIPE_NOT_CONNECTED.
11179
11180 2009-06-30 Doug Evans <dje@google.com>
11181 Pierre Muller <muller@ics.u-strasbg.fr>
11182
11183 Add h/w watchpoint support to x86-linux, win32-i386.
11184 * Makefile.in (SFILES): Add i386-low.c
11185 (i386_low_h): Define.
11186 (i386-low.o): Add dependencies.
11187 (linux-x86-low.o): Add i386-low.h dependency.
11188 (win32-i386-low.o): Ditto.
11189 * i386-low.c: New file.
11190 * i386-low.h: New file.
11191 * configure.srv (i[34567]86-*-cygwin*): Add i386-low.o to srv_tgtobj.
11192 (i[34567]86-*-linux*, i[34567]86-*-mingw*, x86_64-*-linux*): Ditto.
11193 * linux-low.c (linux_add_process): Initialize arch_private.
11194 (linux_remove_process): Free arch_private.
11195 (add_lwp): Initialize arch_private.
11196 (delete_lwp): Free arch_private.
11197 (linux_resume_one_lwp): Call the_low_target.prepare_to_resume if
11198 provided.
11199 * linux-low.h (process_info_private): New member arch_private.
11200 (lwp_info): New member arch_private.
11201 (linux_target_ops): New members new_process, new_thread,
11202 prepare_to_resume.
11203 (ptid_of): New macro.
11204 * linux-x86-low.c: Include stddef.h, i386-low.h.
11205 (arch_process_info): New struct.
11206 (arch_lwp_info): New struct.
11207 (x86_linux_dr_get, x86_linux_dr_set): New functions.
11208 (i386_dr_low_set_addr, i386_dr_low_set_control): New functions.
11209 (i386_dr_low_get_status): New function.
11210 (x86_insert_point, x86_remove_point): New functions.
11211 (x86_stopped_by_watchpoint): New function.
11212 (x86_stopped_data_address): New function.
11213 (x86_linux_new_process, x86_linux_new_thread): New functions.
11214 (x86_linux_prepare_to_resume): New function.
11215 (the_low_target): Add entries for insert_point, remove_point,
11216 stopped_by_watchpoint, stopped_data_address, new_process, new_thread,
11217 prepare_to_resume.
11218 * server.c (debug_hw_points): New global.
11219 (monitor_show_help): Document set debug-hw-points.
11220 (handle_query): Process "set debug-hw-points".
11221 * server.h (debug_hw_points): Declare.
11222 (paddress): Declare.
11223 * utils.c (NUMCELLS, CELLSIZE): New macros.
11224 (get_sell, xsnprintf, paddress): New functions.
11225 * win32-arm-low.c (the_low_target): Add entries for insert_point,
11226 remove_point, stopped_by_watchpoint, stopped_data_address.
11227 * win32-i386-low.c: Include i386-low.h.
11228 (debug_reg_state): Replaces dr.
11229 (i386_dr_low_set_addr, i386_dr_low_set_control): New functions.
11230 (i386_dr_low_get_status): New function.
11231 (i386_insert_point, i386_remove_point): New functions.
11232 (i386_stopped_by_watchpoint): New function.
11233 (i386_stopped_data_address): New function.
11234 (i386_initial_stuff): Update.
11235 (get_thread_context,set_thread_context,i386_thread_added): Update.
11236 (the_low_target): Add entries for insert_point,
11237 remove_point, stopped_by_watchpoint, stopped_data_address.
11238 * win32-low.c (win32_insert_watchpoint): New function.
11239 (win32_remove_watchpoint): New function.
11240 (win32_stopped_by_watchpoint): New function.
11241 (win32_stopped_data_address): New function.
11242 (win32_target_ops): Add entries for insert_watchpoint,
11243 remove_watchpoint, stopped_by_watchpoint, stopped_data_address.
11244 * win32-low.h (win32_target_ops): New members insert_point,
11245 remove_point, stopped_by_watchpoint, stopped_data_address.
11246
11247 2009-06-25 Pedro Alves <pedro@codesourcery.com>
11248
11249 * server.c (process_serial_event): Re-return unsupported, not
11250 error, if the type isn't recognized. Re-allow supporting only
11251 insert or remove packets. Also call require_running for
11252 breakpoints. Add missing break statement to default case. Tidy.
11253 * target.h (struct target_ops): Rename insert_watchpoint to
11254 insert_point, and remove_watchpoint to remove_point.
11255
11256 * linux-low.h (struct linux_target_ops): Likewise.
11257 * linux-low.c (linux_insert_watchpoint): Rename to ...
11258 (linux_insert_point): ... this. Adjust.
11259 (linux_remove_watchpoint): Rename to ...
11260 (linux_remove_point): ... this. Adjust.
11261 (linux_target_ops): Adjust.
11262 * linux-crisv32-low.c (cris_insert_watchpoint): Rename to ...
11263 (cris_insert_point): ... this.
11264 (cris_remove_watchpoint): Rename to ...
11265 (cris_remove_point): ... this.
11266 (the_low_target): Adjust.
11267
11268 2009-06-24 Pierre Muller <muller@ics.u-strasbg.fr>
11269
11270 * server.c (handle_v_kill): Pass signal_pid to
11271 kill_inferior if multi_process is zero.
11272
11273 2009-06-23 Aleksandar Ristovski <aristovski@qnx.com>
11274
11275 * server.c (process_serial_event): Add support for Z0 and Z1 packet.
11276 * target.h (target_ops): Comment for *_watchpoint to make it clear
11277 the functions can get types '0' and '1'.
11278
11279 2009-06-22 Aleksandar Ristovski <aristovski@qnx.com>
11280
11281 * linux-low.c (usr_fetch_inferior_registers): Remove check for regno 0.
11282 * proc-service.c (ps_lgetregs): Pass -1 to fetch all registers.
11283 * regcache.c (get_regcache): Likewise.
11284 * spu-low.c (spu_fetch_registers): Remove 0 to -1 conversion.
11285 * win32-low.c (child_fetch_inferior_registers): Remove check for
11286 regno 0.
11287
11288 2009-06-19 Aleksandar Ristovski <aristovski@qnx.com>
11289 Pedro Alves <pedro@codesourcery.com>
11290
11291 * target.h (struct target_ops) <supports_multi_process>: New
11292 callback.
11293 (target_supports_multi_process): New.
11294 * server.c (handle_query): Even if GDB reports support, only
11295 enable multi-process if the target also supports it. Report
11296 multi-process support only if the target backend supports it.
11297 * linux-low.c (linux_supports_multi_process): New function.
11298 (linux_target_ops): Install it as target_supports_multi_process
11299 callback.
11300
11301 2009-05-24 Doug Evans <dje@google.com>
11302
11303 Global renaming of find_thread_pid to find_thread_ptid.
11304 * server.h (find_thread_ptid): Renamed from find_thread_pid.
11305 * inferiors.c (find_thread_ptid): Renamed from find_thread_pid.
11306 All callers updated.
11307
11308 * linux-low.c (handle_extended_wait): Use linux_resume_one_lwp
11309 to resume the newly created thread, don't call ptrace (PTRACE_CONT)
11310 directly.
11311
11312 * linux-low.c (get_stop_pc): Print pc if debug_threads.
11313 (check_removed_breakpoint, linux_wait_for_lwp): Ditto.
11314 (linux_resume_one_lwp): Ditto.
11315
11316 2009-05-23 Doug Evans <dje@google.com>
11317
11318 * linux-low.c (linux_resume_one_lwp): Change type of first arg
11319 from struct inferior_list_entry * to struct lwp_info *.
11320 All callers updated.
11321
11322 2009-05-13 Doug Evans <dje@google.com>
11323
11324 * linux-x86-low.c: Don't include assert.h.
11325 (x86_siginfo_fixup): Use fatal, not assert.
11326 (x86_arch_setup): Fix comment.
11327
11328 2009-05-12 Doug Evans <dje@google.com>
11329
11330 Biarch support for i386/amd64 gdbserver.
11331 * Makefile.in (SFILES): Remove linux-i386-low.c, linux-x86-64-low.c.
11332 Add linux-x86-low.c.
11333 (linux-i386-low.o, linux-x86-64-low.o): Delete.
11334 (linux-x86-low.o): Add.
11335 * linux-x86-64-low.c: Delete.
11336 * linux-i386-low.c: Delete.
11337 * linux-x86-low.c: New file.
11338 * configure.srv (i?86-linux srv_tgtobj): Replace linux-i386-low.o with
11339 linux-x86-low.o.
11340 (x86_64-linux srv_tgtobj): Replace linux-x86-64-low.o with
11341 linux-x86-low.o.
11342 (x86_64-linux srv_regobj): Add reg-i386-linux.o.
11343 * linux-low.c: Include ansidecl.h, elf/common.h, elf/external.h.
11344 (linux_child_pid_to_exec_file): New function.
11345 (elf_64_header_p, elf_64_file_p): New functions.
11346 (siginfo_fixup): New function.
11347 (linux_xfer_siginfo): New local inf_siginfo. Call siginfo_fixup to
11348 give target a chance to convert layout.
11349 * linux-low.h (linux_target_ops): New member siginfo_fixup.
11350 (linux_child_pid_to_exec_file, elf_64_file_p): Declare.
11351
11352 2009-05-07 Doug Evans <dje@google.com>
11353
11354 * linux-low.c (regsets_fetch_inferior_registers): Fix memory leak.
11355 (regsets_store_inferior_registers): Ditto.
11356
11357 2009-05-06 Pedro Alves <pedro@codesourcery.com>
11358
11359 PR server/10048
11360
11361 * linux-low.c (must_set_ptrace_flags): Delete.
11362 (linux_create_inferior): Set `lwp->must_set_ptrace_flags' instead
11363 of the global.
11364 (linux_attach_lwp_1): Don't set PTRACE_SETOPTIONS here. Set
11365 `lwp->must_set_ptrace_flags' instead.
11366 (linux_wait_for_event_1): Set ptrace options here.
11367 (linux_wait_1): ... not here.
11368
11369 2009-04-30 Doug Evans <dje@google.com>
11370
11371 * inferiors.c (started_inferior_callback): New function.
11372 (attached_inferior_callback): New function.
11373 (have_started_inferiors_p, have_attached_inferiors_p): New functions.
11374 * server.c (print_started_pid, print_attached_pid): New functions.
11375 (detach_or_kill_for_exit): New function.
11376 (main): Call it instead of for_each_inferior (kill_inferior_callback).
11377 * server.h (have_started_inferiors_p): Declare.
11378 (have_attached_inferiors_p): Declare.
11379
11380 * inferiors.c (remove_process): Fix memory leak, free process.
11381 * linux-low.c (linux_remove_process): New function.
11382 (linux_kill): Call it instead of remove_process.
11383 (linux_detach, linux_wait_1): Ditto.
11384
11385 2009-04-19 Danny Backx <dannybackx@users.sourceforge.net>
11386
11387 * configure.srv: Add x86 Windows CE target.
11388
11389 2009-04-03 Ulrich Weigand <uweigand@de.ibm.com>
11390
11391 * inferiors.c (get_thread_process): Make global.
11392 * server.h (get_thread_process): Add prototype.
11393 * thread-db.c (find_one_thread): Use get_thread_process
11394 instead of current_process.
11395 (thread_db_get_tls_address): Do not crash if called when
11396 thread layer is not yet initialized.
11397
11398 2009-04-03 Ulrich Weigand <uweigand@de.ibm.com>
11399
11400 * remote-utils.c (prepare_resume_reply): Null-terminate packet.
11401 * spu-low.c (current_tid): Rename to ...
11402 (current_ptid): ... this.
11403 (fetch_ppc_register, fetch_ppc_memory, store_ppc_memory,
11404 spu_proc_xfer_spu, spu_resume, spu_request_interrupt): Use
11405 ptid_get_lwp (current_ptid) instead of current_tid.
11406 (spu_kill, spu_detach, spu_join, spu_wait): Use pid argument
11407 instead of current_tid. Use find_process_pid to verify pid
11408 argument is valid. Pass proper argument to remove_process.
11409 (spu_thread_alive): Compare current_ptid instead of current_tid.
11410 (spu_resume): Likewise.
11411
11412 2009-04-02 Pedro Alves <pedro@codesourcery.com>
11413
11414 * linux-low.c (usr_store_inferior_registers): Declare local `pid'
11415 variable.
11416
11417 2009-04-01 Pedro Alves <pedro@codesourcery.com>
11418
11419 Implement the multiprocess extensions, and add linux multiprocess
11420 support.
11421
11422 * server.h (ULONGEST): Declare.
11423 (struct ptid, ptid_t): New.
11424 (minus_one_ptid, null_ptid): Declare.
11425 (ptid_build, pid_to_ptid, ptid_get_pid, ptid_get_lwp)
11426 (ptid_get_tid, ptid_equal, ptid_is_pid): Declare.
11427 (struct inferior_list_entry): Change `id' type from unsigned from
11428 to ptid_t.
11429 (struct sym_cache, struct breakpoint, struct
11430 process_info_private): Forward declare.
11431 (struct process_info): Declare.
11432 (current_process): Declare.
11433 (all_processes): Declare.
11434 (initialize_inferiors): Declare.
11435 (add_thread): Adjust to use ptid_t.
11436 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id): Ditto.
11437 (add_process, remove_process, find_thread_pid): Declare.
11438 (find_inferior_id): Adjust to use ptid_t.
11439 (cont_thread, general_thread, step_thread): Change type to ptid_t.
11440 (multi_process): Declare.
11441 (push_event): Adjust to use ptid_t.
11442 (read_ptid, write_ptid): Declare.
11443 (prepare_resume_reply): Adjust to use ptid_t.
11444 (clear_symbol_cache): Declare.
11445 * inferiors.c (all_processes): New.
11446 (null_ptid, minus_one_ptid): New.
11447 (ptid_build, pid_to_ptid, ptid_get_pid, ptid_get_lwp)
11448 (ptid_get_tid, ptid_equal, ptid_is_pid): New.
11449 (add_thread): Change unsigned long to ptid. Remove gdb_id
11450 parameter. Adjust.
11451 (thread_id_to_gdb_id, thread_to_gdb_id): Change unsigned long to ptid.
11452 (gdb_id_to_thread): Rename to ...
11453 (find_thread_pid): ... this. Change unsigned long to ptid.
11454 (gdb_id_to_thread_id, find_inferior_id): Change unsigned long to ptid.
11455 (loaded_dll, pull_pid_from_list): Adjust.
11456 (add_process, remove_process, find_process_pid)
11457 (get_thread_process, current_process, initialize_inferiors): New.
11458 * target.h (struct thread_resume) <thread>: Change type to ptid_t.
11459 (struct target_waitstatus) <related_pid>: Ditto.
11460 (struct target_ops) <kill, detach>: Add `pid' argument. Change
11461 return type to int.
11462 (struct target_ops) <join>: Add `pid' argument.
11463 (struct target_ops) <thread_alive>: Change pid's type to ptid_t.
11464 (struct target_ops) <wait>: Add `ptid' field. Change return type
11465 to ptid.
11466 (kill_inferior, detach_inferior, join_inferior): Add `pid' argument.
11467 (mywait): Add `ptid' argument. Change return type to ptid_t.
11468 (target_pid_to_str): Declare.
11469 * target.c (set_desired_inferior): Adjust to use ptids.
11470 (mywait): Add new `ptid' argument. Adjust.
11471 (target_pid_to_str): New.
11472 * mem-break.h (free_all_breakpoints): Declare.
11473 * mem-break.c (breakpoints): Delelete.
11474 (set_breakpoint_at, delete_breakpoint, find_breakpoint_at)
11475 (check_mem_read, check_mem_write, delete_all_breakpoints): Adjust
11476 to use per-process breakpoint list.
11477 (free_all_breakpoints): New.
11478 * remote-utils.c (struct sym_cache) <name>: Drop `const'.
11479 (symbol_cache, all_symbols_looked_up): Delete.
11480 (hexchars): New.
11481 (ishex, unpack_varlen_hex, write_ptid, hex_or_minus_one,
11482 read_ptid): New.
11483 (prepare_resume_reply): Change ptid argument's type from unsigned
11484 long to ptid_t. Adjust. Implement W;process and X;process.
11485 (free_sym_cache, clear_symbol_cache): New.
11486 (look_up_one_symbol): Adjust to per-process symbol cache. *
11487 * server.c (cont_thread, general_thread, step_thread): Change type
11488 to ptid_t.
11489 (attached): Delete.
11490 (multi_process): New.
11491 (last_ptid): Change type to ptid_t.
11492 (struct vstop_notif) <ptid>: Change type to ptid_t.
11493 (queue_stop_reply, push_event): Change `ptid' argument's type to
11494 ptid_t.
11495 (discard_queued_stop_replies): Add `pid' argument.
11496 (start_inferior): Adjust to use ptids. Adjust to mywait interface
11497 changes. Don't reference the `attached' global.
11498 (attach_inferior): Adjust to mywait interface changes.
11499 (handle_query): Adjust to use ptids. Parse GDB's qSupported
11500 features. Handle and report "multiprocess+". Handle
11501 "qAttached:PID".
11502 (handle_v_cont): Adjust to use ptids. Adjust to mywait interface
11503 changes.
11504 (handle_v_kill): New.
11505 (handle_v_stopped): Adjust to use target_pid_to_str.
11506 (handle_v_requests): Allow multiple attaches and runs when
11507 multiprocess extensions are in effect. Handle "vKill".
11508 (myresume): Adjust to use ptids.
11509 (queue_stop_reply_callback): Add `arg' parameter. Handle it.
11510 (handle_status): Adjust to discard_queued_stop_replies interface
11511 change.
11512 (first_thread_of, kill_inferior_callback)
11513 (detach_or_kill_inferior_callback, join_inferiors_callback): New.
11514 (main): Call initialize_inferiors. Adjust to use ptids, killing
11515 and detaching from all inferiors. Handle multiprocess packet
11516 variants.
11517 * linux-low.h: Include gdb_proc_service.h.
11518 (struct process_info_private): New.
11519 (struct linux_target_ops) <pid_of>: Use ptid_get_pid.
11520 <lwpid_of>: Use ptid_get_lwp.
11521 (get_lwp_thread): Adjust.
11522 (struct lwp_info): Add `dead' member.
11523 (find_lwp_pid): Declare.
11524 * linux-low.c (thread_db_active): Delete.
11525 (new_inferior): Adjust comment.
11526 (inferior_pid): Delete.
11527 (linux_add_process): New.
11528 (handle_extended_wait): Adjust.
11529 (add_lwp): Change unsigned long to ptid.
11530 (linux_create_inferior): Add process to processes table. Adjust
11531 to use ptids. Don't set new_inferior here.
11532 (linux_attach_lwp): Rename to ...
11533 (linux_attach_lwp_1): ... this. Add `initial' argument. Handle
11534 it. Adjust to use ptids.
11535 (linux_attach_lwp): New.
11536 (linux_attach): Add process to processes table. Don't set
11537 new_inferior here.
11538 (struct counter): New.
11539 (second_thread_of_pid_p, last_thread_of_process_p): New.
11540 (linux_kill_one_lwp): Add `args' parameter. Handle it. Adjust to
11541 multiple processes.
11542 (linux_kill): Add `pid' argument. Handle it. Adjust to multiple
11543 processes. Remove process from process table.
11544 (linux_detach_one_lwp): Add `args' parameter. Handle it. Adjust
11545 to multiple processes.
11546 (any_thread_of): New.
11547 (linux_detach): Add `pid' argument, and handle it. Remove process
11548 from processes table.
11549 (linux_join): Add `pid' argument. Handle it.
11550 (linux_thread_alive): Change unsighed long argument to ptid_t.
11551 Consider dead lwps as not being alive.
11552 (status_pending_p): Rename `dummy' argument to `arg'. Filter out
11553 threads we're not interested in.
11554 (same_lwp, find_lwp_pid): New.
11555 (linux_wait_for_lwp): Change `pid' argument's type from int to
11556 ptid_t. Adjust.
11557 (linux_wait_for_event): Rename to ...
11558 (linux_wait_for_event_1): ... this. Change `pid' argument's type
11559 from int to ptid_t. Adjust.
11560 (linux_wait_for_event): New.
11561 (linux_wait_1): Add `ptid' argument. Change return type to
11562 ptid_t. Adjust. Use last_thread_of_process_p. Remove processes
11563 that exit from the process table.
11564 (linux_wait): Add `ptid' argument. Change return type to ptid_t.
11565 Adjust.
11566 (mark_lwp_dead): New.
11567 (wait_for_sigstop): Adjust to use ptids. If a process exits while
11568 stopping all threads, mark its main lwp as dead.
11569 (linux_set_resume_request, linux_resume_one_thread): Adjust to use
11570 ptids.
11571 (fetch_register, usr_store_inferior_registers)
11572 (regsets_fetch_inferior_registers)
11573 (regsets_store_inferior_registers, linux_read_memory)
11574 (linux_write_memory): Inline `inferior_pid'.
11575 (linux_look_up_symbols): Adjust to use per-process
11576 `thread_db_active'.
11577 (linux_request_interrupt): Adjust to use ptids.
11578 (linux_read_auxv): Inline `inferior_pid'.
11579 (initialize_low): Don't reference thread_db_active.
11580 * gdb_proc_service.h (struct ps_prochandle) <pid>: Remove.
11581 * proc-service.c (ps_lgetregs): Use find_lwp_pid.
11582 (ps_getpid): Return the pid of the current inferior.
11583 * thread-db.c (proc_handle, thread_agent): Delete.
11584 (thread_db_create_event, thread_db_enable_reporting): Adjust to
11585 per-process data.
11586 (find_one_thread): Change argument type to ptid_t. Adjust to
11587 per-process data.
11588 (maybe_attach_thread): Adjust to per-process data and ptids.
11589 (thread_db_find_new_threads): Ditto.
11590 (thread_db_init): Ditto.
11591 * spu-low.c (spu_create_inferior, spu_attach): Add process to
11592 processes table. Adjust to use ptids.
11593 (spu_kill, spu_detach): Adjust interface. Remove process from
11594 processes table.
11595 (spu_join, spu_thread_alive): Adjust interface.
11596 (spu_wait): Adjust interface. Remove process from processes
11597 table. Adjust to use ptids.
11598 * win32-low.c (current_inferior_tid): Delete.
11599 (current_inferior_ptid): New.
11600 (debug_event_ptid): New.
11601 (thread_rec): Take a ptid. Adjust.
11602 (child_add_thread): Add `pid' argument. Adjust to use ptids.
11603 (child_delete_thread): Ditto.
11604 (do_initial_child_stuff): Add `attached' argument. Add process to
11605 processes table.
11606 (child_fetch_inferior_registers, child_store_inferior_registers):
11607 Adjust.
11608 (win32_create_inferior): Pass 0 to do_initial_child_stuff.
11609 (win32_attach): Pass 1 to do_initial_child_stuff.
11610 (win32_kill): Adjust interface. Remove process from processes
11611 table.
11612 (win32_detach): Ditto.
11613 (win32_join): Adjust interface.
11614 (win32_thread_alive): Take a ptid.
11615 (win32_resume): Adjust to use ptids.
11616 (get_child_debug_event): Ditto.
11617 (win32_wait): Adjust interface. Remove exiting process from
11618 processes table.
11619
11620 2009-04-01 Pedro Alves <pedro@codesourcery.com>
11621
11622 Non-stop mode support.
11623
11624 * server.h (non_stop): Declare.
11625 (gdb_client_data, handler_func): Declare.
11626 (delete_file_handler, add_file_handler, start_event_loop):
11627 Declare.
11628 (handle_serial_event, handle_target_event, push_event)
11629 (putpkt_notif): Declare.
11630 * target.h (enum resume_kind): New.
11631 (struct thread_resume): Replace `step' field by `kind' field.
11632 (TARGET_WNOHANG): Define.
11633 (struct target_ops) <wait>: Add `options' argument.
11634 <supports_non_stop, async, start_non_stop>: New fields.
11635 (target_supports_non_stop, target_async): New.
11636 (start_non_stop): Declare.
11637 (mywait): Add `options' argument.
11638 * target.c (mywait): Add `options' argument. Print child exit
11639 notifications here.
11640 (start_non_stop): New.
11641 * server.c (non_stop, own_buf, mem_buf): New globals.
11642 (struct vstop_notif): New.
11643 (notif_queue): New global.
11644 (queue_stop_reply, push_event, discard_queued_stop_replies)
11645 (send_next_stop_reply): New.
11646 (start_inferior): Adjust to use resume_kind. Adjust to mywait
11647 interface changes.
11648 (attach_inferior): In non-stop mode, don't wait for the target
11649 here.
11650 (handle_general_set): Handle QNonStop.
11651 (handle_query): When handling qC, return the current general
11652 thread, instead of the first thread of the list.
11653 (handle_query): If the backend supports non-stop mode, include
11654 QNonStop+ in the qSupported query response.
11655 (handle_v_cont): Adjust to use resume_kind. Handle resume_stop
11656 and non-stop mode.
11657 (handle_v_attach, handle_v_run): Handle non-stop mode.
11658 (handle_v_stopped): New.
11659 (handle_v_requests): Report support for vCont;t. Handle vStopped.
11660 (myresume): Adjust to use resume_kind. Handle non-stop.
11661 (queue_stop_reply_callback): New.
11662 (handle_status): Handle non-stop mode.
11663 (main): Clear non_stop flag on reconnection. Use the event-loop.
11664 Refactor serial protocol handling from here ...
11665 (process_serial_event): ... to this new function. When GDB
11666 selects any thread, select one here. In non-stop mode, wait until
11667 GDB acks all pending events before exiting.
11668 (handle_serial_event, handle_target_event): New.
11669 * remote-utils.c (remote_open): Install remote_desc in the event
11670 loop.
11671 (remote_close): Remove remote_desc from the event loop.
11672 (putpkt_binary): Rename to...
11673 (putpkt_binary_1): ... this. Add `is_notic' argument. Handle it.
11674 (putpkt_binary): New as wrapper around putpkt_binary_1.
11675 (putpkt_notif): New.
11676 (prepare_resume_reply): In non-stop mode, don't change the
11677 general_thread.
11678 * event-loop.c: New.
11679 * Makefile.in (OBJ): Add event-loop.o.
11680 (event-loop.o): New rule.
11681
11682 * linux-low.h (pid_of): Moved here.
11683 (lwpid_of): New.
11684 (get_lwp_thread): Use lwpid_of.
11685 (struct lwp_info): Delete `lwpid' field. Add `suspended' field.
11686 * linux-low.c (pid_of): Delete.
11687 (inferior_pid): Use lwpid_of.
11688 (linux_event_pipe): New.
11689 (target_is_async_p): New.
11690 (delete_lwp): New.
11691 (handle_extended_wait): Use lwpid_of.
11692 (add_lwp): Don't set lwpid field.
11693 (linux_attach_lwp): Adjust debug output. Use lwpid_of.
11694 (linux_kill_one_lwp): If killing a running lwp, stop it first.
11695 Use lwpid_of. Adjust to linux_wait_for_event interface changes.
11696 (linux_detach_one_lwp): If detaching from a running lwp, stop it
11697 first. Adjust to linux_wait_for_event interface changes. Use
11698 lwpid_of.
11699 (linux_detach): Don't delete the main lwp here.
11700 (linux_join): Use my_waitpid. Avoid signal_pid. Use lwpid_of.
11701 (status_pending_p): Don't consider explicitly suspended lwps.
11702 (linux_wait_for_lwp): Take an integer pid instead of a lwp_info
11703 pointer. Add OPTIONS argument. Change return type to int. Use
11704 my_waitpid instead of sleeping. Handle WNOHANG. Use lwpid_of.
11705 (linux_wait_for_event): Take an integer pid instead of a lwp_info
11706 pointer. Add status pointer argument. Return a pid instead of a
11707 status. Use lwpid_of. Adjust to linux_wait_for_lwp interface
11708 changes. In non-stop mode, don't switch to a random thread.
11709 (linux_wait): Rename to...
11710 (linux_wait_1): ... this. Add target_options argument, and handle
11711 it. Adjust to use resume_kind. Use lwpid_of. In non-stop mode,
11712 don't handle the continue thread. Handle TARGET_WNOHANG. Merge
11713 clean exit and signal exit code. Don't stop all threads in
11714 non-stop mode. In all-stop mode, only stop all threads when
11715 reporting a stop to GDB. Handle explicit thread stop requests.
11716 (async_file_flush, async_file_mark): New.
11717 (linux_wait): New.
11718 (send_sigstop): Use lwpid_of.
11719 (wait_for_sigstop): Use lwpid_of. Adjust to linux_wait_for_event
11720 interface changes. In non-stop mode, don't switch to a random
11721 thread.
11722 (linux_resume_one_lwp): Use lwpid_of.
11723 (linux_continue_one_thread, linux_queue_one_thread): Merge into ...
11724 (linux_resume_one_thread): ... this. Handle resume_stop. In
11725 non-stop mode, don't look for pending flag in all threads.
11726 (resume_status_pending_p): Don't consider explicitly suspended
11727 threads.
11728 (my_waitpid): Reimplement. Emulate __WALL.
11729 (linux_request_interrupt, linux_read_offsets, linux_xfer_siginfo):
11730 Use lwpid_of.
11731 (sigchld_handler, linux_supports_non_stop, linux_async)
11732 (linux_start_non_stop): New.
11733 (linux_target_ops): Register linux_supports_non_stop, linux_async
11734 and linux_start_non_stop.
11735 (initialize_low): Install SIGCHLD handler.
11736 * thread-db.c (thread_db_create_event, find_one_thread)
11737 (thread_db_get_tls_address): Use lwpid_of.
11738 * win32-low.c (win32_detach): Adjust to use resume_kind.
11739 (win32_wait): Add `options' argument.
11740 * spu-low.c (spu_resume): Adjust to use resume_kind.
11741 (spu_wait): Add `options' argument.
11742
11743 2009-04-01 Pedro Alves <pedro@codesourcery.com>
11744
11745 Decouple target code from remote protocol.
11746
11747 * target.h (enum target_waitkind): New.
11748 (struct target_waitstatus): New.
11749 (struct target_ops) <wait>: Return an unsigned long. Take a
11750 target_waitstatus pointer instead of a char pointer.
11751 (mywait): Likewise.
11752 * target.c (mywait): Change prototype to return an unsigned long.
11753 Take a target_waitstatus pointer instead of a char pointer. Adjust.
11754 * server.h (thread_from_wait, old_thread_from_wait): Delete
11755 declarations.
11756 (prepare_resume_reply): Change prototype to take a
11757 target_waitstatus.
11758 * server.c (thread_from_wait, old_thread_from_wait): Delete.
11759 (last_status, last_ptid): New.
11760 (start_inferior): Remove "statusptr" argument. Adjust. Return a
11761 pid instead of a signal.
11762 (attach_inferior): Remove "status" and "signal" parameters.
11763 Adjust.
11764 (handle_query): For qGetTLSAddr, parse the thread id with strtol,
11765 not as an address.
11766 (handle_v_cont, handle_v_attach, handle_v_run, handle_v_kill)
11767 (handle_v_requests, myresume): Remove "status" and "signal"
11768 parameters. Adjust.
11769 (handle_status): New.
11770 (main): Delete local `status'. Adjust.
11771 * remote-utils.c: Include target.h.
11772 (prepare_resume_reply): Change prototype to take a
11773 target_waitstatus. Adjust.
11774
11775 * linux-low.c (linux_wait): Adjust to new target_ops->wait
11776 interface.
11777 * spu-low.c (spu_wait): Adjust.
11778 * win32-low.c (enum target_waitkind, struct target_waitstatus):
11779 Delete.
11780 (win32_wait): Adjust.
11781
11782 2009-04-01 Pedro Alves <pedro@codesourcery.com>
11783
11784 * target.h (struct thread_resume): Delete leave_stopped member.
11785 (struct target_ops): Add a `n' argument to the `resume' callback.
11786 * server.c (start_inferior): Adjust.
11787 (handle_v_cont, myresume): Adjust.
11788 * linux-low.c (check_removed_breakpoint): Adjust to resume
11789 interface change, and to removed leave_stopped field.
11790 (resume_ptr): Delete.
11791 (struct thread_resume_array): New.
11792 (linux_set_resume_request): Add new `arg' parameter. Adjust to
11793 resume interface change.
11794 (linux_continue_one_thread, linux_queue_one_thread)
11795 (resume_status_pending_p): Check if the resume field is NULL
11796 instead of checking the leave_stopped member.
11797 (linux_resume): Adjust to the target resume interface change.
11798 * spu-low.c (spu_resume): Adjust to the target resume interface
11799 change.
11800 * win32-low.c (win32_detach, win32_resume): Ditto.
11801
11802 2009-04-01 Pedro Alves <pedro@codesourcery.com>
11803
11804 * linux-low.c (linux_wait_for_event): Don't clear the `stepping'
11805 flag.
11806 (wait_for_sigstop): Don't leave a finished single-step SIGTRAP
11807 pending.
11808 (linux_continue_one_thread): Only preserve the stepping flag if
11809 there's a pending breakpoint.
11810
11811 2009-03-31 Pedro Alves <pedro@codesourcery.com>
11812
11813 * server.c (main): After the inferior having exited, call
11814 remote_close before exiting gdbserver.
11815
11816 2009-03-25 Thiago Jung Bauermann <bauerman@br.ibm.com>
11817
11818 Fix size of FPSCR in Power 7 processors.
11819 * linux-ppc-low.c (PPC_FEATURE_ARCH_2_05): Remove #define.
11820 (PPC_FEATURE_HAS_DFP): New #define.
11821 (ppc_arch_setup): Check for DFP feature instead of ISA 2.05 to decide on
11822 size of the FPSCR.
11823
11824 2009-03-23 Pedro Alves <pedro@codesourcery.com>
11825
11826 * server.c (handle_query) Whitespace and formatting.
11827
11828 2009-03-22 Pedro Alves <pedro@codesourcery.com>
11829
11830 * i387-fp.c, linux-arm-low.c, linux-cris-low.c,
11831 linux-crisv32-low.c, linux-i386-low.c, linux-low.c,
11832 linux-mips-low.c, linux-s390-low.c, linux-sparc-low.c,
11833 linux-x86-64-low.c, linux-xtensa-low.c, proc-service.c,
11834 regcache.c, remote-utils.c, server.c, spu-low.c, target.h,
11835 thread-db.c, win32-low.c, xtensa-xtregs.c, gdbreplay.c,
11836 Makefile.in, configure.ac: Fix whitespace throughout.
11837 * configure: Regenerate.
11838
11839 2009-03-22 Pedro Alves <pedro@codesourcery.com>
11840
11841 * inferiors.c (find_inferior): Make it safe for the callback
11842 function to delete the currently iterated inferior.
11843
11844 2009-03-22 Pedro Alves <pedro@codesourcery.com>
11845
11846 * Makefile.in (linuw_low_h): Move higher.
11847 (thread-db.o): Depend on $(linux_low_h).
11848
11849 2009-03-17 Pedro Alves <pedro@codesourcery.com>
11850
11851 Rename "process" to "lwp" throughout.
11852
11853 * linux-low.c (all_processes): Rename to...
11854 (all_lwps): ... this.
11855 (inferior_pid, handle_extended_wait, get_stop_pc): Adjust.
11856 (add_process): Rename to ...
11857 (add_lwp): ... this. Adjust.
11858 (linux_create_inferior): Adjust.
11859 (linux_attach_lwp): Adjust.
11860 (linux_attach): Adjust.
11861 (linux_kill_one_process): Rename to ...
11862 (linux_kill_one_lwp): ... this. Adjust.
11863 (linux_kill): Adjust.
11864 (linux_detach_one_process): Rename to ...
11865 (linux_detach_one_lwp): ... this. Adjust.
11866 (linux_detach): Adjust.
11867 (check_removed_breakpoint): Adjust.
11868 (status_pending_p): Adjust.
11869 (linux_wait_for_process): Rename to ...
11870 (linux_wait_for_lwp): ... this. Adjust.
11871 (linux_wait_for_event): Adjust.
11872 (send_sigstop): Adjust.
11873 (wait_for_sigstop): Adjust.
11874 (stop_all_processes): Rename to ...
11875 (stop_all_lwps): ... this.
11876 (linux_resume_one_process): Rename to ...
11877 (linux_resume_one_lwp): ... this. Adjust.
11878 (linux_set_resume_request, linux_continue_one_thread)
11879 (linux_queue_one_thread, resume_status_pending_p)
11880 (usr_store_inferior_registers, regsets_store_inferior_registers)
11881 (linux_request_interrupt, linux_read_offsets, linux_xfer_siginfo):
11882 Adjust.
11883 * linux-low.h (get_process): Rename to ...
11884 (get_lwp): ... this. Adjust.
11885 (get_thread_process): Rename to ...
11886 (get_thread_lwp): ... this. Adjust.
11887 (get_process_thread): Rename to ...
11888 (get_lwp_thread): ... this. Adjust.
11889 (struct process_info): Rename to ...
11890 (struct lwp_info): ... this.
11891 (all_processes): Rename to ...
11892 (all_lwps): ... this.
11893 * proc-service.c (ps_lgetregs): Adjust.
11894 * thread-db.c (thread_db_create_event, find_one_thread)
11895 (maybe_attach_thread, thread_db_get_tls_address): Adjust.
11896
11897 2009-03-14 Pedro Alves <pedro@codesourcery.com>
11898
11899 * server.c (handle_query): Handle "qAttached".
11900
11901 2009-03-13 Nathan Sidwell <nathan@codesourcery.com>
11902
11903 * Makefile.in, hostio-errno.c, errno.c, xtensa-xtregs.c: Change to
11904 GPLv3, update license URL.
11905
11906 2009-03-01 Doug Evans <dje@google.com>
11907
11908 * Makefile.in (INCLUDE_CFLAGS): Add -I$(srcdir)/../common.
11909 (server_h): Add gdb_signals.h.
11910 (signals.o): Update.
11911 * server.h (target_signal_from_host,target_signal_to_host_p)
11912 (target_signal_to_host,target_signal_to_name): Moved to gdb_signals.h.
11913
11914 2009-02-14 Pierre Muller <muller@ics.u-strasbg.fr>
11915
11916 * remote-utils.c (getpkt): Also generate remote-debug
11917 information if noack_mode is set.
11918
11919 2009-02-06 Pedro Alves <pedro@codesourcery.com>
11920
11921 * server.c (handle_query): Report qXfer:siginfo:read and
11922 qXfer:siginfo:write as supported and handle them.
11923 * target.h (struct target_ops) <qxfer_siginfo>: New field.
11924 * linux-low.c (linux_xfer_siginfo): New.
11925 (linux_target_ops): Set it.
11926
11927 2009-01-26 Pedro Alves <pedro@codesourcery.com>
11928
11929 * server.c (gdbserver_usage): Mention --remote-debug.
11930 (main): Accept '--remote-debug' switch.
11931
11932 2009-01-18 Doug Evans <dje@google.com>
11933
11934 * regcache.c (new_register_cache): No need to check result of xcalloc.
11935 * server.c (handle_search_memory): Back out calls to xmalloc,
11936 result is checked and error is returned to user upon failure.
11937 (handle_query): Ditto. Add more checks for result of malloc.
11938 (handle_v_cont): Check result of malloc, report error back to
11939 user upon failure.
11940 (handle_v_run): Ditto. Call freeargv.
11941 * server.h (freeargv): Declare.
11942 * utils.c (freeargv): New fn.
11943
11944 2009-01-15 Doug Evans <dje@google.com>
11945
11946 * gdbreplay.c (perror_with_name): Make arg const char *.
11947 * server.h (target_signal_to_name): Make return type const char *.
11948 * thread-db.c (thread_db_err_str): Make return type const char *.
11949 * utils.c (perror_with_name): Make arg const char *.
11950
11951 2009-01-14 Pedro Alves <pedro@codesourcery.com>
11952
11953 * win32-low.c (get_child_debug_event): Issue a final DBG_CONTINUE
11954 when handling a EXIT_PROCESS_DEBUG_EVENT.
11955
11956 2009-01-06 Joel Brobecker <brobecker@adacore.com>
11957
11958 * gdbreplay.c (gdbreplay_version): Update copyright year.
11959 * server.c (gdbserver_version): Likewise.
11960
11961 2009-01-05 Doug Evans <dje@google.com>
11962
11963 * linux-low.c (linux_attach_lwp): Add some comments/fixmes.
11964 (handle_extended_wait): Improve comment.
11965
11966 2008-12-13 Doug Evans <dje@google.com>
11967
11968 * utils.c (xmalloc,xcalloc,xstrdup): New fns.
11969 * server.h (ATTR_MALLOC): New macro.
11970 (xmalloc,xcalloc,xstrdup): Declare.
11971 * hostio.c: Replace malloc,calloc,strdup with xmalloc,xcalloc,xstrdup.
11972 * inferiors.c: Ditto.
11973 * linux-low.c: Ditto.
11974 * mem-break.c: Ditto.
11975 * regcache.c: Ditto.
11976 * remote-utils.c: Ditto.
11977 * server.c: Ditto.
11978 * target.c: Ditto.
11979 * win32-low.c: Ditto.
11980
11981 2008-12-12 Doug Evans <dje@google.com>
11982
11983 * linux-low.c (linux_wait_for_process): Don't clobber current_inferior
11984 in debugging printf.
11985
11986 * linux-low.c (handle_extended_wait): Simplify, use my_waitpid.
11987
11988 2008-12-09 Doug Evans <dje@google.com>
11989
11990 * linux-low.h (struct process_info): Delete member tid, unused.
11991 * thread-db.c (find_one_thread): Update.
11992 (maybe_attach_thread): Update.
11993
11994 2008-12-02 Pedro Alves <pedro@codesourcery.com>
11995
11996 * target.h (struct target_ops): Add qxfer_osdata member.
11997 * linux-low.c: Include ctype.h and pwd.h and sys/types.h
11998 and dirent.h.
11999 (linux_qxfer_osdata): New functions.
12000 (linux_target_ops): Register linux_qxfer_osdata as qxfer_osdata
12001 callback.
12002 * server.c (handle_query): Handle "qXfer:osdata:read:".
12003 * remote-utils.c (buffer_grow, buffer_free, buffer_init, buffer_finish)
12004 (buffer_xml_printf): New functions.
12005 * server.h (struct buffer): New.
12006 (buffer_grow_str, buffer_grow_str0): New macros.
12007 (buffer_grow, buffer_free, buffer_init, buffer_finish)
12008 (buffer_xml_printf): Declare.
12009
12010 2008-11-24 Doug Evans <dje@google.com>
12011
12012 * Makefile.in (VERSION,DIST,LINT,LINTFLAGS): Delete, unused.
12013
12014 2008-11-24 Daniel Jacobowitz <dan@codesourcery.com>
12015
12016 * server.c (handle_v_run): Always use the supplied argument list.
12017
12018 2008-11-19 Bob Wilson <bob.wilson@acm.org>
12019
12020 * xtensa-xtregs.c (XTENSA_ELF_XTREG_SIZE): Change to 4.
12021 (xtensa_regmap_table): Add entry for scompare1.
12022
12023 2008-11-18 Thiago Jung Bauermann <bauerman@br.ibm.com>
12024
12025 * Makefile.in (powerpc-isa205-32l.o, powerpc-isa205-32l.c,
12026 powerpc-isa205-altivec32l.o, powerpc-isa205-altivec32l.c,
12027 powerpc-isa205-vsx32l.o, powerpc-isa205-vsx32l.c,
12028 powerpc-isa205-64l.o, powerpc-isa205-64l.c,
12029 powerpc-isa205-altivec64l.o, powerpc-isa205-altivec64l.c,
12030 powerpc-isa205-vsx64l.o, powerpc-isa205-vsx64l.c): New targets.
12031 * configure.srv (powerpc*-*-linux*): Add ISA 2.05 object files and
12032 XML target descriptions.
12033 * linux-ppc-low.c (ppc_arch_setup): Init registers with 64-bit FPSCR
12034 when inferior is running on an ISA 2.05 or later processor. Add
12035 special case to return offset for full 64-bit slot of FPSCR when
12036 in 32-bits.
12037
12038 2008-11-14 Daniel Gutson <dgutson@codesourcery.com>
12039
12040 * Makefile.in (SFILES, clean): Added sparc64 files.
12041 (reg-sparc64.o, reg-sparc64.c): New.
12042 * configure.srv (sparc*-*-linux*): New configuration.
12043 * linux-low.c (regsets_fetch_inferior_registers): Swap ptrace
12044 syscall arguments for SPARC.
12045 (regsets_store_inferior_registers): Likewise.
12046 * linux-sparc-low.c: New file.
12047
12048 2008-10-21 Doug Evans <dje@google.com>
12049
12050 * Makefile.in (BFD_DIR,BFD,BFD_SRC,BFD_CFLAGS): Delete.
12051 (READLINE_DIR,READLINE_DEP): Delete.
12052 (INTERNAL_CFLAGS): Update.
12053 (LINTFLAGS): Update.
12054
12055 2008-10-10 Pedro Alves <pedro@codesourcery.com>
12056
12057 * server.c (handle_v_run): If GDB didn't specify an argv, use the
12058 whole argv from the last run, not just argv[0].
12059
12060 2008-09-08 Pedro Alves <pedro@codesourcery.com>
12061
12062 * regcache.c (new_register_cache): Return NULL if the register
12063 cache size isn't known yet.
12064 (free_register_cache): Avoid dereferencing a NULL regcache.
12065
12066 2008-09-04 Daniel Jacobowitz <dan@codesourcery.com>
12067
12068 * configure.srv: Merge MIPS and MIPS64.
12069
12070 2008-08-24 Maciej W. Rozycki <macro@linux-mips.org>
12071
12072 * Makefile.in (uninstall): Apply $(EXEEXT) too.
12073
12074 2008-08-18 Luis Machado <luisgpm@br.ibm.com>
12075
12076 * Makefile.in: Add required vsx dependencies.
12077
12078 * linux-ppc-low: Define PPC_FEATURE_HAS_VSX.
12079 Declare init_registers_powerpc_vsx32l.
12080 Declare init_registers_powerpc_vsx64l.
12081 Define PTRACE_GETVSXREGS and PTRACE_SETVSXREGS.
12082 (ppc_arch_setup): Check for VSX in hwcap.
12083 (ppc_fill_vsxregset): New function.
12084 (ppc_store_vsxregset): New function.
12085 Add new VSX entry in regset_info target_regsets.
12086
12087 * configure.srv: Add new VSX dependencies.
12088
12089 2008-08-12 Pedro Alves <pedro@codesourcery.com>
12090
12091 * remote-utils.c (noack_mode, transport_is_reliable): New globals.
12092 (remote_open): Set or clear transport_is_reliable.
12093 (putpkt_binary): Don't expect acks in noack mode.
12094 (getpkt): Don't send ack/nac in noack mode.
12095 * server.c (handle_general_set): Handle QStartNoAckMode.
12096 (handle_query): If connected by tcp pass QStartNoAckMode+ in
12097 qSupported.
12098 (main): Reset noack_mode on every connection.
12099 * server.h (noack_mode): Declare.
12100
12101 2008-08-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12102
12103 * Makefile.in (GDBREPLAY_OBS): New variable.
12104 (gdbreplay$(EXEEXT)): Use it to avoid unportable $^.
12105
12106 2008-08-05 Ulrich Weigand <uweigand@de.ibm.com>
12107 Daniel Jacobowitz <dan@codesourcery.com>
12108
12109 * linux-low.c (linux_resume_one_process): Ignore ESRCH.
12110 (usr_store_inferior_registers): Likewise.
12111 (regsets_store_inferior_registers): Likewise.
12112
12113 2008-07-31 Rolf Jansen <rj@surtec.com>
12114 Pedro Alves <pedro@codesourcery.com>
12115
12116 * configure.ac: Check for memmem declaration.
12117 * server.c [HAVE_MALLOC_H]: Include malloc.h.
12118 (disable_packet_vCont, disable_packet_Tthread, disable_packet_qC)
12119 (disable_packet_qfThreadInfo): Unconditionally compile.
12120 * server.h [!HAVE_DECL_MEMMEM]: Declare memmem.
12121 * configure, config.in: Regenerate.
12122
12123 2008-07-28 Doug Kwan <dougkwan@google.com>
12124
12125 * linux-low.c (sys/dir.h, sys/user.h): Remove includes.
12126 (linux_write_memory): Remove declaration of errno.
12127
12128 2008-07-12 Ulrich Weigand <uweigand@de.ibm.com>
12129
12130 * linux-low.c (handle_extended_wait): Do not use "status"
12131 variable uninitialized.
12132
12133 2008-07-07 Pedro Alves <pedro@codesourcery.com>
12134
12135 * server.c (handle_v_attach): Inhibit reporting dll changes.
12136
12137 2008-06-27 Pedro Alves <pedro@codesourcery.com>
12138
12139 * remote-utils.c (prepare_resume_reply): If requested, don't
12140 output "thread:TID" in the T stop reply.
12141
12142 * server.c (disable_packet_vCont, disable_packet_Tthread)
12143 (disable_packet_qC, disable_packet_qfThreadInfo): New globals.
12144 (handle_query): If requested, disable support for qC, qfThreadInfo
12145 and qsThreadInfo.
12146 (handle_v_requests): If requested, disable support for vCont.
12147 (gdbserver_show_disableable): New.
12148 (main): Handle --disable-packet and --disable-packet=LIST.
12149
12150 * server.h (disable_packet_vCont, disable_packet_Tthread)
12151 (disable_packet_qC, disable_packet_qfThreadInfo): Declare.
12152
12153 2008-06-20 Carlos O'Donell <carlos@codesourcery.com>
12154
12155 * server.c (gdbserver_usage): Mention --version.
12156
12157 2008-06-06 Daniel Jacobowitz <dan@codesourcery.com>
12158
12159 * Makefile.in (gdbreplay.o): New rule.
12160
12161 2008-06-06 Joseph Myers <joseph@codesourcery.com>
12162
12163 * gdbreplay.c (gdbreplay_version): Say gdbreplay in version
12164 message, not gdbserver.
12165
12166 2008-06-05 Vladimir Prus <vladimir@codesourcery.com>
12167 Nathan Sidwell <nathan@codesourcery.com>
12168 Joseph Myers <joseph@codesourcery.com>
12169
12170 * acinclude.m4: Include ../../config/acx.m4.
12171 * configure.ac: Use ACX_PKGVERSION and ACX_BUGURL.
12172 * configure, config.in: Regenerate.
12173 * Makefile.in (gdbreplay$(EXEEXT)): Add version.o.
12174 * server.c (gdbserver_version): Print PKGVERSION.
12175 (gdbsrever_usage): Add stream parameter. Print REPORT_BUGS_TO.
12176 (main): Adjust gdbserver_usage calls.
12177 * gdbreplay.c (version, host_name): Add declarations.
12178 (gdbreplay_version, gdbreplay_usage): New.
12179 (main): Accept --version and --help options.
12180
12181 2008-06-04 Daniel Jacobowitz <dan@codesourcery.com>
12182
12183 * linux-arm-low.c (thumb_breakpoint, thumb_breakpoint_len): New.
12184 (arm_breakpoint_at): Handle Thumb.
12185 (the_low_target): Add comment.
12186
12187 2008-05-29 Ulrich Weigand <uweigand@de.ibm.com>
12188
12189 * linux-ppc-low.c (ppc_collect_ptrace_register): Clear buffer.
12190
12191 2008-05-09 Doug Evans <dje@google.com>
12192
12193 * server.h (decode_search_memory_packet): Declare.
12194 * remote-utils.c (decode_search_memory_packet): New fn.
12195 * server.c (handle_search_memory_1): New fn.
12196 (handle_search_memory): New fn.
12197 (handle_query): Process qSearch:memory packets.
12198
12199 2008-05-08 Ulrich Weigand <uweigand@de.ibm.com>
12200
12201 * regcache.c (registers_length): Remove.
12202 (set_register_cache): Verify that PBUFSIZ is large enough to hold a
12203 full register packet.
12204 * regcache.h (registers_length): Remove prototype.
12205 * server.h (PBUFSIZ): Define to 16384.
12206
12207 2008-05-03 Ulrich Weigand <uweigand@de.ibm.com>
12208
12209 * configure.srv (powerpc*-*-linux*): Set srv_regobj to
12210 powerpc-32l.o, powerpc-altivec32l.o, powerpc-e500l.o,
12211 powerpc-64l.o, and powerpc-altivec64l.o.
12212 Remove rs6000/powerpc-32.xml, rs6000/powerpc-64.xml, and
12213 rs6000/powerpc-e500.xml; add rs6000/powerpc-32l.xml,
12214 rs6000/powerpc-altivec32l.xml, rs6000/powerpc-e500l.xml,
12215 rs6000/powerpc-64l.xml, rs6000/powerpc-altivec64l.xml,
12216 rs6000/power-linux.xml, and rs6000/power64-linux.xml
12217 to srv_xmlfiles.
12218
12219 * Makefile.in (reg-ppc.o, reg-ppc.c): Remove, replace by ...
12220 (powerpc-32l.o, powerpc-32l.c): ... these new rules.
12221 (powerpc-32.o, powerpc-32.c): Remove, replace by ...
12222 (powerpc-altivec32l.o, powerpc-altivec32l.c): ... these new rules.
12223 (powerpc-e500.o, powerpc-e500.c): Remove, replace by ...
12224 (powerpc-e500l.o, powerpc-e500l.c): ... these new rules.
12225 (reg-ppc64.o, reg-ppc64.c): Remove, replace by ...
12226 (powerpc-64l.o, powerpc-64l.c): ... these new rules.
12227 (powerpc-64.o, powerpc-64.c): Remove, replace by ...
12228 (powerpc-altivec64l.o, powerpc-altivec64l.c): ... these new rules.
12229 (clean): Update.
12230
12231 * linux-ppc-low.c (init_registers_ppc): Remove, replace by ...
12232 (init_registers_powerpc_32l): ... this new prototype.
12233 (init_registers_powerpc_32): Remove, replace by ...
12234 (init_registers_powerpc_altivec32l): ... this new prototype.
12235 (init_registers_powerpc_e500): Remove, replace by ...
12236 (init_registers_powerpc_e500l): ... this new prototype.
12237 (init_registers_ppc64): Remove, replace by ...
12238 (init_registers_powerpc_64l): ... this new prototype.
12239 (init_registers_powerpc_64): Remove, replace by ...
12240 (init_registers_powerpc_altivec64l): ... this new prototype.
12241 (ppc_num_regs): Set to 73.
12242 (PT_ORIG_R3, PT_TRAP): Define if necessary.
12243 (ppc_regmap, ppc_regmap_e500): Add values for orig_r3 and trap.
12244 (ppc_cannot_store_register): Handle orig_r3 and trap.
12245 (ppc_arch_setup): Update init_registers_... calls.
12246 (ppc_fill_gregset): Handle orig_r3 and trap.
12247
12248 * inferiors.c (clear_inferiors): Reset current_inferior.
12249
12250 2008-04-23 Paolo Bonzini <bonzini@gnu.org>
12251
12252 * acinclude.m4: Add override.m4.
12253 * configure: Regenerate.
12254
12255 2008-04-21 Ulrich Weigand <uweigand@de.ibm.com>
12256
12257 * linux-ppc-low.c (ppc_arch_setup): Reset ppc_hwcap after the
12258 initial call to init_register_ppc64.
12259
12260 2008-04-21 Ulrich Weigand <uweigand@de.ibm.com>
12261
12262 * configure.srv (powerpc64-*-linux*, powerpc-*-linux*): Merge into
12263 single powerpc*-*-linux* case.
12264 (s390-*-linux*, s390x-*-linux*): Merge into single s390*-*-linux* case.
12265
12266 2008-04-17 Ulrich Weigand <uweigand@de.ibm.com>
12267
12268 * configure.srv [powerpc64-*-linux*]: Remove powerpc-e500.o from
12269 srv_regobj. Remove rs6000/powerpc-e500.xml and rs6000/power-spe.xml
12270 from reg_xmlfiles.
12271 * linux-ppc-low.c: Include <elf.h>.
12272 (PPC_FEATURE_HAS_ALTIVEC, PPC_FEATURE_HAS_SPE): Define.
12273 (ppc_hwcap): New global variable.
12274 (ppc_regmap): Remove __SPE__ #ifdef sections.
12275 (ppc_regmap_e500): New global variable.
12276 (ppc_cannot_store_register): Update __SPE__ special case.
12277 (ppc_get_hwcap): New function.
12278 (ppc_arch_setup): Use it to determine whether inferior supports
12279 AltiVec or SPE registers. Set the_low_target.regmap if appropriate.
12280 (ppc_fill_vrregset, ppc_store_vrregset): Define unconditionally.
12281 Do not access registers if target does not support AltiVec.
12282 (ppc_fill_evrregset, ppc_store_evrregset): Define unconditionally.
12283 Do not access registers if target does not support SPE.
12284 (target_regsets): Unconditionally include AltiVec and SPE regsets.
12285
12286 2008-04-17 Daniel Jacobowitz <dan@codesourcery.com>
12287
12288 * linux-low.c (disabled_regsets, num_regsets): New.
12289 (use_regsets_p): Delete.
12290 (linux_wait_for_process): Clear disabled_regsets.
12291 (regsets_fetch_inferior_registers): Check and set it.
12292 (regsets_store_inferior_registers): Likewise.
12293 (linux_fetch_registers, linux_store_registers): Do not use
12294 use_regsets_p.
12295 (initialize_low): Allocate disabled_regsets.
12296
12297 2008-04-14 Daniel Jacobowitz <dan@codesourcery.com>
12298
12299 * Makefile.in (LIBOBJS): New.
12300 (OBS): Use LIBOBJS.
12301 (memmem.o): New rule.
12302 * configure.ac: Use AC_CONFIG_LIBOBJ_DIR and check for memmem.
12303 * configure: Regenerated.
12304
12305 2008-04-04 Ulrich Weigand <uweigand@de.ibm.com>
12306
12307 * server.c (handle_query): Never return "unsupported" for
12308 qXfer:features:read queries.
12309
12310 2008-03-27 Ulrich Weigand <uweigand@de.ibm.com>
12311
12312 * server.c (get_features_xml): Fix inverted condition.
12313 (handle_query): Always support qXfer:feature:read.
12314
12315 2008-03-10 Daniel Jacobowitz <dan@codesourcery.com>
12316
12317 * server.c (wrapper_argv): New.
12318 (start_inferior): Handle wrapper_argv. If set, expect an extra
12319 trap.
12320 (gdbserver_usage): Document --wrapper.
12321 (main): Parse --wrapper.
12322
12323 2008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
12324
12325 * configure.srv [powerpc64-*-linux*]: Add all files mentioned for
12326 powerpc-*-linux* to srv_regobj and reg_xmlfiles.
12327 * linux-ppc-low.c (ppc_get_pc): Support bi-arch operation.
12328 (ppc_set_pc): Likewise.
12329 (ppc_arch_setup): New function.
12330 (ppc_fill_gregset): Call ppc_collect_ptrace_register instead
12331 of collect_register.
12332 (the_low_target): Use ppc_arch_setup as arch_setup initializer.
12333
12334 2008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
12335
12336 * configure.srv [powerpc64-*-linux*]: Use linux-ppc-low.o
12337 instead of linux-ppc64-low.o.
12338 * linux-ppc64-low.c: Remove file.
12339 * Makefile.in (SFILES): Remove linux-ppc64-low.c.
12340 (linux-ppc64-low.o): Remove rule.
12341
12342 * linux-ppc-low.c (init_registers_ppc64): Add prototype.
12343 (init_registers_powerpc_64): Likewise.
12344 (ppc_regmap): Conditionally define depending on __powerpc64__.
12345 (ppc_cannot_store_register): Do not special-case "fpscr" when
12346 compiled on __powerpc64__.
12347 (ppc_collect_ptrace_register): New function.
12348 (ppc_supply_ptrace_register): New function.
12349 (ppc_breakpoint): Change type to "unsigned int".
12350 (ppc_breakpoint_at): Change type of "insn" to "unsigned int".
12351 (the_low_target): Conditionally provide initializers for the
12352 arch_setup member depending on __powerpc64__. Install
12353 collect_ptrace_register and supply_ptrace_register members.
12354
12355 2008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
12356
12357 * regcache.h (gdbserver_xmltarget): Add extern declaration.
12358 * server.c (gdbserver_xmltarget): Define.
12359 (get_features_xml): Use it to replace "target.xml" and arch_string.
12360
12361 * configure.srv: Remove srv_xmltarget. Add XML files that were
12362 mentioned there to srv_xmlfiles instead. Remove conditional tests
12363 on gdb_cv_arm_iwmmxt, gdb_cv_ppc_altivec, gdb_cv_ppc_spe; set
12364 srv_xmlfiles and srv_regobj to include all possible choices.
12365 * configure.ac (srv_xmltarget): Remove.
12366 (srv_xmlfiles): Do not add "target.xml".
12367 (gdb_cv_arm_iwmmxt, gdb_cv_ppc_altivec, gdb_cv_ppc_spe): Remove
12368 checks for supplementary target information.
12369 * configure: Regenerate.
12370 * Makefile.in (XML_TARGET): Remove.
12371 (target.xml): Remove rule.
12372 (clean): Do not clean up target.xml.
12373 (.PRECIOUS): Do not mention target.xml.
12374
12375 * target.h (struct target_ops): Remove arch_string member.
12376 * linux-low.c (linux_arch_string): Remove.
12377 (linux_target_ops): Remove arch_string initializer.
12378 * linux-low.h (struct linux_target_ops): Remove arch_string member.
12379 * linux-i386-low.c (the_low_target): Remove arch_string initializer.
12380 * linux-x86-64-low.c (the_low_target): Remove arch_string initializer.
12381 * spu-low.c (spu_arch_string): Remove.
12382 (spu_target_ops): Remove arch_string initializer.
12383 * win32-low.c (win32_arch_string): Remove.
12384 (win32_target_ops): Remove arch_string initializer.
12385 * win32-low.h (struct win32_target_ops): Remove arch_string member.
12386 * win32-arm-low.c (the_low_target): Remove arch_string initializer.
12387 * win32-i368-low.c (the_low_target): Remove arch_string initializer.
12388
12389 2008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
12390
12391 * linux-low.h (struct linux_target_ops): Replace left_pad_xfer field
12392 by collect_ptrace_register and supply_ptrace_register hooks.
12393 * linux-low.c (fetch_register): Use supply_ptrace_register callback
12394 instead of checking for the_low_target.left_pad_xfer.
12395 (usr_store_inferior_registers): Use collect_ptrace_register callback
12396 instead of checking for the_low_target.left_pad_xfer.
12397
12398 * linux-s390-low.c (s390_collect_ptrace_register): New function.
12399 (s390_supply_ptrace_register): Likewise.
12400 (s390_fill_gregset): Call s390_collect_ptrace_register.
12401 (the_low_target): Update.
12402
12403 * linux-ppc64-low.c (ppc_collect_ptrace_register): New function.
12404 (ppc_supply_ptrace_register): Likewise.
12405 (the_low_target): Update.
12406
12407 * linux-i386-low.c (the_low_target): Update.
12408 * linux-x86-64-low.c (the_low_target): Update.
12409
12410 2008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
12411
12412 * configure.srv [s390x-*-linux*]: Set srv_regobj to include both
12413 reg-s390.o and reg-s390x.o.
12414
12415 * linux-low.c (new_inferior): New global variable.
12416 (linux_create_inferior, linux_attach): Set it.
12417 (linux_wait_for_process): Call the_low_target.arch_setup after the
12418 target has stopped for the first time.
12419 (initialize_low): Do not call the_low_target.arch_setup.
12420
12421 * linux-s390-low.c (s390_get_pc): Support bi-arch operation.
12422 (s390_set_pc): Likewise.
12423 (s390_arch_setup): New function.
12424 (the_low_target): Use s390_arch_setup as arch_setup routine.
12425
12426 * regcache.c (realloc_register_cache): New function.
12427 (set_register_cache): Call it for each existing regcache.
12428
12429 2008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
12430
12431 * server.h (init_registers): Remove prototype.
12432
12433 * linux-low.h (struct linux_target_ops): Add arch_setup field.
12434 * linux-low.c (initialize_low): Call the_low_target.arch_setup ()
12435 instead of init_registers ().
12436 * linux-arm-low.c (init_registers_arm): Add prototype.
12437 (init_registers_arm_with_iwmmxt): Likewise.
12438 (the_low_target): Add initializer for arch_setup field.
12439 * linux-cris-low.c (init_registers_cris): Add prototype.
12440 (the_low_target): Add initializer for arch_setup field.
12441 * linux-crisv32-low.c (init_registers_crisv32): Add prototype.
12442 (the_low_target): Add initializer for arch_setup field.
12443 * linux-i386-low.c (init_registers_i386_linux): Add prototype.
12444 (the_low_target): Add initializer for arch_setup field.
12445 * linux-ia64-low.c (init_registers_ia64): Add prototype.
12446 (the_low_target): Add initializer for arch_setup field.
12447 * linux-m32r-low.c (init_registers_m32r): Add prototype.
12448 (the_low_target): Add initializer for arch_setup field.
12449 * linux-m68k-low.c (init_registers_m68k): Add prototype.
12450 (the_low_target): Add initializer for arch_setup field.
12451 * linux-mips-low.c (init_registers_mips_linux): Add prototype.
12452 (init_registers_mips64_linux): Likewise.
12453 (the_low_target): Add initializer for arch_setup field.
12454 * linux-ppc-low.c (init_registers_ppc): Add prototype.
12455 (init_registers_powerpc_32, init_registers_powerpc_e500): Likewise.
12456 (the_low_target): Add initializer for arch_setup field.
12457 * linux-ppc64-low.c (init_registers_ppc64): Add prototype.
12458 (init_registers_powerpc_64): Likewise.
12459 (the_low_target): Add initializer for arch_setup field.
12460 * linux-s390-low.c (init_registers_s390): Add prototype.
12461 (init_registers_s390x): Likewise.
12462 (the_low_target): Add initializer for arch_setup field.
12463 * linux-sh-low.c (init_registers_sh): Add prototype.
12464 (the_low_target): Add initializer for arch_setup field.
12465 * linux-x86-64-low.c (init_registers_x86_64_linux): Add prototype.
12466 (the_low_target): Add initializer for arch_setup field.
12467 * linux-xtensa-low.c (init_registers_xtensa): Add prototype.
12468 (the_low_target): Add initializer for arch_setup field.
12469
12470 * win32-low.h (struct win32_target_ops): Add arch_setup field.
12471 * win32-low.c (initialize_low): Call the_low_target.arch_setup ()
12472 instead of init_registers ().
12473 * win32-arm-low.c (init_registers_arm): Add prototype.
12474 (the_low_target): Add initializer for arch_setup field.
12475 * win32-i386-low.c (init_registers_i386): Add prototype.
12476 (the_low_target): Add initializer for arch_setup field.
12477
12478 * spu-low.c (init_registers_spu): Add prototype.
12479 (initialize_low): Call initialie_registers_spu () instead of
12480 initialize_registers ().
12481
12482 2008-02-19 Pedro Alves <pedro@codesourcery.com>
12483
12484 * server.c (handle_v_requests): When handling the vRun and vAttach
12485 packets, if already debugging a process, don't kill it. Return an
12486 error instead.
12487
12488 2008-02-17 Daniel Jacobowitz <dan@codesourcery.com>
12489
12490 * server.c (handle_query): Correct length check.
12491
12492 2008-02-14 Pedro Alves <pedro_alves@portugalmail.pt>
12493
12494 * win32-low.c (do_initial_child_stuff): Add process handle
12495 parameter. Set current_process_handle and current_process_id from the
12496 parameters. Clear globals.
12497 (win32_create_inferior): Don't set current_process_handle and
12498 current_process_id here. Instead pass them on the call to
12499 do_initial_child_stuff.
12500 (win32_attach): Likewise.
12501 (win32_clear_inferiors): New.
12502 (win32_kill): Don't close the current process handle or the
12503 current thread handle here. Instead call win32_clear_inferiors.
12504 (win32_detach): Don't open a new handle to the process. Call
12505 win32_clear_inferiors.
12506 (win32_join): Don't rely on current_process_handle; open a new
12507 handle using the process id.
12508 (win32_wait): Call win32_clear_inferiors when the inferior process
12509 has exited.
12510
12511 2008-02-14 Daniel Jacobowitz <dan@codesourcery.com>
12512
12513 * server.c (monitor_show_help): Add "exit".
12514
12515 2008-02-11 Maxim Grigoriev <maxim2405@gmail.com>
12516
12517 * Makefile.in (SFILES): Add linux-xtensa-low.c.
12518 (clean): Add reg-xtensa.c.
12519 (linux-xtensa-low.o, reg-xtensa.o, reg-xtensa.c): New dependencies.
12520 * configure.srv (xtensa*-*-linux*) New target.
12521 * linux-xtensa-low.c: New.
12522 * xtensa-xtregs.c: New.
12523
12524 2008-02-01 Pedro Alves <pedro_alves@portugalmail.pt>
12525
12526 * hostio.c: Don't include errno.h.
12527 (errno_to_fileio_errno): Move to hostio-errno.
12528 * hostio.c: (hostio_error): Remove the error parameter. Defer the
12529 error number outputting to the target->hostio_last_error callback.
12530 (hostio_packet_error): Use FILEIO_EINVAL directly.
12531 (handle_open, handle_pread, hostio_error, handle_unlink): Update
12532 calls to hostio_error.
12533 * hostio-errno.c: New.
12534 * server.h (hostio_last_error_from_errno): Declare.
12535 * target.h (target_ops): Add hostio_last_error member.
12536 * linux-low.c (linux_target_op): Register hostio_last_error_from_errno
12537 as hostio_last_error handler.
12538 * spu-low.c (spu_target_ops): Likewise.
12539 * win32-low.c [_WIN32_WCE] (win32_error_to_fileio_error)
12540 (wince_hostio_last_error): New functions.
12541 (win32_target_ops) [_WIN32_WCE]: Register wince_hostio_last_error
12542 as hostio_last_error handler.
12543 (win32_target_ops) [!_WIN32_WCE]: Register
12544 hostio_last_error_from_errno as hostio_last_error handler.
12545 * Makefile.in (SFILES): Add hostio.c and hostio-errno.c.
12546 (hostio-errno.o): New rule.
12547 * configure.ac (GDBSERVER_DEPFILES): Add $srv_hostio_err_objs.
12548 * configure.srv (srv_hostio_err_objs): New variable. Default to
12549 hostio-errno.o.
12550 (arm*-*-mingw32ce*): Set srv_hostio_err_objs to "".
12551 * configure: Regenerate.
12552
12553 2008-01-29 Daniel Jacobowitz <dan@codesourcery.com>
12554
12555 * linux-low.c (linux_attach_lwp): Do not _exit after errors.
12556 (linux_kill, linux_detach): Clean up the process list.
12557 * remote-utils.c (remote_open): Improve port number parsing.
12558 (putpkt_binary, input_interrupt): Only send interrupts if the target
12559 is running.
12560 * server.c (extended_protocol): Make static.
12561 (attached): Define earlier.
12562 (exit_requested, response_needed, program_argv): New variables.
12563 (target_running): New.
12564 (start_inferior): Clear attached here.
12565 (attach_inferior): Set attached here.
12566 (require_running): Define.
12567 (handle_query): Use require_running and target_running. Implement
12568 "monitor exit".
12569 (handle_v_attach, handle_v_run): New.
12570 (handle_v_requests): Use require_running. Handle vAttach and vRun.
12571 (gdbserver_usage): Update.
12572 (main): Redo argument parsing. Handle --debug and --multi. Handle
12573 --attach along with other options or after the port. Save
12574 program_argv. Support no initial program. Resynchronize
12575 communication with GDB after an error. Handle "monitor exit".
12576 Use require_running and target_running. Always allow the extended
12577 protocol. Do not error out for Hc0 or Hc-1. Do not automatically
12578 restart in extended mode.
12579 * README: Refer to the GDB manual. Update --attach usage.
12580
12581 2007-12-20 Andreas Schwab <schwab@suse.de>
12582
12583 * linux-low.c (STACK_SIZE): Define.
12584 (linux_tracefork_child): Use it. Use __clone2 on ia64.
12585 (linux_test_for_tracefork): Likewise.
12586
12587 2007-12-18 Daniel Jacobowitz <dan@codesourcery.com>
12588
12589 * linux-low.c (linux_wait_for_event): Update messages. Do not
12590 reinsert auto-delete breakpoints.
12591 * mem-break.c (struct breakpoint): Change return type of handler to
12592 int.
12593 (set_breakpoint_at): Update handler type.
12594 (reinsert_breakpoint_handler): Return 1 instead of calling
12595 delete_breakpoint.
12596 (reinsert_breakpoint_by_bp): Check for the original breakpoint before
12597 setting a new one.
12598 (check_breakpoints): Delete auto-delete breakpoints and return 2.
12599 * mem-break.h (set_breakpoint_at): Update handler type.
12600 * thread-db.c (thread_db_create_event, thread_db_create_event): Update.
12601 * win32-low.c (auto_delete_breakpoint): New.
12602 (get_child_debug_event): Use it.
12603
12604 2007-12-16 Daniel Jacobowitz <dan@codesourcery.com>
12605
12606 * configure.ac: Check for pread and pwrite.
12607 * hostio.c (handle_pread): Fall back to lseek and read.
12608 (handle_pwrite): Fall back to lseek and write.
12609 * config.in, configure: Regenerated.
12610
12611 2007-12-07 Daniel Jacobowitz <dan@codesourcery.com>
12612
12613 * server.c (myresume): Add own_buf argument.
12614 (main): Update calls.
12615
12616 2007-12-06 Daniel Jacobowitz <dan@codesourcery.com>
12617
12618 * linux-low.c (linux_wait, linux_resume): Do not handle async I/O.
12619 * remote-utils.c (remote_open): Do not call disable_async_io.
12620 (block_async_io): Delete.
12621 (unblock_async_io): Make static.
12622 (initialize_async_io): New.
12623 * server.c (handle_v_cont): Handle async I/O here.
12624 (myresume): Likewise. Move other common resume tasks here...
12625 (main): ... from here. Call initialize_async_io. Disable async
12626 I/O before the main loop.
12627 * server.h (initialize_async_io): Declare.
12628 (block_async_io, unblock_async_io): Delete prototypes.
12629 * spu-low.c (spu_resume, spu_wait): Do not handle async I/O here.
12630
12631 2007-12-06 Mick Davis <mickd@goanna.iinet.net.au>
12632
12633 * remote-utils.c (readchar): Allow binary data in received messages.
12634
12635 2007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
12636
12637 * win32-low.c (attaching): New global.
12638 (win32_create_inferior): Clear the `attaching' global.
12639 (win32_attach): Set the `attaching' global.
12640 (get_child_debug_event) [_WIN32_WCE]: Stop the inferior when
12641 attaching. Only set a breakpoint at the entry point if not
12642 attaching.
12643
12644 2007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
12645
12646 * server.c (main): Don't report dll events on the initial
12647 connection on attaches.
12648
12649 2007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
12650
12651 * server.c (main): Relax numerical bases supported for the pid of
12652 the --attach command line argument.
12653
12654 2007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
12655
12656 * win32-low.c (win32_attach): Call OpenProcess before
12657 DebugActiveProcess, not after. Add last error output to error
12658 call.
12659
12660 2007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
12661
12662 * win32-low.c (win32_get_thread_context)
12663 (win32_set_thread_context): New functions.
12664 (thread_rec): Use win32_get_thread_context.
12665 (continue_one_thread, win32_resume): Use win32_set_thread_context.
12666 * win32-low.h (win32_thread_info) [_WIN32_WCE]: Add `base_context'
12667 field.
12668
12669 2007-12-03 Leo Zayas
12670 Pedro Alves <pedro_alves@portugalmail.pt>
12671
12672 * win32-low.c (soft_interrupt_requested, faked_breakpoint): New
12673 global variables.
12674 (child_add_thread): Minor cleanup.
12675 (child_continue): Resume artificially suspended threads before
12676 calling ContinueDebugEvent.
12677 (suspend_one_thread): New.
12678 (fake_breakpoint_event): New.
12679 (get_child_debug_event): Change return type to int. Check here if
12680 gdb sent an interrupt request. If a soft interrupt was requested,
12681 fake a breakpoint event. Return 0 if there is no event to handle,
12682 and 1 otherwise.
12683 (win32_wait): Don't check here if gdb sent an interrupt request.
12684 Ensure there is a valid event to handle.
12685 (win32_request_interrupt): Add soft interruption method as last
12686 resort.
12687
12688 2007-12-03 Leo Zayas
12689 Pedro Alves <pedro_alves@portugalmail.pt>
12690
12691 * win32-low.h (win32_thread_info): Add descriptions to the
12692 structure members. Replace `suspend_count' counter by a
12693 `suspended' flag.
12694 * win32-low.c (thread_rec): Update condition of when to get the
12695 context from the inferior. Rely on ContextFlags being set if it
12696 has already been retrieved. Only suspend the inferior thread if
12697 we haven't already. Warn if that fails.
12698 (continue_one_thread): s/suspend_count/suspended/. Only call
12699 ResumeThread once. Warn if that fails.
12700
12701 2007-12-02 Pedro Alves <pedro_alves@portugalmail.pt>
12702
12703 * win32-low.c (win32_wait): Don't read from the inferior when it
12704 has already exited.
12705
12706 2007-12-02 Pedro Alves <pedro_alves@portugalmail.pt>
12707
12708 * Makefile.in (win32_low_h): New variable.
12709 (win32-low.o): Add dependency on $(win32_low_h).
12710 (win32-arm-low.o, win32-i386-low.o): New rules.
12711
12712 2007-11-30 Daniel Jacobowitz <dan@codesourcery.com>
12713
12714 * hostio.c: Correct copyright year.
12715
12716 2007-11-30 Daniel Jacobowitz <dan@codesourcery.com>
12717
12718 * Makefile.in (OBS): Add hostio.o.
12719 (hostio.o): New rule.
12720 * server.h (handle_vFile): Declare.
12721 * hostio.c: New file.
12722 * server.c (handle_v_requests): Take packet_len and new_packet_len
12723 for binary packets. Call handle_vFile.
12724 (main): Update call to handle_v_requests.
12725
12726 2007-11-05 Daniel Jacobowitz <dan@codesourcery.com>
12727
12728 * linux-low.c: Include <sched.h>.
12729
12730 2007-11-01 Daniel Jacobowitz <dan@codesourcery.com>
12731
12732 * linux-low.c (linux_tracefork_grandchild): New.
12733 (linux_tracefork_child): Use clone.
12734 (linux_test_for_tracefork): Use clone; allocate and free a stack.
12735
12736 2007-10-31 Joel Brobecker <brobecker@adacore.com>
12737
12738 * Makefile.in: Use $(SHELL) instead of "sh" to call regdat.sh.
12739
12740 2007-10-24 Daniel Jacobowitz <dan@codesourcery.com>
12741
12742 * linux-low.c (handle_extended_wait): Handle unexpected signals.
12743
12744 2007-10-23 Daniel Jacobowitz <dan@codesourcery.com>
12745
12746 * inferiors.c (change_inferior_id): Delete.
12747 (add_pid_to_list, pull_pid_from_list): New.
12748 * linux-low.c (PTRACE_SETOPTIONS, PTRACE_GETEVENTMSG)
12749 (PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK, PTRACE_O_TRACEVFORK)
12750 (PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC, PTRACE_O_TRACEVFORKDONE)
12751 (PTRACE_O_TRACEEXIT, PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK)
12752 (PTRACE_EVENT_CLONE, PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE)
12753 (PTRACE_EVENT_EXIT, __WALL): Provide default definitions.
12754 (stopped_pids, thread_db_active, must_set_ptrace_flags): New variables.
12755 (using_threads): Always set to 1.
12756 (handle_extended_wait): New.
12757 (add_process): Do not set TID.
12758 (linux_create_inferior): Set must_set_ptrace_flags.
12759 (linux_attach_lwp): Remove TID argument. Do not check using_threads.
12760 Use PTRACE_SETOPTIONS. Call new_thread_notify. Update all callers.
12761 (linux_thread_alive): Rename TID argument to LWPID.
12762 (linux_wait_for_process): Handle unknown processes. Do not use TID.
12763 (linux_wait_for_event): Do not use TID or check using_threads. Update
12764 call to dead_thread_notify. Call handle_extended_wait.
12765 (linux_create_inferior): Use PTRACE_SETOPTIONS.
12766 (send_sigstop): Delete sigstop_sent.
12767 (wait_for_sigstop): Avoid TID.
12768 (linux_supports_tracefork_flag, linux_tracefork_child, my_waitpid)
12769 (linux_test_for_tracefork): New.
12770 (linux_lookup_signals): Use thread_db_active and
12771 linux_supports_tracefork_flag.
12772 (initialize_low): Use thread_db_active and linux_test_for_tracefork.
12773 * linux-low.h (get_process_thread): Avoid TID.
12774 (struct process_ifo): Move thread_known and tid to the end. Remove
12775 sigstop_sent.
12776 (linux_attach_lwp, thread_db_init): Update prototypes.
12777 * server.h (change_inferior_id): Delete prototype.
12778 (add_pid_to_list, pull_pid_from_list): New prototypes.
12779 * thread-db.c (thread_db_use_events): New.
12780 (find_first_thread): Rename to...
12781 (find_one_thread): ...this. Update callers and messages. Do not
12782 call fatal. Check thread_db_use_events. Do not call
12783 change_inferior_id or new_thread_notify.
12784 (maybe_attach_thread): Update. Do not call new_thread_notify.
12785 (thread_db_init): Set thread_db_use_events. Check use_events.
12786 * utils.c (fatal, warning): Correct message prefix.
12787
12788 2007-10-15 Daniel Jacobowitz <dan@codesourcery.com>
12789
12790 * Makefile.in (clean): Remove new files.
12791 (powerpc-32.o, powerpc-32.c, powerpc-e500.o, powerpc-e500.c)
12792 (powerpc-64.o, powerpc-64.c): New rules.
12793 * configure.srv: Use alternate register sets for powerpc64-*-linux*
12794 with AltiVec, powerpc-*-linux* with AltiVec, and powerpc-*-linux*
12795 with SPE.
12796 * linux-ppc-low.c (ppc_regmap): Do not fetch the FP registers for
12797 SPE targets.
12798 (ppc_cannot_store_register): Do not check for FPSCR for SPE targets.
12799 (PTRACE_GETVRREGS, PTRACE_SETVRREGS, SIZEOF_VRREGS, ppc_fill_vrregset)
12800 (ppc_store_vrregset, PTRACE_GETEVRREGS, PTRACE_SETEVRREGS)
12801 (struct gdb_evrregset_t, ppc_fill_evrregset, ppc_store_evrregset): New.
12802 (target_regsets): Add AltiVec and SPE register sets.
12803 * configure.ac: Check for AltiVec and SPE.
12804 * linux-ppc64-low.c (PTRACE_GETVRREGS, PTRACE_SETVRREGS, SIZEOF_VRREGS)
12805 (ppc_fill_vrregset, ppc_store_vrregset): New.
12806 (target_regsets): Add AltiVec register set.
12807 * configure: Regenerated.
12808
12809 2007-09-19 Daniel Jacobowitz <dan@codesourcery.com>
12810
12811 * linux-low.c (O_LARGEFILE): Define.
12812 (linux_read_memory): Use /proc/PID/mem.
12813 * configure.ac: Use AC_GNU_SOURCE. Check for pread64.
12814 * configure, config.in: Regenerated.
12815
12816 2007-09-04 Daniel Jacobowitz <dan@codesourcery.com>
12817
12818 * linux-low.c (linux_wait_for_event): Do not pass signals while
12819 single-stepping.
12820
12821 2007-09-03 Pedro Alves <pedro_alves@portugalmail.pt>
12822
12823 * win32-low.c (create_process): New.
12824 (win32_create_inferior): Use create_process instead of
12825 CreateProcess. If create_process failed retry appending an ".exe"
12826 suffix. Store the GetLastError result immediatelly after
12827 create_process calls and use it on the call to error.
12828
12829 2007-09-03 Pedro Alves <pedro_alves@portugalmail.pt>
12830
12831 * win32-low.c (handle_load_dll): Don't use toolhelp when waiting.
12832
12833 2007-08-23 Joel Brobecker <brobecker@adacore.com>
12834
12835 * configure.ac: Switch license to GPLv3.
12836
12837 2007-08-01 Michael Snyder <msnyder@access-company.com>
12838
12839 * remote-utils.c (putpkt_binary): Memory leak, free buf2.
12840
12841 2007-07-31 Pedro Alves <pedro_alves@portugalmail.pt>
12842
12843 * win32-low.c (winapi_CloseToolhelp32Snapshot) [_WIN32_WCE]: New
12844 typedef.
12845 (win32_CloseToolhelp32Snapshot) [_WIN32_WCE]: New global var.
12846 (load_toolhelp) [_WIN32_WCE]: Load TOOLHELP.DLL. Get
12847 CloseToolhelp32Snapshot.
12848 (toolhelp_get_dll_name) [_WIN32_WCE]: Close the snapshot with
12849 CloseToolhelp32Snapshot.
12850
12851 2007-07-27 Michael Snyder <michael.snyder@access-company.com>
12852
12853 * server.c (main): Check for inferior exit before main loop.
12854
12855 2007-07-18 Pedro Alves <pedro_alves@portugalmail.pt>
12856
12857 * remote-utils.c (remote_open): Set SO_KEEPALIVE on remote_desc
12858 instead of on tmp_desc.
12859
12860 2007-07-17 Pedro Alves <pedro_alves@portugalmail.pt>
12861 Daniel Jacobowitz <dan@codesourcery.com>
12862
12863 * inferiors.c (all_dlls, dlls_changed, get_dll): New.
12864 (add_thread): Minor cleanups.
12865 (clear_inferiors): Move lower in the file. Clear the DLL
12866 list.
12867 (free_one_dll, match_dll, loaded_dll, unloaded_dll, clear_list): New.
12868 * remote-utils.c (prepare_resume_reply): Check dlls_changed.
12869 (xml_escape_text): New.
12870 * server.c (handle_query): Handle qXfer:libraries:read. Report it
12871 for qSupported.
12872 (handle_v_cont): Report errors.
12873 (gdbserver_version): Update.
12874 (main): Correct size of own_buf. Do not report initial DLL events.
12875 * server.h (struct dll_info, all_dlls, dlls_changed, loaded_dll)
12876 (unloaded_dll, xml_escape_text): New.
12877 * win32-low.c (enum target_waitkind): Update comments.
12878 (win32_add_one_solib, get_image_name, winapi_EnumProcessModules)
12879 (winapi_GetModuleInformation, winapi_GetModuleFileNameExA)
12880 (win32_EnumProcessModules, win32_GetModuleInformation)
12881 (win32_GetModuleFileNameExA, load_psapi, psapi_get_dll_name)
12882 (winapi_CreateToolhelp32Snapshot, winapi_Module32First)
12883 (winapi_Module32Next, win32_CreateToolhelp32Snapshot)
12884 (win32_Module32First, win32_Module32Next, load_toolhelp)
12885 (toolhelp_get_dll_name, handle_load_dll, handle_unload_dll): New.
12886 (get_child_debug_event): Handle DLL events.
12887 (win32_wait): Likewise.
12888
12889 2007-07-12 Daniel Jacobowitz <dan@codesourcery.com>
12890
12891 * configure.srv: Set srv_linux_regsets for sh*-*-linux*.
12892 * linux-sh-low.c (sh_fill_gregset, target_regsets): New.
12893
12894 2007-07-08 Pedro Alves <pedro_alves@portugalmail.pt>
12895
12896 * win32-low.c (handle_output_debug_string): Ignore event if not
12897 waiting.
12898
12899 2007-07-08 Pedro Alves <pedro_alves@portugalmail.pt>
12900
12901 * win32-arm-low.c (arm_wince_breakpoint): Fix typo.
12902
12903 2007-07-03 Daniel Jacobowitz <dan@codesourcery.com>
12904
12905 * remote-utils.c (look_up_one_symbol): Handle 'm' packets.
12906
12907 2007-07-02 Daniel Jacobowitz <dan@codesourcery.com>
12908
12909 * inferiors.c (change_inferior_id): Add comment.
12910 * linux-low.c (check_removed_breakpoint): Add an early
12911 prototype. Improve debug output.
12912 (linux_attach): Doc update.
12913 (linux_detach_one_process, linux_detach): Clean up before releasing
12914 each process.
12915 (send_sigstop, wait_for_sigstop): Improve comments and debug output.
12916 * linux-low.h (struct process_info): Doc improvement.
12917 * mem-break.c (delete_all_breakpoints): New.
12918 * mem-break.h (delete_all_breakpoints): New prototype.
12919 * thread-db.c (find_first_thread): New.
12920 (thread_db_create_event): Call it instead of
12921 thread_db_find_new_threads. Clean up unused variables.
12922 (maybe_attach_thread): Remove first thread handling.
12923 (thread_db_find_new_threads): Use find_first_thread.
12924 (thread_db_get_tls_address): Likewise.
12925
12926 2007-06-27 Daniel Jacobowitz <dan@codesourcery.com>
12927
12928 * thread-db.c (thread_db_find_new_threads): Add prototype.
12929 (thread_db_create_event): Check for the main thread before adding
12930 a new thread.
12931 (maybe_attach_thread): Only enable event reporting if TID == 0.
12932 (thread_db_get_tls_address): Check for new threads.
12933
12934 2007-06-20 Daniel Jacobowitz <dan@codesourcery.com>
12935
12936 * linux-low.c (linux_create_inferior): Try execv before execvp.
12937 * spu-low.c (spu_create_inferior): Likewise.
12938
12939 2007-06-13 Mike Frysinger <vapier@gentoo.org>
12940
12941 * linux-low.c (linux_create_inferior): Change execv to execvp.
12942 * spu-low.c (spu_create_inferior): Likewies.
12943
12944 2007-06-13 Daniel Jacobowitz <dan@codesourcery.com>
12945
12946 * Makefile.in (clean): Clean new files instead of deleted ones.
12947 (reg-mips.o, reg-mips.c, reg-mips64.o, reg-mips64.c): Delete.
12948 (mips-linux.o, mips-linux.c, mips64-linux.o, mips64-linux.c): New
12949 rules.
12950 * configure.srv: Specify XML files and new regformats for MIPS and
12951 MIPS64 GNU/Linux.
12952 * linux-mips-low.c (mips_num_regs): Set to only used registers.
12953 (mips_regmap): Do not fetch $0. Remove unused registers. Add
12954 an entry for the restart register.
12955 (mips_cannot_fetch_register, mips_cannot_store_register)
12956 (mips_reinsert_addr, mips_fill_fpregset, mips_store_fpregset): Update
12957 register names to match the XML descriptions.
12958 (mips_fill_gregset, mips_store_gregset): Likewise. Handle the
12959 restart register instead of $0.
12960
12961 2007-06-12 Ulrich Weigand <uweigand@de.ibm.com>
12962 Markus Deuling <deuling@de.ibm.com>
12963
12964 * remote-utils.c (decode_xfer_write): New function.
12965 * server.h (decode_xfer_write): Add prototype.
12966 * server.c (handle_query): Add PACKET_LEN argument. Support
12967 qXfer:spu:read and qXfer:spu:write packets.
12968 (main): Pass packet_len to handle_query.
12969 * spu-low.c (spu_target_ops): Add spu_proc_xfer_spu.
12970 * target.h (target_ops): Add qxfer_spu.
12971
12972 2007-06-12 Ulrich Weigand <uweigand@de.ibm.com>
12973
12974 * spu-low.c (spu_proc_xfer_spu): Do not return failure when
12975 accessing non-seekable spufs files.
12976
12977 2007-05-16 Markus Deuling <deuling@de.ibm.com>
12978
12979 * server.c (handle_query): Add reply for qC packet.
12980
12981 2007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
12982 Leo Zayas <lerele@champenstudios@com>
12983
12984 * server.h (check_remote_input_interrupt_request): New function.
12985 * remote_utils.c (INVALID_DESCRIPTOR): New define.
12986 (remote_desc): Initialize with INVALID_DESCRIPTOR.
12987 (input_interrupt): Expose on USE_WIN32API too. Fix whitespace.
12988 (check_remote_input_interrupt_request): New function.
12989 * server.h (check_remote_input_interrupt_request): Declare.
12990 * win32-low.c (winapi_DebugBreakProcess,
12991 winapi_GenerateConsoleCtrlEvent): New typedefs.
12992 (get_child_debug_event): Lower Win32 debug event polling from 1 sec
12993 to 250 ms.
12994 (win32_wait): Check for remote interrupt request
12995 with check_remote_input_interrupt_request.
12996 (win32_request_interrupt): New function.
12997 (win32_target_op): Set request_interrupt to win32_request_interrupt.
12998
12999 2007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
13000
13001 * win32-low.c (debug_registers_changed,
13002 debug_registers_used, CONTEXT_EXTENDED_REGISTERS,
13003 CONTEXT_FLOATING_POINT, CONTEXT_DEBUG_REGISTERS,
13004 CONTEXT_DEBUGGER, CONTEXT_DEBUGGER_DR): Delete.
13005 (thread_rec): Get context using the low target.
13006 (child_add_thread): Call thread_added on the low target,
13007 which does the same thing.
13008 (regptr): Delete.
13009 (do_initial_child_stuff): Remove debug registers references.
13010 Set context using the low target. Resume threads after
13011 setting the contexts.
13012 (child_continue): Remove dead variable. Remove debug
13013 registers references.
13014 (child_fetch_inferior_registers): Go through the low target.
13015 (do_child_store_inferior_registers): Remove.
13016 (child_store_inferior_registers): Go through the low target.
13017 (win32_resume): Remove debug registers references.
13018 Set context using the low target.
13019 (handle_exception): Change return type to void. Don't record
13020 context here. Set status to TARGET_WAITKIND_SPURIOUS on a
13021 first chance exception.
13022 (get_child_debug_event): Change return type to void. Remove
13023 goto loop. Always return after waiting for debug event.
13024 (win32_wait): Convert to switch statement. Handle spurious
13025 events.
13026
13027 * win32-i386-low.c (debug_registers_changed,
13028 debug_registers_used): New.
13029 (initial_stuff): Rename to ...
13030 (i386_initial_stuff): ... this. Clear debug registers
13031 state variables.
13032 (store_debug_registers): Delete.
13033 (i386_get_thread_context): New.
13034 (load_debug_registers): Delete.
13035 (i386_set_thread_context): New.
13036 (i386_thread_added): New.
13037 (single_step): Rename to ...
13038 (i386_single_step): ... this.
13039 (do_fetch_inferior_registers): Rename to ...
13040 (i386_fetch_inferior_register): ... this.
13041 (i386_store_inferior_register): New.
13042 (the_low_target): Adapt to new interface.
13043
13044 * win32-arm-low.c (CONTEXT_FLOATING_POINT): Define.
13045 (arm_get_thread_context): New.
13046 (arm_set_thread_context): New.
13047 (regptr): New.
13048 (do_fetch_inferior_registers): Rename to ...
13049 (arm_fetch_inferior_register): ... this.
13050 (arm_store_inferior_register): New.
13051 (arm_wince_breakpoint): Reimplement as unsigned long.
13052 (arm_wince_breakpoint_len): Define.
13053 (the_low_target): Adapt to new interface.
13054
13055 * win32-low.h (target_ops): Remove regmap, store_debug_registers and
13056 load_debug_registers. Add get_thread_context, set_thread_context,
13057 thread_added and store_inferior_register. Rename
13058 fetch_inferior_registers to fetch_inferior_register.
13059 (regptr): Remove declaration.
13060
13061 2007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
13062
13063 * linux-low.c (linux_detach): Change return type to int. Return 0.
13064 * spu-low.c (spu_detach): Likewise.
13065
13066 2007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
13067
13068 * target.h (target_ops): Change return type of detach to int.
13069 Add join.
13070 (join_inferior): New.
13071 * server.c (main): Don't skip detach support on mingw32.
13072 If the inferior doesn't support detaching return error.
13073 Call join_inferior instead of using waitpid.
13074 * linux-low.c (linux_join): New.
13075 (linux_target_op): Add linux_join.
13076 * spu-low.c (spu_join): New.
13077 (spu_target_ops): Add spu_join.
13078 * win32-low.c (win32_detach): Adapt to new interface.
13079 Reopen current_process_handle before detaching. Issue a child
13080 resume before detaching.
13081 (win32_join): New.
13082 (win32_target_op): Add win32_join.
13083
13084 2007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
13085
13086 * win32-low.c (win32-attach): Fix return value.
13087 * target.h (target_ops): Describe ATTACH return values.
13088
13089 2007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
13090
13091 * win32-low.c (GETPROCADDRESS): Define.
13092 (winapi_DebugActiveProcessStop): Add WINAPI. typedef as pointer.
13093 (winapi_DebugSetProcessKillOnExit): Likewise.
13094 (win32_create_inferior): Force usage of ansi CreateProcessA.
13095 (win32_attach): Use GETPROCADDRESS.
13096 (win32_detach): Likewise.
13097
13098 2007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
13099
13100 * win32-low.c (win32_wait): Don't use WSTOPSIG.
13101
13102 2007-03-30 Pedro Alves <pedro_alves@portugalmail.pt>
13103
13104 * win32-low.c: Commit leftover changes from 2007-03-29.
13105
13106 2007-03-30 Daniel Jacobowitz <dan@codesourcery.com>
13107
13108 * i387-fp.c (struct i387_fsave, struct i387_fxsave): Make 16-bit
13109 fields short instead of int. Add explicit padding.
13110 (i387_cache_to_fsave): Remove unnecessary casts.
13111 (i387_fsave_to_cache): Doc fix.
13112 (i387_cache_to_fxsave): Remove unnecessary casts and masking.
13113
13114 2007-03-30 Daniel Jacobowitz <dan@codesourcery.com>
13115
13116 * i387-fp.c (i387_cache_to_fxsave): Reinitialize val2 before use.
13117 (i387_fxsave_to_cache): Check fp->ftag while building ftag value.
13118
13119 2007-03-29 Pedro Alves <pedro_alves@portugalmail.pt>
13120
13121 * configure.srv (arm*-*-mingw32ce*): Move near the other
13122 arm targets.
13123
13124 2007-03-29 Pedro Alves <pedro_alves@portugalmail.pt>
13125
13126 * configure.ac: Add errno checking.
13127 (AC_CHECK_HEADERS): Add errno.h, fcntl.h, signal.h,
13128 sys/file.h and malloc.h.
13129 (AC_CHECK_DECLS): Add perror.
13130 (srv_mingwce): Handle.
13131 * configure.srv (i[34567]86-*-cygwin*): Add
13132 win32-i386-low.o to srv_tgtobj.
13133 (i[34567]86-*-mingw*): Likewise.
13134 (arm*-*-mingw32ce*): Add case.
13135 * gdbreplay.c [HAVE_SYS_FILE_H, HAVE_SIGNAL_H,
13136 HAVE_FCNTL_H, HAVE_ERRNO_H, HAVE_MALLOC_H]: Check.
13137 [__MINGW32CE__] (strerror): New function.
13138 [__MINGW32CE__] (errno): Define to GetLastError.
13139 [__MINGW32CE__] (COUNTOF): New macro.
13140 (remote_open): Remove extra close call.
13141 * mem-break.c (delete_breakpoint_at): New function.
13142 * mem-break.h (delete_breakpoint_at): Declare.
13143 * remote-utils.c [HAVE_SYS_FILE_H, HAVE_SIGNAL_H,
13144 HAVE_FCNTL_H, HAVE_UNISTD_H, HAVE_ERRNO_H]: Check.
13145 [USE_WIN32API] (read, write): Add char* casts.
13146 * server.c [HAVE_UNISTD_H, HAVE_SIGNAL_H]: Check.
13147 * server.h: Include wincecompat.h on Windows CE.
13148 [HAVE_ERRNO_H]: Check.
13149 (perror): Declare if not declared.
13150 * utils.c: Add stdlib.h, errno.h and malloc.h includes.
13151 (perror_with_name): Remove errno declaration.
13152 * wincecompat.h: New.
13153 * wincecompat.c: New.
13154 * win32-low.h: New.
13155 * win32-arm-low.c: New.
13156 * win32-i386-low.c: New.
13157 (win32-low.c): Include mem-break.h and win32-low.h, and winnt.h.
13158 (OUTMSG2): Make it safe.
13159 (_T): New macro.
13160 (COUNTOF): New macro.
13161 (NUM_REGS): Get it from the low target.
13162 (CONTEXT_EXTENDED_REGISTERS, CONTEXT_FLOATING_POINT,
13163 CONTEXT_DEBUG_REGISTERS): Add fallbacks to 0.
13164 (thread_rec): Let low target handle debug registers.
13165 (child_add_thread): Likewise.
13166 (child_init_thread_list): Likewise.
13167 (continue_one_thread): Likewise.
13168 (regptr): New.
13169 (do_child_fetch_inferior_registers): Move to ...
13170 * win32-i386-low.c: ... here, and rename to ...
13171 (do_fetch_inferior_registers): ... this.
13172 * win32-low.c (child_fetch_inferior_registers):
13173 Go through the low target.
13174 (do_child_store_inferior_registers): Use regptr.
13175 (strwinerror): New function.
13176 (win32_create_inferior): Handle Windows CE.
13177 Use strwinerror instead of strerror on Windows error
13178 codes. Add program to the error output.
13179 Don't close the main thread handle on Windows CE.
13180 (win32_attach): Use coredll.dll on Windows CE.
13181 (win32_kill): Close current process and current
13182 thread handles.
13183 (win32_detach): Use coredll.dll on Windows CE.
13184 (win32_resume): Let low target handle debug registers, and
13185 step request.
13186 (handle_exception): Add/Remove initial breakpoint. Avoid
13187 non-existant WSTOPSIG on Windows CE.
13188 (win32_read_inferior_memory): Cast to remove warning.
13189 (win32_arch_string): Go through the low target.
13190 (initialize_low): Call set_breakpoint_data with the low
13191 target's breakpoint.
13192 * win32-low.c (dr, FLAG_TRACE_BIT, FCS_REGNUM,
13193 FOP_REGNUM, mappings): Move to ...
13194 * win32-i386-low.c: ... here.
13195 * win32-low.c (win32_thread_info): Move to ...
13196 * win32-low.h: ... here.
13197 * Makefile.in (SFILES): Add win32-low.c, win32-i386-low.c,
13198 win32-arm-low.c and wincecompat.c.
13199 (all:): Add $EXEEXT.
13200 (install-only:): Likewise.
13201 (gdbserver:): Likewise.
13202 (gdbreplay:): Likewise.
13203 * config.in: Regenerate.
13204 * configure: Regenerate.
13205
13206 2007-03-28 Pedro Alves <pedro_alves@portugalmail.pt>
13207
13208 * win32-low.c: Rename typedef thread_info to
13209 win32_thread_info throughout.
13210
13211 2007-03-28 Pedro Alves <pedro_alves@portugalmail.pt>
13212
13213 * win32-i386-low.c: Rename to ...
13214 * win32-low.c: ... this.
13215 * configure.srv: Replace win32-i386-low.o with win32-low.o.
13216 * Makefile.in: Likewise.
13217
13218 2007-03-27 Pedro Alves <pedro_alves@portugalmail.pt>
13219
13220 * remote-utils.c (monitor_output): Constify msg parameter.
13221 * server.h (monitor_output): Likewise.
13222 * win32-i386-low.c (handle_output_debug_string): New.
13223 (win32_kill): Handle OUTPUT_DEBUG_STRING_EVENT events using
13224 handle_output_debug_string.
13225 (get_child_debug_event): Likewise.
13226
13227 2007-03-27 Mat Hostetter <mat@lcs.mit.edu>
13228
13229 * server.c (main): Correct strtoul check.
13230
13231 2007-03-27 Jon Ringle <jon@ringle.org>
13232
13233 * linux-low.c: Check __ARCH_HAS_MMU__ also.
13234
13235 2007-03-27 Brooks Moses <brooks.moses@codesourcery.com>
13236
13237 * Makefile.in: Add dummy "pdf" and "install-pdf" targets.
13238
13239 2007-02-27 Daniel Jacobowitz <dan@codesourcery.com>
13240
13241 * terminal.h: Check HAVE_SGTTY_H.
13242
13243 2007-02-27 Mat Hostetter <mat@lcs.mit.edu>
13244
13245 * remote-utils.c (remote_open): Print out the assigned port number.
13246
13247 2007-02-26 Daniel Jacobowitz <dan@codesourcery.com>
13248
13249 * remote-utils.c (monitor_output): New function.
13250 * server.c (debug_threads): Define here.
13251 (monitor_show_help): New function.
13252 (handle_query): Handle qRcmd.
13253 (main): Do not handle 'd' packet.
13254 * server.h (debug_threads, remote_debug, monitor_output): Declare.
13255 * linux-low.c, spu-low.c, win32-i386-low.c: Remove definitions
13256 of debug_threads.
13257
13258 2007-02-25 Pedro Alves <pedro_alves@portugalmail.pt>
13259
13260 * Makefile.in (EXEEXT): New.
13261 (clean): Use $(EXEEXT).
13262
13263 2007-02-25 Pedro Alves <pedro_alves@portugalmail.pt>
13264
13265 * target.h (target_ops): Rename send_signal to request_interrupt,
13266 and remove enum target_signal parameter.
13267 * linux-low.c (linux_request_interrupt): Rename from
13268 linux_send_signal, and always send SIGINT.
13269 * spu-low.c (spu_request_interrupt): Rename from spu_send_signal,
13270 and always send SIGINT.
13271 * remote-utils.c (putpkt_binary): Call request_interrupt, instead
13272 of send_signal.
13273 (input_interrupt): Likewise.
13274
13275 2007-02-25 Pedro Alves <pedro_alves@portugalmail.pt>
13276
13277 * server.c (get_features_xml): Check if target implemented
13278 arch_string.
13279 * win32-i386-low.c (win32_arch_string): New.
13280 (win32_target_ops): Add win32_arch_string as arch_string member.
13281
13282 2007-02-22 Markus Deuling <deuling@de.ibm.com>
13283
13284 * spu-low.c (spu_arch_string): New.
13285 (spu_target_ops): Add spu_arch_string.
13286
13287 2007-02-16 Daniel Jacobowitz <dan@codesourcery.com>
13288
13289 * remote-utils.c: Remove HAVE_TERMINAL_H check.
13290 * configure.ac: Do not check for terminal.h.
13291 * configure, config.in: Regenerated.
13292
13293 2007-02-08 Daniel Jacobowitz <dan@codesourcery.com>
13294
13295 * Makefile.in (OBS): Add $(XML_BUILTIN).
13296 (XML_DIR, XML_TARGET, XML_FILES, XML_BUILTIN): New.
13297 (clean): Update.
13298 (target.xml, xml-builtin.c, stamp-xml, arm-with-iwmmxt.o)
13299 (arm-with-iwmmxt.c): New.
13300 * config.in, configure: Regenerate.
13301 * configure.ac: Check for iWMMXt. Handle srv_xmltarget,
13302 srv_xmlbuiltin, and srv_xmlfiles. Define USE_XML.
13303 * configure.srv: Mention srv_xmltarget and srv_xmlfiles.
13304 (arm*-*-linux*): Add iWMMXt and regset support.
13305 * linux-arm-low.c (PTRACE_GETWMMXREGS, PTRACE_SETWMMXREGS): Define.
13306 (arm_fill_gregset, arm_store_gregset, arm_fill_wmmxregset)
13307 (arm_store_wmmxregset, target_regsets): New.
13308 * server.c (get_features_xml): Take annex argument. Check builtin
13309 XML documents.
13310 (handle_query): Handle multiple annexes.
13311
13312 2007-01-29 Daniel Jacobowitz <dan@codesourcery.com>
13313
13314 * remote-utils.c [USE_WIN32API] (read, write): Define.
13315 (putpkt_binary, input_interrupt, readchar, getpkt): Use read and
13316 write.
13317
13318 2007-01-09 Daniel Jacobowitz <dan@codesourcery.com>
13319
13320 * linux-i386-low.c (the_low_target): Set arch_string.
13321 * linux-x86-64-low.c (the_low_target): Likewise.
13322 * linux-low.c (linux_arch_string): New.
13323 (linux_target_ops): Add it.
13324 * linux-low.h (struct linux_target_ops): Add arch_string.
13325 * server.c (write_qxfer_response): Use const void * for DATA.
13326 (get_features_xml): New.
13327 (handle_query): Handle qXfer:features:read. Report it for qSupported.
13328 * target.h (struct target_ops): Add arch_string method.
13329
13330 2007-01-03 Denis Pilat <denis.pilat@st.com>
13331 Daniel Jacobowitz <dan@codesourcery.com>
13332
13333 * linux-low.c (linux_kill): Handle being called with no threads.
13334 * win32-i386-low.c (win32_kill): Likewise.
13335 (get_child_debug_event): Clear current_process_handle.
13336
13337 2006-12-30 Denis PILAT <denis.pilat@st.com>
13338 Daniel Jacobowitz <dan@codesourcery.com>
13339
13340 * remote-utils.c (remote_open): Check the type of specified
13341 serial port devices before opening them.
13342 * server.c (main): Kill the inferior if an error occurs during
13343 the first remote_open.
13344
13345 2006-12-05 Markus Deuling <deuling@de.ibm.com>
13346
13347 * README: Update supported targets.
13348
13349 2006-11-28 Daniel Jacobowitz <dan@codesourcery.com>
13350
13351 * Makefile.in (clean): Remove reg-mips64.c.
13352 (reg-mips64.c, reg-mips64.o): New rules.
13353 * configure.srv: Handle mips64. Include regset support for mips.
13354 * linux-mips-low.c (union mips_register): New.
13355 (mips_get_pc, mips_set_pc, mips_reinsert_addr): Use it.
13356 (mips_breakpoint, mips_breakpoint_at): Use int.
13357 (mips_collect_register, mips_supply_register)
13358 (mips_collect_register_32bit, mips_supply_register_32bit)
13359 (mips_fill_gregset, mips_store_gregset, mips_fill_fpregset)
13360 (mips_store_fpregset, target_regsets): New.
13361 * thread-db.c (thread_db_get_tls_address): Use uintptr_t.
13362
13363 2006-11-22 Ulrich Weigand <uweigand@de.ibm.com>
13364
13365 * configure.srv: Add target "spu*-*-*".
13366 * Makefile.in (clean): Remove reg-spu.c.
13367 (reg-spu.c, reg-spu.o, spu-low.o): Add dependencies.
13368 * spu-low.c: New file.
13369
13370 2006-11-16 Daniel Jacobowitz <dan@codesourcery.com>
13371
13372 * configure.ac: Correct td_thr_tls_get_addr test.
13373 * configure: Regenerated.
13374
13375 2006-11-16 Daniel Jacobowitz <dan@codesourcery.com>
13376
13377 * linux-low.c (linux_wait_for_event): Reformat. Use the
13378 pass_signals array.
13379 * remote-utils.c (decode_address_to_semicolon): New.
13380 * server.c (pass_signals, handle_general_set): New.
13381 (handle_query): Mention QPassSignals for qSupported.
13382 (main): Call handle_general_set.
13383 * server.h (pass_signals, decode_address_to_semicolon): New.
13384
13385 2006-11-06 Daniel Jacobowitz <dan@codesourcery.com>
13386
13387 * server.c (handle_query): Correct error handling for read_auxv.
13388
13389 2005-10-19 Ulrich Weigand <uweigand@de.ibm.com>
13390
13391 * configure.srv [s390-*-linux*, s390x-*-linux*]: Set srv_linux_regsets
13392 and srv_linux_thread_db to yes.
13393 * linux-s390-low.c (s390_fill_gregset): New function.
13394 (target_regsets): Define data structure.
13395
13396 2006-10-17 Daniel Jacobowitz <dan@codesourcery.com>
13397
13398 * acinclude.m4 (SRV_CHECK_TLS_GET_ADDR): New.
13399 * configure.ac: Use it. Define HAVE_TD_THR_TLS_GET_ADDR.
13400 * config.in, configure: Regenerated.
13401 * inferiors.c (gdb_id_to_thread): New function.
13402 (gdb_id_to_thread_id): Use it.
13403 * linux-low.c (linux_target_ops): Use thread_db_get_tls_address.
13404 * linux-low.h (struct process_info): Add th member.
13405 (thread_db_get_tls_address): New prototype.
13406 * remote-utils.c (decode_address): Make non-static.
13407 * server.c (handle_query): Handle qGetTLSAddr.
13408 * server.h (gdb_id_to_thread, decode_address): New prototypes.
13409 * target.h (struct target_ops): Add get_tls_address.
13410 * thread-db.c (maybe_attach_thread): Save the thread handle.
13411 (thread_db_get_tls_address): New.
13412
13413 2006-09-28 Daniel Jacobowitz <dan@codesourcery.com>
13414
13415 * linux-low.c (PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
13416 (linux_resume_one_process): Take a siginfo_t *. Update all
13417 callers. Queue it if necessary. Use PTRACE_SETSIGINFO.
13418 (struct pending_signals): Add a siginfo_t.
13419 (linux_wait_for_process): Always set last_status.
13420 (linux_wait_for_event): Use PTRACE_GETSIGINFO.
13421 (linux_queue_one_thread): Use PTRACE_GETSIGINFO.
13422 * linux-low.h (struct process_info): Add last_status.
13423
13424 2006-09-21 Daniel Jacobowitz <dan@codesourcery.com>
13425
13426 * remote-utils.c (try_rle): New function.
13427 (putpkt_binary): Use it.
13428
13429 2006-08-19 Daniel Jacobowitz <dan@codesourcery.com>
13430
13431 * Makefile.in (clean): Clean reg-x86-64-linux.c.
13432 (reg-x86-64-linux.o, reg-x86-64-linux.c): New.
13433 * configure.srv (x86_64-*-linux*): Use reg-x86-64-linux.o.
13434 * linux-x86-64-low.c (x86_64_regmap): Include ORIG_RAX.
13435 (x86_64_fill_gregset, x86_64_store_gregset): Skip floating
13436 point registers.
13437
13438 2006-08-08 Richard Sandiford <richard@codesourcery.com>
13439
13440 * server.c (terminal_fd): New variable.
13441 (old_foreground_pgrp): Likewise.
13442 (restore_old_foreground_pgrp): New function.
13443 (start_inferior): Record the terminal file descriptor in terminal_fd
13444 and its original foreground group in old_foreground_pgrp. Register
13445 restore_old_foreground_pgrp with atexit().
13446
13447 2006-07-26 Daniel Jacobowitz <dan@codesourcery.com>
13448
13449 * server.c (handle_query): Correct qPart to qXfer.
13450
13451 2006-07-22 Daniel Jacobowitz <dan@codesourcery.com>
13452
13453 * configure.ac: Check for more headers which are missing on
13454 Windows. Automatically supply -lwsock32 and USE_WIN32API.
13455 * configure.srv: Add Cygwin and mingw32.
13456 * remote-utils.c: Don't include headers unconditionally which
13457 are missing on mingw32. Include <winsock.h> for mingw32.
13458 (remote_open): Adjust for mingw32 support. Flush
13459 standard error after writing to it.
13460 (remote_close, putpkt_binary, input_interrupt, block_async_io)
13461 (unblock_async_io, enable_async_io, disable_async_io)
13462 (readchar, getpkt): Update for Winsock support.
13463 (prepare_resume_reply): Expect a protocol signal number.
13464 * server.c: Disable <sys/wait.h> on mingw32.
13465 (start_inferior): Adjust for mingw32 support. Flush
13466 standard error after writing to it.
13467 (attach_inferior): Likewise. Use protocol signal
13468 numbers.
13469 (main): Skip 'D' packet on mingw32. Use protocol signal numbers
13470 and names.
13471 * win32-i386-low.c: New file.
13472 * Makefile.in (XM_CLIBS): Set.
13473 (gdbserver, gdbreplay): Use $(INTERNAL_CFLAGS).
13474 (win32-i386-low.o): New dependency rule.
13475 * linux-low.c (linux_wait): Use target signal numbers.
13476 * target.h (struct target_ops): Doc fix.
13477 * server.h (target_signal_to_name): New prototype.
13478 * gdbreplay.c: Don't include headers unconditionally which
13479 are missing on mingw32. Include <winsock.h> for mingw32.
13480 (remote_close, remote_open): Adjust for Winsock support.
13481 * configure, config.in: Regenerated.
13482
13483 2006-07-12 Daniel Jacobowitz <dan@codesourcery.com>
13484
13485 * server.c (decode_xfer_read, write_qxfer_response): New.
13486 (handle_query): Take a packet length argument. Handle
13487 qXfer:auxv:read instead of qPart:auxv:read. Mention it in
13488 the qSupported response.
13489 (main): Update call to handle_query.
13490
13491 2006-06-22 Daniel Jacobowitz <dan@codesourcery.com>
13492
13493 * remote-utils.c (remote_escape_output, remote_unescape_input): New.
13494 (putpkt_binary): Renamed from putpkt and adjusted for binary
13495 data.
13496 (putpkt): New wrapper for putpkt_binary.
13497 (readchar): Don't mask off the high bit.
13498 (decode_X_packet): New function.
13499 * server.c (main): Call putpkt_binary if a handler sets the packet
13500 length. Save the length of the incoming packet. Handle 'X'.
13501 * server.h (gdb_byte, remote_escape_output, decode_X_packet): New.
13502
13503 2006-06-21 Daniel Jacobowitz <dan@codesourcery.com>
13504
13505 * server.c (handle_query): Handle qSupported.
13506
13507 2006-05-30 Daniel Jacobowitz <dan@codesourcery.com>
13508
13509 * remote-utils.c (all_symbols_looked_up): New variable.
13510 (look_up_one_symbol): Check it.
13511 * server.h (look_up_one_symbol): New declaration.
13512 * thread-db.c (thread_db_init): Set all_symbols_looked_up.
13513
13514 2006-05-30 Daniel Jacobowitz <dan@codesourcery.com>
13515
13516 * Makefile.in (linux-arm-low.o): Update dependencies.
13517 * linux-arm-low.c: Include "gdb_proc_service.h".
13518 (PTRACE_GET_THREAD_AREA): Define.
13519 (ps_get_thread_area): New function.
13520
13521 2006-05-09 Nathan Sidwell <nathan@codesourcery.com>
13522
13523 * configure.srv (m68k*-*-uclinux*): New target.
13524 * linux-low.c (linux_create_inferior): Use vfork on mmuless systems.
13525 (linux_resume_one_process): Remove extraneous cast.
13526 (linux_read_offsets): New.
13527 (linux_target_op): Add linux_read_offsets on mmuless systems.
13528 * server.c (handle_query): Add qOffsets logic.
13529 * target.h (struct target_ops): Add read_offsets.
13530
13531 2006-03-15 Daniel Jacobowitz <dan@codesourcery.com>
13532
13533 * linux-mips-low.c: Include <sys/ptrace.h> and "gdb_proc_service.h".
13534 (PTRACE_GET_THREAD_AREA): Define.
13535 (ps_get_thread_area): New function.
13536 * Makefile.in (linux-i386-low.o, linux-mips-low.o)
13537 (linux-x86-64-low.o): Update.
13538
13539 2006-03-15 Daniel Jacobowitz <dan@codesourcery.com>
13540
13541 * configure.ac: Remove checks for prfpregset_t.
13542 * gdb_proc_service.h: New file.
13543 * linux-i386-low.c, linux-x86-64-low.c, thread-db.c: Use the
13544 new "gdb_proc_service.h".
13545 * proc-service.c: Likewise.
13546 (ps_pglobal_lookup, ps_pdread, ps_pdwrite): Use psaddr_t.
13547 (ps_lgetfpregs, ps_lsetfpregs): Use a void* argument.
13548 * Makefile.in (gdb_proc_service_h): Updated.
13549 * configure, config.in: Regenerated.
13550
13551 2006-03-03 Daniel Jacobowitz <dan@codesourcery.com>
13552
13553 * remote-utils.c (prepare_resume_reply): Move declaration
13554 of gdb_id_from_wait to the top of the block.
13555
13556 2006-02-15 Daniel Jacobowitz <dan@codesourcery.com>
13557
13558 * linux-low.c (regsets_store_inferior_registers): Read the regset
13559 from the target before filling it.
13560
13561 2006-02-08 Daniel Jacobowitz <dan@codesourcery.com>
13562
13563 * server.c (attach_inferior): Return SIGTRAP for a successful
13564 attach.
13565
13566 2006-02-01 Daniel Jacobowitz <dan@codesourcery.com>
13567
13568 * Makefile.in (OBS): Add version.o.
13569 (STAGESTUFF): Delete.
13570 (version.o): Add dependencies.
13571 (version.c): Replace rule.
13572 (clean): Remove version.c.
13573 * server.c (gdbserver_version): New.
13574 (gdbserver_usage): Use printf.
13575 (main): Handle --version and --help.
13576 * server.h (version, host_name): Add declarations.
13577
13578 2005-12-23 Eli Zaretskii <eliz@gnu.org>
13579
13580 * linux-arm-low.c:
13581 * linux-arm-low.c:
13582 * inferiors.c:
13583 * i387-fp.h:
13584 * i387-fp.c:
13585 * gdbreplay.c:
13586 * regcache.c:
13587 * proc-service.c:
13588 * mem-break.h:
13589 * mem-break.c:
13590 * linux-x86-64-low.c:
13591 * linux-sh-low.c:
13592 * linux-s390-low.c:
13593 * linux-ppc64-low.c:
13594 * linux-ppc-low.c:
13595 * linux-mips-low.c:
13596 * linux-m68k-low.c:
13597 * linux-m32r-low.c:
13598 * linux-low.h:
13599 * linux-low.c:
13600 * linux-ia64-low.c:
13601 * linux-i386-low.c:
13602 * linux-crisv32-low.c:
13603 * thread-db.c:
13604 * terminal.h:
13605 * target.h:
13606 * target.c:
13607 * server.h:
13608 * server.c:
13609 * remote-utils.c:
13610 * regcache.h:
13611 * utils.c:
13612 * Makefile.in:
13613 * configure.ac:
13614 * gdbserver.1: Add (C) after Copyright. Update the FSF
13615 address.
13616
13617 2005-11-13 Daniel Jacobowitz <dan@codesourcery.com>
13618
13619 * linux-arm-low.c (arm_eabi_breakpoint): New variable.
13620 (arm_breakpoint_at): Recognize both breakpoints.
13621 (the_low_target): Use the correct breakpoint instruction.
13622
13623 2005-11-02 Daniel Jacobowitz <dan@codesourcery.com>
13624
13625 * configure.srv (x86_64-*-linux*): Turn on thread_db support.
13626 * linux-x86-64-low.c (x86_64_breakpoint, x86_64_breakpoint_len)
13627 (x86_64_get_pc, x86_64_set_pc, x86_64_breakpoint_at): New.
13628 (the_low_target): Update.
13629
13630 2005-10-25 Andreas Schwab <schwab@suse.de>
13631
13632 * server.c (main): Allocate mem_buf with PBUFSIZ bytes.
13633
13634 * linux-ia64-low.c (ia64_regmap): Remove NAT registers.
13635 (ia64_num_regs): Reduce to 462.
13636
13637 2005-09-17 Daniel Jacobowitz <dan@codesourcery.com>
13638
13639 * acinclude.m4: Correct quoting.
13640 * aclocal.m4: Regenerated.
13641
13642 Suggested by SZOKOVACS Robert <szo@ies.hu>:
13643 * thread-db.c (thread_db_err_str): Handle TD_VERSION.
13644 (thread_db_init): Call thread_db_err_str.
13645 * configure.ac: Check for TD_VERSION.
13646 * config.in, configure: Regenerated.
13647
13648 2005-07-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
13649
13650 * server.h (error, fatal, warning): Add ATTR_FORMAT.
13651
13652 2005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
13653
13654 * configure.ac: Define HAVE_LINUX_REGSETS even if PTRACE_GETREGS
13655 is not available. Define HAVE_PTRACE_GETREGS if it is.
13656 * config.in, configure: Regenerated.
13657 * configure.srv: Set srv_linux_regsets for PowerPC and PowerPC64.
13658 * linux-i386-low.c, linux-m68k-low.c: Update to use
13659 HAVE_PTRACE_GETREGS.
13660 * linux-low.c (regsets_fetch_inferior_registers)
13661 (regsets_store_inferior_registers): Only return 0 if we processed
13662 GENERAL_REGS.
13663 * linux-ppc-low.c (ppc_fill_gregset, target_regsets): New.
13664 * linux-ppc64-low.c (ppc_fill_gregset, target_regsets): New.
13665
13666 2005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
13667
13668 * inferiors.c (struct thread_info): Add gdb_id.
13669 (add_thread): Add gdb_id argument.
13670 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id): New.
13671 * linux-low.c (linux_create_inferior, linux_attach_lwp): Update
13672 calls to add_thread.
13673 * remote-utils.c (prepare_resume_reply: Use thread_to_gdb_id.
13674 * server.c (handle_query): Use thread_to_gdb_id.
13675 (handle_v_cont, main): Use gdb_id_to_thread_id.
13676 * server.h (add_thread): Update prototype.
13677 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id): New
13678 prototypes.
13679
13680 2005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
13681
13682 * linux-low.c (fetch_register, usr_store_inferior_registers): Handle
13683 left-padded registers.
13684 * linux-low.h (struct linux_target_ops): Add left_pad_xfer.
13685 * linux-ppc64-low.c (the_low_target): Set left_pad_xfer.
13686
13687 2005-07-01 Steve Ellcey <sje@cup.hp.com>
13688
13689 * configure.ac (BFD_NEED_DECLARATION): Replace with AC_CHECK_DECLS.
13690 * configure: Regenerate.
13691 * config.in: Regenerate.
13692 * server.h (NEED_DECLARATION_STRERROR):
13693 Replace with !HAVE_DECL_STRERROR.
13694
13695 2005-06-16 Daniel Jacobowitz <dan@codesourcery.com>
13696
13697 * linux-low.c (linux_wait, linux_send_signal): Don't test
13698 an unsigned long variable for > 0 if it could be MAX_ULONG.
13699 * server.c (myresume): Likewise.
13700 * target.c (set_desired_inferior): Likewise.
13701
13702 2005-06-13 Mark Kettenis <kettenis@gnu.org>
13703
13704 * configure.ac: Simplify and improve check for socklen_t.
13705 * configure, config.in: Regenerate.
13706
13707 2005-06-12 Daniel Jacobowitz <dan@codesourcery.com>
13708
13709 * acconfig.h: Remove.
13710 * configure.ac: Add a test for socklen_t. Use three-argument
13711 AC_DEFINE throughout.
13712 * config.in: Regenerated using autoheader 2.59.
13713 * configure: Regenerated.
13714
13715 * gdbreplay.c (socklen_t): Provide a default.
13716 (remote_open): Use socklen_t.
13717 * remote-utils.c (socklen_t): Provide a default.
13718 (remote_open): Use socklen_t.
13719 (convert_int_to_ascii, convert_ascii_to_int, decode_M_packet): Use
13720 unsigned char.
13721
13722 * i387-fp.c (struct i387_fsave, struct i387_fxsave): Use unsigned
13723 char for buffers.
13724 * linux-low.c (linux_read_memory, linux_write_memory)
13725 (linux_read_auxv): Likewise.
13726 * mem-break.c (breakpoint_data, set_breakpoint_data, check_mem_read)
13727 (check_mem_write): Likewise.
13728 * mem-break.h (set_breakpoint_data, check_mem_read, check_mem_write):
13729 Likewise.
13730 * regcache.c (struct inferior_rgcache_data, registers_to_string)
13731 (registers_from_string, register_data): Likewise.
13732 * server.c (handle_query, main): Likewise.
13733 * server.h (convert_ascii_to_int, convert_int_to_ascii)
13734 (decode_M_packet): Likewise.
13735 * target.c (read_inferior_memory, write_inferior_memory): Likewise.
13736 * target.h (struct target_ops): Update read_memory, write_memory,
13737 and read_auxv.
13738 (read_inferior_memory, write_inferior_memory): Update.
13739 * linux-low.h (struct linux_target_ops): Change type of breakpoint
13740 to unsigned char *.
13741 * linux-arm-low.c, linux-cris-low.c, linux-crisv32-low.c,
13742 linux-i386-low.c, linux-m32r-low.c, linux-m68k-low.c,
13743 linux-mips-low.c, linux-ppc-low.c, linux-ppc64-low.c,
13744 linux-s390-low.c, linux-sh-low.c: Update for changes in
13745 read_inferior_memory and the_low_target->breakpoint.
13746
13747 2005-05-28 Daniel Jacobowitz <dan@codesourcery.com>
13748
13749 * Makefile.in (SFILES): Add linux-ppc64-low.c.
13750 (linux-ppc64-low.o, reg-ppc64.c, reg-ppc64.o): New targets.
13751 * configure.srv: Add powerpc64-*-linux*.
13752 * linux-ppc64-low.c: New file.
13753
13754 2005-05-23 Orjan Friberg <orjanf@axis.com>
13755
13756 * linux-cris-low.c: New file with support for CRIS.
13757 * linux-crisv32-low.c: Ditto for CRISv32.
13758 * Makefile.in (SFILES): Add linux-cris-low.c, linux-crisv32-low.c.
13759 (clean): Add reg-cris.c and reg-crisv32.c.
13760 Add linux-cris-low.o, linux-crisv32-low.o, reg-cris.o, reg-cris.c,
13761 reg-crisv32.o, and reg-crisv32.c to make rules.
13762 * configure.srv: Add cris-*-linux* and crisv32-*-linux* to list of
13763 recognized targets.
13764
13765 2005-05-16 Ulrich Weigand <uweigand@de.ibm.com>
13766
13767 * linux-low.c (fetch_register): Ensure buffer size is a multiple
13768 of sizeof (PTRACE_XFER_TYPE).
13769 (usr_store_inferior_registers): Likewise. Zero out excess bytes.
13770
13771 2005-05-12 Orjan Friberg <orjanf@axis.com>
13772
13773 * target.h (struct target_ops): Add insert_watchpoint,
13774 remove_watchpoint, stopped_by_watchpoint, stopped_data_address function
13775 pointers for hardware watchpoint support.
13776 * linux-low.h (struct linux_target_ops): Ditto.
13777 * linux-low.c (linux_insert_watchpoint, linux_remove_watchpoint)
13778 (linux_stopped_by_watchpoint, linux_stopped_data_address): New. Add
13779 to linux_target_ops.
13780 * remote-utils.c (prepare_resume_reply): Add watchpoint information to
13781 reply packet.
13782 * server.c (main): Recognize 'Z' and 'z' packets.
13783
13784 2005-05-10 Ulrich Weigand <uweigand@de.ibm.com>
13785
13786 * linux-s390-low.c (s390_breakpoint, s390_breakpoint_len): Define.
13787 (s390_get_pc, s390_set_pc, s390_breakpoint_at): New functions.
13788 (the_low_target): Add new members.
13789
13790 2005-05-04 Daniel Jacobowitz <dan@codesourcery.com>
13791
13792 * proc-service.c (ps_lgetregs): Search all_processes instead of
13793 all_threads.
13794
13795 2005-05-04 Daniel Jacobowitz <dan@codesourcery.com>
13796
13797 * server.c (start_inferior): Change return type to int.
13798 (attach_inferior): Change sigptr to int *.
13799 (handle_v_cont, handle_v_requests): Change signal to int *.
13800 (main): Change signal to int.
13801
13802 2005-04-15 Kei Sakamoto <sakamoto.kei@renesas.com>
13803
13804 * Makefile.in: Add linux-m32r-low.o, reg-m32r.c and reg-m32r.o.
13805 * configure.srv: Add m32r*-*-linux*.
13806 * linux-m32r-low.c: New file.
13807
13808 2005-03-04 Daniel Jacobowitz <dan@codesourcery.com>
13809
13810 * Makefile.in (stamp-h): Set CONFIG_HEADERS explicitly.
13811
13812 2005-03-03 Daniel Jacobowitz <dan@codesourcery.com>
13813
13814 * inferiors.c (change_inferior_id, add_thread, find_inferior_id):
13815 Take unsigned long arguments for PIDs.
13816 * linux-low.c (add_process, linux_attach_lwp, linux_attach)
13817 (linux_thread_alive, linux_wait_for_event, kill_lwp, send_sigstop)
13818 (wait_for_sigstop, linux_resume_one_process)
13819 (regsets_fetch_inferior_registers, linux_send_signal)
13820 (linux_read_auxv): Likewise. Update the types of variables holding
13821 PIDs. Update format string specifiers.
13822 * linux-low.h (struct process_info, linux_attach_lwp): Likewise.
13823 * remote-utils.c (prepare_resume_reply): Likewise.
13824 * server.c (cont_thread, general_thread, step_thread)
13825 (thread_from_wait, old_thread_from_wait, signal_pid): Change type to
13826 unsigned long.
13827 (handle_query): Update format specifiers.
13828 (handle_v_cont, main): Use strtoul for thread IDs.
13829 * server.h (struct inferior_list_entry): Use unsigned long for ID.
13830 (add_thread, find_inferior_id, change_inferior_id, cont_thread)
13831 (general_thread, step_thread, thread_from_wait)
13832 (old_thread_from_wait): Update.
13833 * target.h (struct thread_resume): Use unsigned long for THREAD.
13834 (struct target_ops): Use unsigned long for arguments to attach and
13835 thread_alive.
13836
13837 2005-02-24 Daniel Jacobowitz <dan@codesourcery.com>
13838
13839 * acinclude.m4: Include bfd/bfd.m4 directly.
13840 * configure.ac: Use AC_ARG_PROGRAM. Suggested by Aron Griffis
13841 <agriffis@toolchain.org>.
13842 * aclocal.m4, configure: Regenerated.
13843
13844 2005-01-07 Andrew Cagney <cagney@gnu.org>
13845
13846 * configure.ac: Rename configure.in, require autoconf 2.59.
13847 * configure: Re-generate.
13848
13849 2004-12-08 Daniel Jacobowitz <dan@debian.org>
13850
13851 * acinclude.m4 (SRV_CHECK_THREAD_DB): Add ps_get_thread_area. Reset
13852 LIBS when finished.
13853 * aclocal.m4: Regenerated.
13854 * configure: Regenerated.
13855
13856 2004-11-21 Andreas Schwab <schwab@suse.de>
13857
13858 * linux-m68k-low.c (m68k_num_gregs): Define.
13859 (m68k_fill_gregset, m68k_store_gregset, m68k_fill_fpregset)
13860 (m68k_store_fpregset, target_regsets) [HAVE_LINUX_REGSETS]: New.
13861 (m68k_breakpoint, m68k_breakpoint_len, m68k_get_pc, m68k_set_pc)
13862 (m68k_breakpoint_at): New. Add to the_low_target.
13863
13864 * configure.srv (m68*-*-linux*): Set srv_linux_regsets and
13865 srv_linux_thread_db to yes.
13866
13867 2004-10-20 Joel Brobecker <brobecker@gnat.com>
13868
13869 * linux-x86-64-low.c (ARCH_SET_GS): Add definition if missing.
13870 (ARCH_SET_FS): Likewise.
13871 (ARCH_GET_FS): Likewise.
13872 (ARCH_GET_GS): Likewise.
13873
13874 2004-10-16 Daniel Jacobowitz <dan@debian.org>
13875
13876 * linux-i386-low.c (ps_get_thread_area): New.
13877 * linux-x86-64-low.c (ps_get_thread_area): New.
13878 * linux-low.c: Include <sys/syscall.h>.
13879 (linux_kill_one_process): Don't kill the first thread here.
13880 (linux_kill): Kill the first thread here.
13881 (kill_lwp): New function.
13882 (send_sigstop, linux_send_signal): Use it.
13883 * proc-service.c: Clean up #ifdefs.
13884 (fpregset_info): Delete.
13885 (ps_lgetregs): Update and enable implementation.
13886 (ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs): Remove disabled
13887 implementations.
13888 * remote-utils.c (struct sym_cache, symbol_cache): New.
13889 (input_interrupt): Print a clearer message.
13890 (async_io_enabled): New variable.
13891 (enable_async_io, disable_async_io): Use it. Update comments.
13892 (look_up_one_symbol): Use the symbol cache.
13893 * thread-db.c (thread_db_look_up_symbols): New function.
13894 (thread_db_init): Update comments. Call thread_db_look_up_symbols.
13895
13896 2004-10-16 Daniel Jacobowitz <dan@debian.org>
13897
13898 * configure.in: Test for -rdynamic.
13899 * configure: Regenerated.
13900 * Makefile (INTERNAL_LDFLAGS): New.
13901 (gdbserver, gdbreplay): Use it.
13902
13903 2004-09-02 Andrew Cagney <cagney@gnu.org>
13904
13905 * Makefile.in (TAGS): Replace TM_FILE with DEPRECATED_TM_FILE.
13906
13907 2004-03-23 Daniel Jacobowitz <drow@mvista.com>
13908
13909 * linux-low.c (linux_wait): Clear all_processes list also.
13910
13911 2004-03-12 Daniel Jacobowitz <drow@mvista.com>
13912
13913 * linux-low.c: Include <errno.h>. Remove extern declaration of
13914 errno.
13915
13916 2004-03-12 Daniel Jacobowitz <drow@mvista.com>
13917
13918 * gdbreplay.c, server.h, utils.c: Update copyright years.
13919
13920 2004-03-04 Nathan J. Williams <nathanw@wasabisystems.com>
13921
13922 * server.c (main): Print child status or termination signal from
13923 variable 'signal', not 'sig'.
13924
13925 2004-03-04 Nathan J. Williams <nathanw@wasabisystems.com>
13926
13927 * linux-low.c (linux_read_memory): Change return type to
13928 int. Check for and return error from ptrace().
13929 * target.c (read_inferior_memory): Change return type to int. Pass
13930 back return status from the_target->read_memory().
13931 * target.h (struct target_ops): Adapt *read_memory() prototype.
13932 Update comment.
13933 (read_inferior_memory): Adapt prototype.
13934 * server.c (main): Return an error packet if
13935 read_inferior_memory() returns an error.
13936
13937 2004-03-04 Daniel Jacobowitz <drow@mvista.com>
13938
13939 * Makefile.in (distclean): Remove config.h, stamp-h, and config.log.
13940 Unify with other clean targets.
13941
13942 2004-02-29 Daniel Jacobowitz <drow@mvista.com>
13943
13944 * server.c (handle_v_cont): Call set_desired_inferior.
13945
13946 2004-02-29 Daniel Jacobowitz <drow@mvista.com>
13947
13948 * remote-utils.c (prepare_resume_reply): Always supply "thread:".
13949
13950 2004-02-29 Daniel Jacobowitz <drow@mvista.com>
13951
13952 * linux-low.c (linux_wait): Unblock async I/O.
13953 (linux_resume): Block and enable async I/O.
13954 * remote-utils.c (block_async_io, unblock_async_io): New functions.
13955 * server.h (block_async_io, unblock_async_io): Add prototypes.
13956
13957 2004-02-29 Daniel Jacobowitz <drow@mvista.com>
13958
13959 * remote-utils.c (remote_open): Print a status notice after
13960 opening a TCP port.
13961 * server.c (attach_inferior): Print a status notice after
13962 attaching.
13963
13964 2004-02-29 Daniel Jacobowitz <drow@mvista.com>
13965
13966 * linux-arm-low.c (arm_get_pc): Print out stop PC in debug mode.
13967
13968 2004-02-26 Daniel Jacobowitz <drow@mvista.com>
13969
13970 * remote-utils.c (write_enn): Use "E01" instead of "ENN" for the
13971 error packet.
13972 * server.c, target.h: Update copyright years.
13973
13974 2004-02-25 Roland McGrath <roland@redhat.com>
13975
13976 * target.h (struct target_ops): New member `read_auxv'.
13977 * server.c (handle_query): Handle qPart:auxv:read: query using that.
13978 * linux-low.c (linux_read_auxv): New function.
13979 (linux_target_ops): Initialize `read_auxv' member to that.
13980
13981 2004-02-17 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
13982
13983 Committed by Jim Blandy <jimb@redhat.com>.
13984
13985 * linux-s390-low.c (s390_num_regs): Update.
13986 (s390_regmap): Remove control registers. Use __s390x__ predefine
13987 instead of GPR_SIZE to distiguish s390 and s390x targets.
13988
13989 2004-01-31 Daniel Jacobowitz <drow@mvista.com>
13990
13991 * linux-low.c: Update copyright year.
13992 (check_removed_breakpoint): Clear pending_is_breakpoint.
13993 (linux_set_resume_request, linux_queue_one_thread)
13994 (resume_status_pending_p): New functions.
13995 (linux_continue_one_thread): Use process->resume.
13996 (linux_resume): Only resume threads if there are no pending events.
13997 * linux-low.h (struct process_info): Add resume request
13998 pointer.
13999
14000 2004-01-30 Daniel Jacobowitz <drow@mvista.com>
14001
14002 * regcache.c (new_register_cache): Clear the allocated register
14003 buffer. Suggested by Atsushi Nemoto <anemo@mba.ocn.ne.jp>.
14004
14005 2003-10-13 Daniel Jacobowitz <drow@mvista.com>
14006
14007 * linux-low.c (linux_resume): Take a struct thread_resume *
14008 argument.
14009 (linux_wait): Update call.
14010 (resume_ptr): New static variable.
14011 (linux_continue_one_thread): Renamed from
14012 linux_continue_one_process. Use resume_ptr.
14013 (linux_resume): Use linux_continue_one_thread.
14014 * server.c (handle_v_cont, handle_v_requests): New functions.
14015 (myresume): New function.
14016 (main): Handle 'v' case.
14017 * target.h (struct thread_resume): New type.
14018 (struct target_ops): Change argument of "resume" to struct
14019 thread_resume *.
14020 (myresume): Delete macro.
14021
14022 2003-08-08 H.J. Lu <hongjiu.lu@intel.com>
14023
14024 * Makefile.in (install-only): Create dest dir. Support DESTDIR.
14025 (uninstall): Support DESTDIR.
14026
14027 Mon Jul 21 20:09:34 UTC 2003 Brendan Conoboy <blc@redhat.com>
14028
14029 * configure.srv: Add xscale*linux copy of arm*linux entry.
14030
14031 2003-07-24 Daniel Jacobowitz <drow@mvista.com>
14032
14033 * linux-arm-low.c (arm_reinsert_addr): New function.
14034 (the_low_target): Add arm_reinsert_addr.
14035
14036 2003-07-08 Mark Kettenis <kettenis@gnu.org>
14037
14038 * mem-break.c: Remove whitespace at end of file.
14039
14040 2003-06-28 Daniel Jacobowitz <drow@mvista.com>
14041
14042 * configure.in: Check whether we need to prototype strerror.
14043 * server.h: Optionally prototype strerror.
14044 * gdbreplay.c (perror_with_name): Use strerror.
14045 * linux-low.c (linux_attach_lwp): Use strerror.
14046 * utils.c (perror_with_name): Use strerror.
14047 * config.in, configure: Regenerated.
14048
14049 2003-06-28 Daniel Jacobowitz <drow@mvista.com>
14050
14051 * linux-sh-low.c (sh_regmap): Fix FP register offsets, reported by
14052 SUGIOKA Toshinobu <sugioka@itonet.co.jp>.
14053
14054 2003-06-20 Daniel Jacobowitz <drow@mvista.com>
14055
14056 * Makefile.in (SFILES): Update.
14057 * low-hppabsd.c, low-lynx.c, low-nbsd.c, low-sim.c, low-sparc.c,
14058 low-sun3.c: Remove files.
14059
14060 2003-06-17 Daniel Jacobowitz <drow@mvista.com>
14061
14062 * linux-low.c: Move comment to linux_thread_alive where it belonged.
14063 (linux_detach_one_process, linux_detach): New functions.
14064 (linux_target_ops): Add linux_detach.
14065 * server.c (main): Handle 'D' packet.
14066 * target.h (struct target_ops): Add "detach" member.
14067 (detach_inferior): Define.
14068
14069 2003-06-13 Mark Kettenis <kettenis@gnu.org>
14070
14071 From Kelley Cook <kelleycook@wideopenwest.com>:
14072 * configure.srv: Accept i[34567]86 variants.
14073
14074 2003-06-05 Daniel Jacobowitz <drow@mvista.com>
14075
14076 * linux-low.c (linux_wait_for_event): Correct comment typos.
14077 (linux_resume_one_process): Call check_removed_breakpoint.
14078 (linux_send_signal): New function.
14079 (linux_target_ops): Add linux_send_signal.
14080 * remote-utils.c (putpkt, input_interrupt): Use send_signal instead
14081 of kill.
14082 * target.h (struct target_ops): Add send_signal.
14083
14084 2003-05-29 Jim Blandy <jimb@redhat.com>
14085
14086 * linux-low.c (usr_store_inferior_registers): Transfer buf in
14087 PTRACE_XFER_TYPE-sized chunks, not int-sized chunks. Otherwise,
14088 if 'int' is smaller than PTRACE_XFER_TYPE, you end up throwing
14089 away part of the register's value.
14090
14091 2003-03-26 Daniel Jacobowitz <drow@mvista.com>
14092
14093 * linux-low.c (linux_create_inferior): Use __SIGRTMIN.
14094 (linux_wait_for_event, linux_init_signals): Likewise.
14095
14096 2003-03-17 Daniel Jacobowitz <drow@mvista.com>
14097
14098 * configure.in: Check for stdlib.h.
14099 * configure: Regenerated.
14100 * config.in: Regenerated.
14101
14102 2003-01-04 Andreas Schwab <schwab@suse.de>
14103
14104 * linux-m68k-low.c (m68k_num_regs): Define to 29 instead of 31.
14105
14106 2003-01-02 Andrew Cagney <ac131313@redhat.com>
14107
14108 * Makefile.in: Remove obsolete code.
14109
14110 2002-11-20 Daniel Jacobowitz <drow@mvista.com>
14111
14112 * linux-s390-low.c (s390_regmap): Check GPR_SIZE instead of
14113 defined(PT_FPR0_HI).
14114
14115 2002-11-17 Stuart Hughes <seh@zee2.com>
14116
14117 * linux-arm-low.c (arm_num_regs): Increase.
14118 (arm_regmap): Include status register.
14119
14120 2002-11-17 Daniel Jacobowitz <drow@mvista.com>
14121
14122 * linux-low.c (register_addr): Remove incorrect -1 check.
14123
14124 2002-08-29 Daniel Jacobowitz <drow@mvista.com>
14125
14126 * linux-low.c (linux_create_inferior): Call setpgid. Return
14127 the new PID.
14128 (unstopped_p, linux_signal_pid): Remove.
14129 (linux_target_ops): Remove linux_signal_pid.
14130 * remote-utils.c (putpkt, input_interrupt): Use signal_pid
14131 global instead of target method.
14132 * target.h (struct target_ops): Remove signal_pid. Update comment
14133 for create_inferior.
14134 * server.c (signal_pid): New variable.
14135 (create_inferior): Set signal_pid. Block SIGTTOU and SIGTTIN in
14136 gdbserver. Set the child to be the foreground process group.
14137 (attach_inferior): Set signal_pid.
14138
14139 2002-08-23 Daniel Jacobowitz <drow@mvista.com>
14140
14141 * ChangeLog: New file, with entries from gdb/ChangeLog after GDB 5.2.
14142
14143 2002-08-20 Jim Blandy <jimb@redhat.com>
14144
14145 * Makefile.in (LDFLAGS): Allow the configure script to establish a
14146 default for this.
14147
14148 2002-08-01 Andrew Cagney <cagney@redhat.com>
14149
14150 * Makefile.in: Make chill references obsolete.
14151
14152 2002-07-24 Kevin Buettner <kevinb@redhat.com>
14153
14154 * configure.in (unistd.h): Add to AC_CHECK_HEADERS list.
14155 * configure: Regenerate.
14156 * config.in: Regenerate.
14157
14158 2002-07-09 David O'Brien <obrien@FreeBSD.org>
14159
14160 * gdbreplay.c (stdlib.h, unistd.h): Conditionaly include.
14161 (perror_with_name, remote_close, remote_open, expect, play): Static.
14162
14163 2002-07-04 Michal Ludvig <mludvig@suse.cz>
14164
14165 * linux-x86-64-low.c (x86_64_regmap): Make it an array of
14166 byte offsets instead of an array of indexes.
14167 (x86_64_store_gregset, x86_64_store_fpregset): Parameter made const.
14168
14169 2002-06-13 Daniel Jacobowitz <drow@mvista.com>
14170
14171 * regcache.c: Add comment.
14172
14173 2002-06-11 Daniel Jacobowitz <drow@mvista.com>
14174
14175 * thread-db.c: New file.
14176 * proc-service.c: New file.
14177 * acinclude.m4: New file.
14178 * Makefile.in: Add GDBSERVER_LIBS, gdb_proc_service_h,
14179 proc-service.o, and thread-db.o.
14180 (linux-low.o): Add USE_THREAD_DB.
14181 * acconfig.h: Add HAVE_PRGREGSET_T, HAVE_PRFPREGSET_T,
14182 HAVE_LWPID_T, HAVE_PSADDR_T, and PRFPREGSET_T_BROKEN.
14183 * aclocal.m4: Regenerated.
14184 * config.in: Regenerated.
14185 * configure: Regenerated.
14186 * configure.in: Check for proc_service.h, sys/procfs.h,
14187 thread_db.h, and linux/elf.h headrs.
14188 Check for lwpid_t, psaddr_t, prgregset_t, prfpregset_t, and
14189 PRFPREGSET_T_BROKEN. Introduce srv_thread_depfiles and USE_THREAD_DB.
14190 Check for -lthread_db and thread support.
14191 * configure.srv: Enable thread_db support for ARM, i386, MIPS,
14192 PowerPC, and SuperH.
14193 * i387-fp.c: Constify arguments.
14194 * i387-fp.h: Likewise.
14195 * inferiors.c: (struct thread_info): Renamed from
14196 `struct inferior_info'. Remove PID member. Use generic inferior
14197 list header. All uses updated.
14198 (inferiors, signal_pid): Removed.
14199 (all_threads): New variable.
14200 (get_thread): Define.
14201 (add_inferior_to_list): New function.
14202 (for_each_inferior): New function.
14203 (change_inferior_id): New function.
14204 (add_inferior): Removed.
14205 (remove_inferior): New function.
14206 (add_thread): New function.
14207 (free_one_thread): New function.
14208 (remove_thread): New function.
14209 (clear_inferiors): Use for_each_inferior and free_one_thread.
14210 (find_inferior): New function.
14211 (find_inferior_id): New function.
14212 (inferior_target_data): Update argument type.
14213 (set_inferior_target_data): Likewise.
14214 (inferior_regcache_data): Likewise.
14215 (set_inferior_regcache_data): Likewise.
14216 * linux-low.c (linux_bp_reinsert): Remove.
14217 (all_processes, stopping_threads, using_thrads)
14218 (struct pending_signals, debug_threads, pid_of): New.
14219 (inferior_pid): Replace with macro.
14220 (struct inferior_linux_data): Remove.
14221 (get_stop_pc, add_process): New functions.
14222 (linux_create_inferior): Restore SIGRTMIN+1 before calling exec.
14223 Use add_process and add_thread.
14224 (linux_attach_lwp): New function, based on old linux_attach. Use
14225 add_process and add_thread. Set stop_expected for new threads.
14226 (linux_attach): New function.
14227 (linux_kill_one_process): New function.
14228 (linux_kill): Kill all LWPs.
14229 (linux_thread_alive): Use find_inferior_id.
14230 (check_removed_breakpoints, status_pending_p): New functions.
14231 (linux_wait_for_process): Renamed from linux_wait_for_one_inferior.
14232 Update. Use WNOHANG. Wait for cloned processes also. Update process
14233 struct for the found process.
14234 (linux_wait_for_event): New function.
14235 (linux_wait): Use it. Support LWPs.
14236 (send_sigstop, wait_for_sigstop, stop_all_processes)
14237 (linux_resume_one_process, linux_continue_one_process): New functions.
14238 (linux_resume): Support LWPs.
14239 (REGISTER_RAW_SIZE): Remove.
14240 (fetch_register): Use register_size instead. Call supply_register.
14241 (usr_store_inferior_registers): Likewise. Call collect_register.
14242 Fix recursive case.
14243 (regsets_fetch_inferior_registers): Improve error message.
14244 (regsets_store_inferior_registers): Add debugging.
14245 (linux_look_up_symbols): Call thread_db_init if USE_THREAD_DB.
14246 (unstopped_p, linux_signal_pid): New functions.
14247 (linux_target_ops): Add linux_signal_pid.
14248 (linux_init_signals): New function.
14249 (initialize_low): Call it. Initialize using_threads.
14250 * regcache.c (inferior_regcache_data): Add valid
14251 flag.
14252 (get_regcache): Fetch registers lazily. Add fetch argument
14253 and update all callers.
14254 (regcache_invalidate_one, regcache_invalidate): New
14255 functions.
14256 (new_register_cache): Renamed from create_register_cache.
14257 Return the new regcache.
14258 (free_register_cache): Change argument to a void *.
14259 (registers_to_string, registers_from_string): Call get_regcache
14260 with fetch flag set.
14261 (register_data): Make static. Pass fetch flag to get_regcache.
14262 (supply_register): Call get_regcache with fetch flag clear.
14263 (collect_register): Call get_regcache with fetch flag set.
14264 (collect_register_as_string): New function.
14265 * regcache.h: Update.
14266 * remote-utils.c (putpkt): Flush after debug output and use
14267 stderr.
14268 Handle input interrupts while waiting for an ACK.
14269 (input_interrupt): Use signal_pid method.
14270 (getpkt): Flush after debug output and use stderr.
14271 (outreg): Use collect_register_as_string.
14272 (new_thread_notify, dead_thread_notify): New functions.
14273 (prepare_resume_reply): Check using_threads. Set thread_from_wait
14274 and general_thread.
14275 (look_up_one_symbol): Flush after debug output.
14276 * server.c (step_thread, server_waiting): New variables.
14277 (start_inferior): Don't use signal_pid. Update call to mywait.
14278 (attach_inferior): Update call to mywait.
14279 (handle_query): Handle qfThreadInfo and qsThreadInfo.
14280 (main): Don't fetch/store registers explicitly. Use
14281 set_desired_inferior. Support proposed ``Hs'' packet. Update
14282 calls to mywait.
14283 * server.h: Update.
14284 (struct inferior_list, struct_inferior_list_entry): New.
14285 * target.c (set_desired_inferior): New.
14286 (write_inferior_memory): Constify.
14287 (mywait): New function.
14288 * target.h: Update.
14289 (struct target_ops): New signal_pid method.
14290 (mywait): Removed macro, added prototype.
14291
14292 * linux-low.h (regset_func): Removed.
14293 (regset_fill_func, regset_store_func): New.
14294 (enum regset_type): New.
14295 (struct regset_info): Add type field. Use new operation types.
14296 (struct linux_target_ops): stop_pc renamed to get_pc.
14297 Add decr_pc_after_break and breakpoint_at.
14298 (get_process, get_thread_proess, get_process_thread)
14299 (strut process_info, all_processes, linux_attach_lwp)
14300 (thread_db_init): New.
14301
14302 * linux-arm-low.c (arm_get_pc, arm_set_pc,
14303 arm_breakpoint, arm_breakpoint_len, arm_breakpoint_at): New.
14304 (the_low_target): Add new members.
14305 * linux-i386-low.c (i386_store_gregset, i386_store_fpregset)
14306 (i386_store_fpxregset): Constify.
14307 (target_regsets): Add new kind identifier.
14308 (i386_get_pc): Renamed from i386_stop_pc. Simplify.
14309 (i386_set_pc): Add debugging.
14310 (i386_breakpoint_at): New function.
14311 (the_low_target): Add new members.
14312 * linux-mips-low.c (mips_get_pc, mips_set_pc)
14313 (mips_breakpoint, mips_breakpoint_len, mips_reinsert_addr)
14314 (mips_breakpoint_at): New.
14315 (the_low_target): Add new members.
14316 * linux-ppc-low.c (ppc_get_pc, ppc_set_pc)
14317 (ppc_breakpoint, ppc_breakpoint_len, ppc_breakpoint_at): New.
14318 (the_low_target): Add new members.
14319 * linux-sh-low.c (sh_get_pc, sh_set_pc)
14320 (sh_breakpoint, sh_breakpoint_len, sh_breakpoint_at): New.
14321 (the_low_target): Add new members.
14322 * linux-x86-64-low.c (target_regsets): Add new kind
14323 identifier.
14324
14325 2002-05-15 Daniel Jacobowitz <drow@mvista.com>
14326
14327 From Martin Pool <mbp@samba.org>:
14328 * server.c (gdbserver_usage): New function.
14329 (main): Call it.
14330
14331 2002-05-14 Daniel Jacobowitz <drow@mvista.com>
14332
14333 * mem-break.c (reinsert_breakpoint_by_bp): Correct typo
14334 stop_at -> stop_pc.
14335
14336 2002-05-04 Andrew Cagney <ac131313@redhat.com>
14337
14338 * Makefile.in: Remove obsolete code.
14339
14340 2002-04-24 Michal Ludvig <mludvig@suse.cz>
14341
14342 * linux-low.c (regsets_fetch_inferior_registers),
14343 (regsets_store_inferior_registers): Removed cast to int from
14344 ptrace() calls.
14345 * regcache.h: Added declaration of struct inferior_info.
14346
14347 2002-04-20 Daniel Jacobowitz <drow@mvista.com>
14348
14349 * inferiors.c (struct inferior_info): Add regcache_data.
14350 (add_inferior): Call create_register_cache.
14351 (clear_inferiors): Call free_register_cache.
14352 (inferior_regcache_data, set_inferior_regcache_data): New functions.
14353 * regcache.c (struct inferior_regcache_data): New.
14354 (registers): Remove.
14355 (get_regcache): New function.
14356 (create_register_cache, free_register_cache): New functions.
14357 (set_register_cache): Don't initialize the register cache here.
14358 (registers_to_string, registers_from_string, register_data): Call
14359 get_regcache.
14360 * regcache.h: Add prototypes.
14361 * server.h: Likewise.
14362
14363 2002-04-20 Daniel Jacobowitz <drow@mvista.com>
14364
14365 * mem-break.c: New file.
14366 * mem-break.h: New file.
14367 * Makefile.in: Add mem-break.o rule; update server.h
14368 dependencies.
14369 * inferiors.c (struct inferior_info): Add target_data
14370 member.
14371 (clear_inferiors): Free target_data member if set.
14372 (inferior_target_data, set_inferior_target_data): New functions.
14373 * linux-i386-low.c (i386_breakpoint, i386_breakpoint_len)
14374 (i386_stop_pc, i386_set_pc): New. Add to the_low_target.
14375 * linux-low.c (linux_bp_reinsert): New variable.
14376 (struct inferior_linux_data): New.
14377 (linux_create_inferior): Use set_inferior_target_data.
14378 (linux_attach): Likewise. Call add_inferior.
14379 (linux_wait_for_one_inferior): New function.
14380 (linux_wait): Call it.
14381 (linux_write_memory): Add const.
14382 (initialize_low): Call set_breakpoint_data.
14383 * linux-low.h (struct linux_target_ops): Add breakpoint
14384 handling members.
14385 * server.c (attach_inferior): Remove extra add_inferior
14386 call.
14387 * server.h: Include mem-break.h. Update inferior.c
14388 prototypes.
14389 * target.c (read_inferior_memory)
14390 (write_inferior_memory): New functions.
14391 * target.h (read_inferior_memory)
14392 (write_inferior_memory): Change macros to prototypes.
14393 (struct target_ops): Update comments. Add const to write_memory
14394 definition.
14395
14396 2002-04-11 Daniel Jacobowitz <drow@mvista.com>
14397
14398 * linux-low.c (usr_store_inferior_registers): Support
14399 registers which are allowed to fail to store.
14400 * linux-low.h (linux_target_ops): Likewise.
14401 * linux-ppc-low.c (ppc_regmap): Support FPSCR.
14402 (ppc_cannot_store_register): FPSCR may not be storable.
14403
14404 2002-04-09 Daniel Jacobowitz <drow@mvista.com>
14405
14406 * server.h: Include <string.h> if HAVE_STRING_H.
14407 * ChangeLog: Correct paths in last ChangeLog entry.
14408
14409 2002-04-09 Daniel Jacobowitz <drow@mvista.com>
14410
14411 * linux-low.h: Remove obsolete prototypes.
14412 (struct linux_target_ops): New.
14413 (extern the_low_target): New.
14414 * linux-low.c (num_regs, regmap): Remove declarations.
14415 (register_addr): Use the_low_target explicitly.
14416 (fetch_register): Likewise.
14417 (usr_fetch_inferior_registers): Likewise.
14418 (usr_store_inferior_registers): Likewise.
14419 * linux-arm-low.c (num_regs): Remove.
14420 (arm_num_regs): Define.
14421 (arm_regmap): Renamed from regmap, made static.
14422 (arm_cannot_fetch_register): Renamed from cannot_fetch_register,
14423 made static.
14424 (arm_cannot_store_register): Renamed from cannot_store_register,
14425 made static.
14426 (the_low_target): New.
14427 * linux-i386-low.c (num_regs): Remove.
14428 (i386_num_regs): Define.
14429 (i386_regmap): Renamed from regmap, made static.
14430 (i386_cannot_fetch_register): Renamed from cannot_fetch_register,
14431 made static.
14432 (i386_cannot_store_register): Renamed from cannot_store_register,
14433 made static.
14434 (the_low_target): New.
14435 * linux-ia64-low.c (num_regs): Remove.
14436 (ia64_num_regs): Define.
14437 (ia64_regmap): Renamed from regmap, made static.
14438 (ia64_cannot_fetch_register): Renamed from cannot_fetch_register,
14439 made static.
14440 (ia64_cannot_store_register): Renamed from cannot_store_register,
14441 made static.
14442 (the_low_target): New.
14443 * linux-m68k-low.c (num_regs): Remove.
14444 (m68k_num_regs): Define.
14445 (m68k_regmap): Renamed from regmap, made static.
14446 (m68k_cannot_fetch_register): Renamed from cannot_fetch_register,
14447 made static.
14448 (m68k_cannot_store_register): Renamed from cannot_store_register,
14449 made static.
14450 (the_low_target): New.
14451 * linux-mips-low.c (num_regs): Remove.
14452 (mips_num_regs): Define.
14453 (mips_regmap): Renamed from regmap, made static.
14454 (mips_cannot_fetch_register): Renamed from cannot_fetch_register,
14455 made static.
14456 (mips_cannot_store_register): Renamed from cannot_store_register,
14457 made static.
14458 (the_low_target): New.
14459 * linux-ppc-low.c (num_regs): Remove.
14460 (ppc_num_regs): Define.
14461 (ppc_regmap): Renamed from regmap, made static.
14462 (ppc_cannot_fetch_register): Renamed from cannot_fetch_register,
14463 made static.
14464 (ppc_cannot_store_register): Renamed from cannot_store_register,
14465 made static.
14466 (the_low_target): New.
14467 * linux-s390-low.c (num_regs): Remove.
14468 (s390_num_regs): Define.
14469 (s390_regmap): Renamed from regmap, made static.
14470 (s390_cannot_fetch_register): Renamed from cannot_fetch_register,
14471 made static.
14472 (s390_cannot_store_register): Renamed from cannot_store_register,
14473 made static.
14474 (the_low_target): New.
14475 * linux-sh-low.c (num_regs): Remove.
14476 (sh_num_regs): Define.
14477 (sh_regmap): Renamed from regmap, made static.
14478 (sh_cannot_fetch_register): Renamed from cannot_fetch_register,
14479 made static.
14480 (sh_cannot_store_register): Renamed from cannot_store_register,
14481 made static.
14482 (the_low_target): New.
14483 * linux-x86-64-low.c (x86_64_regmap): Renamed from regmap.
14484 (the_low_target): New.
14485
14486 2002-04-09 Daniel Jacobowitz <drow@mvista.com>
14487
14488 * Makefile.in: Add stamp-h target.
14489 * configure.in: Create stamp-h.
14490 * configure: Regenerated.
14491
14492 2002-04-09 Daniel Jacobowitz <drow@mvista.com>
14493
14494 * inferiors.c: New file.
14495 * target.c: New file.
14496 * target.h: New file.
14497 * Makefile.in: Add target.o and inferiors.o. Update
14498 dependencies.
14499 * linux-low.c (inferior_pid): New static variable,
14500 moved from server.c.
14501 (linux_create_inferior): Renamed from create_inferior.
14502 Call add_inferior. Return 0 on success instead of a PID.
14503 (linux_attach): Renamed from myattach.
14504 (linux_kill): Renamed from kill_inferior. Call clear_inferiors ().
14505 (linux_thread_alive): Renamed from mythread_alive.
14506 (linux_wait): Renamed from mywait. Call clear_inferiors () if the
14507 child dies.
14508 (linux_resume): Renamed from myresume. Add missing ``return 0''.
14509 (regsets_store_inferior_registers): Correct error message.
14510 Add missing ``return 0''.
14511 (linux_fetch_registers): Renamed from fetch_inferior_registers.
14512 (linux_store_registers): Renamed from store_inferior_registers.
14513 (linux_read_memory): Renamed from read_inferior_memory.
14514 (linux_write_memory): Renamed from write_inferior_memory.
14515 (linux_target_ops): New structure.
14516 (initialize_low): Call set_target_ops ().
14517 * remote-utils.c (unhexify): New function.
14518 (hexify): New function.
14519 (input_interrupt): Send signals to ``signal_pid''.
14520 * server.c (inferior_pid): Remove.
14521 (start_inferior): Update create_inferior call.
14522 (attach_inferior): Call add_inferior.
14523 (handle_query): New function.
14524 (main): Call handle_query for `q' packets.
14525 * server.h: Include "target.h". Remove obsolete prototypes.
14526 Add prototypes for "inferiors.c", "target.c", hexify, and unhexify.
14527
14528 2002-04-09 Daniel Jacobowitz <drow@mvista.com>
14529
14530 * Makefile.in: Add WARN_CFLAGS. Update configury
14531 dependencies.
14532 * configure.in: Check for <string.h>
14533 * configure: Regenerate.
14534 * config.in: Regenerate.
14535 * gdbreplay.c: Include needed system headers.
14536 (remote_open): Remove strchr prototype.
14537 * linux-low.h: Correct #ifdef to HAVE_LINUX_USRREGS.
14538 * regcache.c (supply_register): Change buf argument to const void *.
14539 (supply_register_by_name): Likewise.
14540 (collect_register): Change buf argument to void *.
14541 (collect_register_by_name): Likewise.
14542 * regcache.h: Add missing prototypes.
14543 * remote-utils.c: Include <arpa/inet.h> for inet_ntoa.
14544 * server.c (handle_query): New function.
14545 (attached): New static variable, moved out of main.
14546 (main): Quiet longjmp clobber warnings.
14547 * server.h: Add ATTR_NORETURN and ATTR_FORMAT. Update prototypes.
14548 * utils.c (error): Remove NORETURN.
14549 (fatal): Likewise.