gdbserver/Windows: Fix "no program to debug" error
[binutils-gdb.git] / gdb / gdbserver / ChangeLog
1 2018-05-10 Joel Brobecker <brobecker@adacore.com>
2
3 PR server/23158:
4 * win32-low.c (win32_create_inferior): Add call to my_wait
5 setting last_status global.
6
7 2018-05-10 Joel Brobecker <brobecker@adacore.com>
8
9 PR server/23158:
10 * win32-low.c (create_process): Only call gdb_tilde_expand if
11 inferior_cwd is not NULL.
12
13 2018-05-08 Andrew Burgess <andrew.burgess@embecosm.com>
14
15 * i387-fp.c (i387_cache_to_xsave): Only write x87 control
16 registers to the cache if their values have changed.
17 (i387_xsave_to_cache): Provide default values for x87 control
18 registers when these features are available, but disabled.
19 * regcache.c (supply_register_by_name_zeroed): New function.
20 * regcache.h (supply_register_by_name_zeroed): Declare new
21 function.
22
23 2018-05-07 Tom Tromey <tom@tromey.com>
24
25 * configure: Rebuild.
26
27 2018-05-04 Tom Tromey <tom@tromey.com>
28
29 * configure: Rebuild.
30
31 2018-05-04 Jan Kratochvil <jan.kratochvil@redhat.com>
32 Pedro Alves <palves@redhat.com>
33
34 * linux-aarch64-low.c (aarch64_stopped_data_address):
35 Likewise.
36
37 2018-04-27 Tom Tromey <tom@tromey.com>
38
39 * configure: Rebuild.
40
41 2018-04-23 Tom Tromey <tom@tromey.com>
42
43 * configure: Rebuild.
44
45 2018-04-19 Simon Marchi <simon.marchi@ericsson.com>
46
47 * Makefile.in (depcomp): Add "..".
48 (all_deps_files): New and use it.
49
50 2018-04-18 Alan Hayward <alan.hayward@arm.com>
51
52 * configure.srv (aarch64*-*-linux*): Don't include xml.
53 (i[34567]86-*-cygwin*): Likewise.
54 (i[34567]86-*-linux*): Likewise.
55 (i[34567]86-*-lynxos*): Likewise.
56 (i[34567]86-*-mingw32ce*): Likewise.
57 (i[34567]86-*-mingw*): Likewise.
58 (i[34567]86-*-nto*): Likewise.
59 (tic6x-*-uclinux): Likewise.
60 (x86_64-*-linux*): Likewise.
61 (x86_64-*-mingw*): Likewise.
62 (x86_64-*-cygwin*): Likewise.
63
64 2018-04-18 Alan Hayward <alan.hayward@arm.com>
65
66 * tdesc.c: Remove xml parameter.
67
68 2018-04-18 Alan Hayward <alan.hayward@arm.com>
69
70 * server.c (get_features_xml): Remove cast.
71 * tdesc.c (void target_desc::accept): Fill in function.
72 (tdesc_get_features_xml): Remove old xml creation.
73 (print_xml_feature::visit_pre): Add xml vistor.
74 * tdesc.h (struct target_desc): Make xmltarget mutable.
75 (tdesc_get_features_xml): Remove declaration.
76
77 2018-04-18 Alan Hayward <alan.hayward@arm.com>
78
79 * tdesc.c (tdesc_architecture_name): Add new function.
80 (tdesc_osabi_name): Likewise.
81 (tdesc_get_features_xml): Use new functions.
82
83 2018-04-18 Alan Hayward <alan.hayward@arm.com>
84
85 * tdesc.c (tdesc_create_flags): Remove.
86 (tdesc_add_flag): Likewise.
87 (tdesc_named_type): Likewise.
88 (tdesc_create_union): Likewise.
89 (tdesc_create_struct): Likewise.
90 (tdesc_create_vector): Likewise.
91 (tdesc_add_bitfield): Likewise.
92 (tdesc_add_field): Likewise.
93 (tdesc_set_struct_size): Likewise.
94
95 2018-04-18 Alan Hayward <alan.hayward@arm.com>
96
97 * tdesc.c (~target_desc): Remove implictly deleted items.
98 (init_target_desc): Iterate all features.
99 (tdesc_get_features_xml): Use vector.
100 (tdesc_create_feature): Create feature.
101 * tdesc.h (tdesc_feature) Remove
102 (target_desc): Add features.
103
104 2018-04-18 Alan Hayward <alan.hayward@arm.com>
105
106 * Makefile.in: Add common/tdesc.c
107 * tdesc.c (init_target_desc): init all reg_defs from register
108 vector.
109 (tdesc_create_reg): Create tdesc_reg.
110 * tdesc.h (tdesc_feature): Add register vector.
111
112 2018-03-30 Simon Marchi <simon.marchi@polymtl.ca>
113
114 * tdesc.h (struct target_desc) <features>: Change type to
115 std::vector<std::string>.
116 * tdesc.c (target_desc::~target_desc): Adjust to std::vector
117 changes.
118 (tdesc_get_features_xml): Likewise.
119 (tdesc_create_feature): Likewise.
120
121 2018-03-26 Alan Hayward <alan.hayward@arm.com>
122
123 * regcache.c (find_register_by_number): Return a ref.
124 (find_regno): Use references.
125 (register_size): Likewise.
126 (register_data): Likewise.
127 * tdesc.c (target_desc::~target_desc): Remove free calls.
128 (target_desc::operator==): Use std::vector compare.
129 (init_target_desc): Use reference.
130 (tdesc_create_reg): Use reg constructors.
131 * tdesc.h (struct target_desc): Replace pointer with object.
132
133 2018-03-23 Alan Hayward <alan.hayward@arm.com>
134
135 * regcache.c (find_register_by_number): Make static.
136 (find_regno): Use find_register_by_number
137 * regcache.h (struct reg): Remove declaration.
138
139 2018-03-23 Alan Hayward <alan.hayward@arm.com>
140
141 * tdesc.c (target_desc::~target_desc): Move to here.
142 (target_desc::operator==): Likewise.
143 * tdesc.h (target_desc::~target_desc): Move from here.
144 (target_desc::operator==): Likewise.
145
146 2018-03-22 Andreas Arnez <arnez@linux.vnet.ibm.com>
147
148 * linux-s390-low.c (s390_get_wordsize): Correct brace style.
149
150 2018-03-21 Andreas Arnez <arnez@linux.vnet.ibm.com>
151
152 * linux-s390-ipa.c (get_ipa_tdesc): Add handling for
153 S390_TDESC_GS.
154 * linux-s390-low.c (s390_get_ipa_tdesc_idx): Likewise.
155 (initialize_low_tracepoint): Call init_registers_s390x_gs_linux64
156 and init_registers_s390_gs_linux64.
157
158 2018-03-21 Andreas Arnez <arnez@linux.vnet.ibm.com>
159
160 * linux-s390-low.c (s390_fill_gs): Remove function.
161 (s390_fill_gsbc): Remove function.
162 (s390_regsets): Set fill functions for the guarded storage regsets
163 to NULL.
164
165 2018-03-21 Andreas Arnez <arnez@linux.vnet.ibm.com>
166
167 * linux-s390-low.c (s390_get_hwcap): Replace tdesc parameter by
168 the word size. Add comment.
169 (s390_get_wordsize): New function.
170 (s390_arch_setup): No longer select a temporary tdesc to fetch the
171 pswm with it. Instead, use s390_get_wordsize to determine the
172 word size first and derive the correct tdesc from that directly.
173
174 2018-03-16 Simon Marchi <simon.marchi@polymtl.ca>
175
176 * Makefile.in: Include silent-rules.mk.
177 (srcdir, abs_top_srcdir, abs_srcdir, VPATH): Move up.
178 (COMPILE): Add ECHO_CXX.
179 (gdbserver$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
180 (gdbreplay$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
181 ($(IPA_LIB)): Add SILENCE and ECHO_CXXLD.
182 (version-generated.c): Add ECHO_GEN.
183 (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN_GENERATED.
184 (IPAGENT_COMPILE): Add ECHO_CXX.
185 (%-generated.c): Add ECHO_REGDAT.
186
187 2018-03-14 Tom Tromey <tom@tromey.com>
188
189 PR cli/14977:
190 * ax.c (ax_printf): Special case for NULL.
191
192 2018-03-08 Simon Marchi <simon.marchi@polymtl.ca>
193
194 * linux-low.c (linux_qxfer_libraries_svr4): Use
195 xml_escape_text_append.
196
197 2018-03-08 Simon Marchi <simon.marchi@polymtl.ca>
198
199 * linux-low.c (linux_qxfer_libraries_svr4): Use std::string.
200
201 2018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
202
203 * server.c (handle_general_set): Remove unnecessary xstrdup.
204
205 2018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
206
207 * server.c (parse_debug_format_options): Adjust to
208 delim_string_to_char_ptr_vec changes.
209 * thread-db.c (thread_db_load_search): Adjust to
210 dirnames_to_char_ptr_vec changes.
211
212 2018-03-01 Markus Metzger <markus.t.metzger@intel.com>
213
214 * target.h (target_enable_btrace, target_disable_btrace)
215 (target_read_btrace, target_read_btrace_conf): Turn macro into
216 inline function. Throw error if target method is not defined.
217 * server.c (handle_qxfer_btrace handle_qxfer_btrace_conf): Remove
218 check for btrace target method. Be prepared to handle exceptions
219 from btrace target methods.
220
221 2018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
222
223 * server.c (captured_main): Change order of error message printed
224 when the current working directory cannot be found.
225
226 2018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
227
228 * server.c: Include "filenames.h" and "pathstuff.h".
229 (program_name): Delete variable.
230 (program_path): New anonymous class.
231 (get_exec_wrapper): Use "program_path" instead of
232 "program_name".
233 (handle_v_run): Likewise.
234 (captured_main): Likewise.
235 (process_serial_event): Likewise.
236
237 2018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
238
239 * Makefile.in (SFILES): Add "$(srcdir)/common/pathstuff.c".
240 (OBJS): Add "pathstuff.o".
241 * server.c (current_directory): New global variable.
242 (captured_main): Initialize "current_directory".
243
244 2018-02-26 Alan Hayward <alan.hayward@arm.com>
245
246 * tdesc.c: Use common/tdesc.h.
247 * tdesc.h: Likewise.
248
249 2018-02-20 Alan Hayward <alan.hayward@arm.com>
250 Simon Marchi <simon.marchi@ericsson.com>
251
252 * Makefile.in: Switch order of make rules.
253
254 2018-02-19 Alan Hayward <alan.hayward@arm.com>
255
256 * Makefile.in: Add common directory in build.
257 * configure.ac: Add common reference.
258 * configure: Regenerate.
259
260 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
261
262 * linux-low.c (linux_target_ops): Remove linux_supports_btrace.
263 * nto-low.c (nto_target_ops): Remove NULL for supports_btrace.
264 * spu-low.c (spu_target_ops): Likewise.
265 * win32-low.c (win32_target_ops): Likewise.
266 * server.c (supported_btrace_packets): Report packets unconditionally.
267 * target.h (target_ops) <supports_btrace>: Remove.
268 (target_supports_btrace): Remove.
269
270 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
271
272 * server.c (handle_btrace_enable_bts, handle_btrace_enable_pt)
273 (handle_btrace_disable): Change return type to void. Use exceptions
274 to report errors.
275 (handle_btrace_general_set): Catch exception and copy message to
276 return message.
277
278 2018-02-08 Tom Tromey <tom@tromey.com>
279
280 * linux-low.c (install_software_single_step_breakpoints): Use
281 make_scoped_restore.
282 * inferiors.c (make_cleanup_restore_current_thread): Remove.
283 (do_restore_current_thread_cleanup): Remove.
284 * gdbthread.h (make_cleanup_restore_current_thread): Don't
285 declare.
286
287 2018-02-08 Tom Tromey <tom@tromey.com>
288
289 * mem-break.c (set_raw_breakpoint_at): Use
290 gdb::unique_xmalloc_ptr.
291
292 2018-01-30 Pedro Alves <palves@redhat.com>
293
294 PR gdb/13211
295 * target.c (target_terminal::terminal_state): Rename to ...
296 (target_terminal::m_terminal_state): ... this.
297
298 2018-01-19 James Clarke <jrtc27@jrtc27.com>
299
300 * linux-low.c (handle_extended_wait): Surround call to
301 thread_db_notice_clone with #ifdef USE_THREAD_DB.
302
303 2018-01-17 Simon Marchi <simon.marchi@ericsson.com>
304
305 * linux-low.c (attach_proc_task_lwp_callback): Adjust to
306 linux_ptrace_attach_fail_reason_string now returning an
307 std::string.
308 (linux_attach): Likewise.
309 * thread-db.c (attach_thread): Likewise.
310
311 2018-01-17 Eldar Abusalimov <eldar.abusalimov@jetbrains.com>
312
313 PR gdb/21559
314 * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
315 checking for fs_base/gs_base fields in struct user_regs_struct.
316 * configure: Regenerate.
317
318 2018-01-16 Yao Qi <yao.qi@linaro.org>
319
320 PR gdb/18749
321 * linux-low.c (fetch_register): Call supply_register instead of
322 error.
323
324 2018-01-08 Yao Qi <yao.qi@linaro.org>
325 Simon Marchi <simon.marchi@ericsson.com>
326
327 * Makefile.in (OBS): Remove selftest.o.
328 * configure.ac: Set srv_selftest_objs if $development is true.
329 (GDBSERVER_DEPFILES): Append $srv_selftest_objs.
330 * configure: Re-generated.
331 * server.c (captured_main): Wrap variable selftest_filter with
332 GDB_SELF_TEST.
333
334 2018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
335
336 * server.c (parse_debug_format_options): Return std::string.
337 (handle_monitor_command, captured_main): Adjust.
338
339 2018-01-05 Pedro Alves <palves@redhat.com>
340
341 PR gdb/18653
342 * server.c (captured_main): Pass quiet=false to
343 save_original_signals_state.
344
345 2018-01-01 Joel Brobecker <brobecker@adacore.com>
346
347 * gdbreplay.c (gdbreplay_version): Update copyright year in
348 version message.
349 * server.c (gdbserver_version): Likewise.
350
351 2017-12-08 Tom Tromey <tom@tromey.com>
352
353 * ax.c (ax_printf): Update.
354
355 2017-12-07 Yao Qi <yao.qi@linaro.org>
356
357 * linux-aarch64-ipa.c (initialize_low_tracepoint): Call
358 aarch64_linux_read_description.
359 * linux-amd64-ipa.c (idx2mask): New array.
360 (get_ipa_tdesc): Move idx2mask out.
361 (initialize_low_tracepoint): Initialize target descriptions.
362 * linux-i386-ipa.c (idx2mask): New array.
363 (get_ipa_tdesc): Move idx2mask out.
364 (initialize_low_tracepoint): Initialize target descriptions.
365
366 2017-12-05 Simon Marchi <simon.marchi@polymtl.ca>
367
368 * tdesc.c (struct tdesc_type): Change return type.
369 (tdesc_add_flag): Change parameter type.
370 (tdesc_add_bitfield): Likewise.
371 (tdesc_add_field): Likewise.
372 (tdesc_set_struct_size): Likewise.
373
374 2017-12-05 Simon Marchi <simon.marchi@ericsson.com>
375
376 * regcache.c (registers_to_string): Remove unused variable.
377
378 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
379
380 * inferiors.c (for_each_inferior_with_data): Remove.
381 * inferiors.h (for_each_inferior_with_data): Remove.
382 * server.c (handle_qxfer_threads_worker): Change parameter type.
383 (handle_qxfer_threads_proper): Use for_each_thread.
384
385 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
386
387 * inferiors.c (for_each_inferior): Remove.
388 (clear_inferiors): Use for_each_thread.
389 * inferiors.h (for_each_inferior): Remove.
390 * linux-low.c (linux_wait_for_event_filtered): Use
391 for_each_thread.
392 (linux_stabilize_threads): Likewise.
393 * regcache.c (regcache_release): Likewise.
394 * server.c (gdb_wants_all_threads_stopped): Likewise.
395 (clear_pending_status_callback): Remove.
396 (handle_status): Use for_each_thread.
397 (captured_main): Likewise.
398 * win32-low.c (child_init_thread_list): Likewise.
399 (win32_clear_inferiors): Likewise.
400 (fake_breakpoint_event): Likewise.
401
402 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
403
404 * inferiors.h (find_inferior): Remove.
405 * inferiors.c (find_inferior): Remove.
406
407 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
408
409 * linux-low.c (resume_status_pending_p): Update comment.
410 (need_step_over_p): Update comment.
411
412 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
413
414 * linux-low.c (proceed_one_lwp): Return void, change parameter
415 type.
416 (unsuspend_and_proceed_one_lwp): Likewise.
417 (proceed_all_lwps): Use for_each_thread.
418 (unstop_all_lwps): Likewise.
419
420 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
421
422 * linux-low.c (linux_resume_one_thread): Return void, take
423 parameter directly.
424 (linux_resume): Use for_each_thread.
425
426 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
427
428 * linux-low.c (send_sigstop_callback): Return void, change
429 parameter type. Rename to...
430 (send_sigstop): ... this.
431 (suspend_and_send_sigstop_callback): Return void, change parameter
432 type. Rename to...
433 (suspend_and_send_sigstop): ... this.
434 (stop_all_lwps): Use for_each_thread.
435
436 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
437
438 * linux-low.c (lwp_running): Return bool, remove unused
439 argument.
440 (linux_stabilize_threads): Use find_thread.
441
442 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
443
444 * linux-low.c (select_singlestep_lwp_callback): Remove.
445 (count_events_callback): Remove.
446 (select_event_lwp_callback): Remove.
447 (select_event_lwp): Use find_thread/for_each_thread.
448
449 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
450
451 * linux-low.c (not_stopped_callback): Return bool, take filter
452 argument directly.
453 (linux_wait_for_event_filtered): Use find_thread.
454 (linux_wait_1): Likewise.
455
456 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
457
458 * linux-low.c (same_lwp): Remove.
459 (find_lwp_pid): Use find_thread.
460
461 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
462
463 * linux-low.c (delete_lwp_callback): Remove.
464 (linux_mourn): Use for_each_thread.
465
466 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
467
468 * linux-low.c (linux_detach_lwp_callback): Return void, remove
469 args parameter, don't check for pid.
470 (linux_detach): Use for_each_thread.
471
472 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
473
474 * linux-low.c (struct counter): Remove.
475 (second_thread_of_pid_p): Remove.
476 (last_thread_of_process_p): Use find_thread.
477
478 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
479
480 * inferiors.c (find_inferior_in_random): Remove.
481 * inferiors.h (find_inferior_in_random): Remove.
482 * linux-low.c (status_pending_p_callback): Return bool, accept
483 parameter ptid directly.
484 (linux_wait_for_event_filtered): Use find_thread_in_random.
485 (linux_wait_1): Likewise.
486
487 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
488
489 * inferiors.c (find_inferior_id): Remove.
490 (find_thread_ptid): Move implemention from find_inferior_id to
491 here.
492 * inferiors.h (find_inferior_id): Remove.
493 * server.c (handle_status): Use find_thread_ptid.
494 (process_serial_event): Likewise.
495 * thread-db.c (find_one_thread): Likewise.
496 (thread_db_thread_handle): Likewise.
497 * win32-low.c (thread_rec): Likewise.
498 (child_delete_thread): Likewise.
499 (win32_thread_alive): Likewise.
500 (get_child_debug_event): Likewise.
501
502 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
503
504 * linux-mips-low.c (update_watch_registers_callback): Return
505 void, remove pid_p parameter, don't check for pid.
506 (mips_insert_point, mips_remove_point): Use for_each_thread.
507
508 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
509
510 * lynx.low (lynx_delete_thread_callback): Remove.
511 (lynx_mourn): Use for_each_thread.
512
513 2017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
514
515 * regcache.c (regcache_invalidate_one): Remove.
516 (regcache_invalidate_pid): use for_each_thread.
517
518 2017-11-26 Tom Tromey <tom@tromey.com>
519
520 * linux-low.c (linux_create_inferior): Update.
521
522 2017-11-24 Ulrich Weigand <uweigand@de.ibm.com>
523
524 * spu-low.c (spu_create_inferior): Fix typo in argument name.
525
526 2017-11-24 Alan Hayward <alan.hayward@arm.com>
527
528 * configure.srv: Add linux-aarch64-tdesc-selftest.o.
529 * linux-aarch64-low.c (initialize_low_arch): Call init func.
530 * linux-aarch64-tdesc-selftest.c: New file.
531 * linux-aarch64-tdesc.h (initialize_low_tdesc): New declaration.
532
533 2017-11-24 Alan Hayward <alan.hayward@arm.com>
534
535 * configure.srv: Add new file.
536 * linux-aarch64-low.c (initialize_low_arch): Call init func.
537 * linux-aarch64-tdesc-selftest.c: New file.
538 * linux-aarch64-tdesc.h (initialize_low_tdesc): New declaration.
539
540 2017-11-24 Alan Hayward <alan.hayward@arm.com>
541
542 * linux-aarch64-ipa.c (initialize_low_tracepoint): Remove init.
543 * linux-aarch64-low.c (initialize_low_arch): Remove init.
544 * linux-aarch64-tdesc.c (aarch64_linux_read_description): Add init.
545
546 2017-11-24 Alan Hayward <alan.hayward@arm.com>
547
548 * configure.srv: Add new files.
549 * linux-aarch64-ipa.c (get_ipa_tdesc): Call
550 aarch64_linux_read_description.
551 * linux-aarch64-low.c (aarch64_linux_read_description):
552 Merge with aarch64_arch_setup.
553 (aarch64_arch_setup): Call aarch64_linux_read_description.
554 * linux-aarch64-tdesc.c: New file.
555 * linux-aarch64-tdesc.h: New file.
556
557 2017-11-24 Yao Qi <yao.qi@linaro.org>
558
559 * configure.srv: Set $srv_regobj for tic6x-linux.
560 * linux-tic6x-low.c: Include "arch/tic6x.h" and "tdesc.h".
561 (tic6x_read_description): Move some code to tic6x_arch_setup.
562 (tic6x_tdesc_test): New function.
563 (initialize_low_arch): Call selftests::register_test.
564
565 2017-11-22 Yao Qi <yao.qi@linaro.org>
566
567 * remote-utils.c (prepare_resume_reply): Use memcpy.
568
569 2017-11-19 Simon Marchi <simon.marchi@ericsson.com>
570
571 * linux-low.c (kill_one_lwp_callback): Return void, take
572 argument directly, don't filter on pid.
573 (linux_kill): Use for_each_thread.
574
575 2017-11-19 Simon Marchi <simon.marchi@ericsson.com>
576
577 * linux-low.c (need_step_over_p): Return bool, remove dummy
578 argument.
579 (linux_resume, proceed_all_lwps): Use find_thread.
580
581 2017-11-19 Simon Marchi <simon.marchi@ericsson.com>
582
583 * linux-low.c (resume_status_pending_p): Return bool, remove
584 flag_p argument.
585 (linux_resume): Use find_thread.
586
587 2017-11-19 Simon Marchi <simon.marchi@ericsson.com>
588
589 * linux-low.c (struct thread_resume_array): Remove.
590 (linux_set_resume_request): Return void, take arguments
591 directly.
592 (linux_resume): Use for_each_thread.
593
594 2017-11-19 Simon Marchi <simon.marchi@ericsson.com>
595
596 * linux-low.c (stuck_in_jump_pad_callback): Change prototype,
597 return bool, remove data argument.
598 (linux_stabilize_threads): Use find_thread.
599
600 2017-11-19 Simon Marchi <simon.marchi@ericsson.com>
601
602 * linux-low.c (unsuspend_one_lwp): Remove.
603 (unsuspend_all_lwps): Use for_each_thread, inline code from
604 unsuspend_one_lwp.
605
606 2017-11-19 Simon Marchi <simon.marchi@ericsson.com>
607
608 * gdbthread.h (find_thread): Add overload with ptid_t filter.
609 * linux-low.c (struct iterate_over_lwps_args): Remove.
610 (iterate_over_lwps_filter): Remove.
611 (iterate_over_lwps): Use find_thread.
612
613 2017-11-19 Simon Marchi <simon.marchi@ericsson.com>
614
615 * linux-low.c (reset_lwp_ptrace_options_callback): Remove.
616 (linux_handle_new_gdb_connection): Use for_each_thread, inline
617 code from reset_lwp_ptrace_options_callback.
618
619 2017-11-19 Simon Marchi <simon.marchi@ericsson.com>
620
621 * linux-arm-low.c (struct update_registers_data): Remove.
622 (update_registers_callback): Return void, take arguments
623 directly, don't check thread's pid.
624 (arm_insert_point, arm_remove_point): Use for_each_thread.
625
626 2017-11-19 Simon Marchi <simon.marchi@ericsson.com>
627
628 * win32-low.c (continue_one_thread): Return void, take argument
629 directly.
630 (child_continue): Use for_each_thread.
631
632 2017-11-19 Simon Marchi <simon.marchi@ericsson.com>
633
634 * win32-i386-low.c (update_debug_registers_callback): Rename
635 to ...
636 (update_debug_registers): ... this, return void, remove pid_p arg.
637 (x86_dr_low_set_addr, x86_dr_low_set_control): Use for_each_thread.
638
639 2017-11-17 Simon Marchi <simon.marchi@polymtl.ca>
640
641 * inferiors.h (struct process_info): Add constructor, initialize
642 fields..
643 <syscalls_to_catch>: Change type to std::vector<int>.
644 * inferiors.c (add_process): Allocate process_info with new.
645 (remove_process): Free process_info with delete.
646 * linux-low.c (handle_extended_wait): Adjust.
647 (gdb_catching_syscalls_p, gdb_catch_this_syscall_p): Adjust.
648 * server.c (handle_general_set): Adjust.
649
650 2017-11-16 Pedro Alves <palves@redhat.com>
651
652 * remote-utils.c (remote_close): Block SIGIO signals instead of
653 uninstalling the SIGIO handler.
654
655 2017-11-16 Alan Hayward <alan.hayward@arm.com>
656
657 * tdesc.c (tdesc_get_features_xml): Allow null osabi.
658
659 2017-11-16 Yao Qi <yao.qi@linaro.org>
660
661 * linux-tic6x-low.c (tic6x_fill_gregset): Cast buf.
662 (tic6x_store_gregset): Likewise.
663 (tic6x_usrregs_info): Move it up.
664
665 2017-11-15 Alan Hayward <alan.hayward@arm.com>
666
667 * Makefile.in: Update arch rules.
668 * configure.srv: Explicitly mark arch/ files.
669
670 2017-11-13 Andreas Schwab <schwab@suse.de>
671
672 * linux-m68k-low.c (m68k_supports_hardware_single_step): New
673 function.
674 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
675
676 2017-11-06 Pedro Alves <palves@redhat.com>
677
678 * config.in, configure: Regenerate.
679
680 2017-10-27 Simon Marchi <simon.marchi@ericsson.com>
681
682 * target.c (struct thread_search): Remove.
683 (thread_search_callback): Remove.
684 (prepare_to_access_memory): Use for_each_thread instead of
685 find_inferior. Inline code from thread_search_callback.
686
687 2017-10-27 Simon Marchi <simon.marchi@ericsson.com>
688
689 * server.c (struct visit_actioned_threads_data): Remove.
690 (visit_actioned_threads): Change prototype to take arguments
691 directly.
692 (resume): Use find_thread instead of find_inferior.
693
694 2017-10-27 Simon Marchi <simon.marchi@ericsson.com>
695
696 * server.c (queue_stop_reply_callback): Change prototype, return
697 void.
698 (find_status_pending_thread_callback): Remove.
699 (handle_status): Replace find_inferior with find_thread and
700 for_each_thread.
701
702 2017-10-25 Alan Hayward <alan.hayward@arm.com>
703
704 * linux-aarch64-low.c (aarch64_fill_gregset): Replace defines
705 with REGNO.
706 (aarch64_store_gregset): Likewise.
707 (aarch64_fill_fpregset): Likewise.
708 (aarch64_store_fpregset): Likewise.
709
710 2017-10-21 Simon Marchi <simon.marchi@ericsson.com>
711
712 * gdbthread.h (find_thread, for_each_thread): New functions.
713 * inferiors.c (thread_of_pid): Remove.
714 (find_any_thread_of_pid): Use find_thread.
715 * linux-low.c (num_lwps): Use for_each_thread.
716
717 2017-10-17 Yao Qi <yao.qi@linaro.org>
718
719 * Makefile.in: Remove one rule.
720 * configure.srv: Rename aarch64-insn.o with arch/aarch64-insn.o.
721
722 2017-10-17 Yao Qi <yao.qi@linaro.org>
723
724 * configure.srv: Rename arm-linux.o with arch/arm-linux.o.
725 Rename arm-get-next-pcs.o with arch/arm-get-next-pcs.o.
726
727 2017-10-17 Yao Qi <yao.qi@linaro.org>
728
729 * configure.srv: Rename arm.o with arch/arm.o.
730
731 2017-10-17 Yao Qi <yao.qi@linaro.org>
732
733 * Makefile.in (CONFIG_SRC_SUBDIR): New variable.
734 (clean): Remove .o files in CONFIG_SRC_SUBDIR.
735 (distclean): Remove DEPDIR in CONFIG_SRC_SUBDIR.
736 (arch-i386.o, arch-amd64.o): Remove rules.
737 (arch/%.o): New rule.
738 Update POSTCOMPILE and COMPILE.pre.
739 * configure.ac: Invoke AC_CONFIG_COMMANDS.
740 * configure: Re-generated.
741 * configure.srv: Replace arch-i386.o with arch/i386.o.
742 Replace arch-amd64.o with arch/amd64.o.
743
744 2017-10-16 Yao Qi <yao.qi@linaro.org>
745
746 * configure: Regenerated.
747
748 2017-10-14 Simon Marchi <simon.marchi@polymtl.ca>
749
750 * inferiors.h: (struct inferior_list): Remove.
751 (struct inferior_list_entry); Remove.
752 (add_inferior_to_list, clear_inferior_list, one_inferior_p,
753 A_I_NEXT, ALL_INFERIORS_TYPE, ALL_INFERIORS, remove_inferior,
754 get_first_inferior): Remove.
755 (for_each_inferior, for_each_inferior_with_data, find_inferior,
756 find_inferior_id, find_inferior_in_random): Change signature.
757 * inferiors.c (all_threads): Change type to
758 std::list<thread_info *>.
759 (get_thread): Remove macro.
760 (find_inferior, find_inferior_id): Change signature, implement
761 using find_thread.
762 (find_inferior_in_random): Change signature, implement using
763 find_thread_in_random.
764 (for_each_inferior, for_each_inferior_with_data): Change
765 signature, implement using for_each_thread.
766 (add_inferior_to_list, remove_inferior): Remove.
767 (add_thread, get_first_thread, thread_of_pid,
768 find_any_thread_of_pid, free_one_thread, remove_thread): Update.
769 (get_first_inferior, one_inferior_p, clear_inferior_list):
770 Remove.
771 (clear_inferiors, get_thread_process): Update.
772 * gdbthread.h: Include <list>.
773 (struct thread_info) <entry>: Remove field.
774 <id>: New field.
775 (all_threads): Change type to std::list<thread_info *>.
776 (get_first_inferior): Add doc.
777 (find_thread, for_each_thread, find_thread_in_random): New
778 functions.
779 (current_ptid, pid_of, ptid_of, lwpid_of): Update.
780 * linux-arm-low.c (update_registers_callback): Update.
781 * linux-low.c (second_thread_of_pid_p): Update.
782 (kill_one_lwp_callback, linux_detach_lwp_callback,
783 delete_lwp_callback, status_pending_p_callback, same_lwp,
784 find_lwp_pid, num_lwps, iterate_over_lwps_filter,
785 iterate_over_lwps, not_stopped_callback,
786 resume_stopped_resumed_lwps, count_events_callback,
787 select_singlestep_lwp_callback, select_event_lwp_callback,
788 unsuspend_one_lwp, linux_wait_1, send_sigstop_callback,
789 suspend_and_send_sigstop_callback, wait_for_sigstop,
790 stuck_in_jump_pad_callback, move_out_of_jump_pad_callback,
791 lwp_running, linux_set_resume_request, resume_status_pending_p,
792 need_step_over_p, start_step_over, linux_resume_one_thread,
793 proceed_one_lwp, unsuspend_and_proceed_one_lwp,
794 reset_lwp_ptrace_options_callback): Update.
795 * linux-mips-low.c (update_watch_registers_callback): Update.
796 * regcache.c (regcache_invalidate_one, regcache_invalidate):
797 Update.
798 (free_register_cache_thread_one): Remove.
799 (regcache_release): Update.
800 * server.c (handle_btrace_enable_bts, handle_btrace_enable_pt,
801 handle_qxfer_threads_worker): Update.
802 (handle_query): Update, use list iterator.
803 (visit_actioned_threads, handle_pending_status,
804 queue_stop_reply_callback, gdb_wants_all_threads_stopped,
805 clear_pending_status_callback, set_pending_status_callback,
806 find_status_pending_thread_callback, handle_status,
807 process_serial_event): Update.
808 * target.c (thread_search_callback): Update.
809 * thread-db.c (thread_db_get_tls_address): Update.
810 * tracepoint.c (tracepoint_finished_step, tracepoint_was_hit):
811 Update.
812 * win32-i386-low.c (update_debug_registers_callback): Update.
813 * win32-low.c (delete_thread_info, child_delete_thread,
814 continue_one_thread, suspend_one_thread,
815 get_child_debug_event): Adjust.
816
817 2017-10-14 Simon Marchi <simon.marchi@polymtl.ca>
818
819 * gdbthread.h (ptid_of, pid_of, lwpid_of): New functions.
820 * inferiors.h: Include <list>.
821 (struct process_info) <entry>: Remove field.
822 <pid>: New field.
823 (pid_of): Change macro to function.
824 (ptid_of, lwpid_of): Remove macro.
825 (all_processes): Change type to std::list<process_info *>.
826 (ALL_PROCESSES): Remove macro.
827 (for_each_process, find_process): New function.
828 * inferiors.c (all_processes): Change type to
829 std::list<process_info *>.
830 (find_thread_process): Adjust.
831 (add_process): Likewise.
832 (remove_process): Likewise.
833 (find_process_pid): Likewise.
834 (get_first_process): Likewise.
835 (started_inferior_callback): Remove.
836 (have_started_inferiors_p): Adjust.
837 (attached_inferior_callback): Remove.
838 (have_attached_inferiors_p): Adjust.
839 * linux-low.c (check_zombie_leaders): Likewise.
840 * linux-x86-low.c (x86_arch_setup_process_callback): Remove.
841 (x86_linux_update_xmltarget): Adjust.
842 * server.c (handle_query): Likewise.
843 (gdb_reattached_process): Remove.
844 (handle_status): Adjust.
845 (kill_inferior_callback): Likewise.
846 (detach_or_kill_inferior): Remove.
847 (print_started_pid): Likewise.
848 (print_attached_pid): Likewise.
849 (detach_or_kill_for_exit): Update.
850 (process_serial_event): Likewise.
851 * linux-arm-low.c (arm_new_fork): Likewise.
852
853 2017-10-14 Simon Marchi <simon.marchi@polymtl.ca>
854
855 * dll.h: Include <list>.
856 (struct dll_info): Add constructor.
857 <entry>: Remove field.
858 (all_dlls): Change type to std::list<dll_info>.
859 * dll.c: Include <algorithm>.
860 (get_dll): Remove macro.
861 (all_dlls): Change type to std::list<dll_info *>.
862 (free_one_dll): Remove.
863 (match_dll): Likewise.
864 (loaded_dll): Adjust.
865 (unloaded_dll): Adjust to all_dlls type change, use
866 std::find_if. Inline code from match_dll.
867 (clear_dlls): Adjust to all_dlls type change.
868 * server.c (emit_dll_description): Remove.
869 (handle_qxfer_libraries): Adjust to all_dlls type change,
870 integrate emit_dll_description's functionality.
871
872 2017-10-12 Simon Marchi <simon.marchi@ericsson.com>
873
874 * linux-low.h (struct linux_target_ops) <delete_process>: New
875 field.
876 * linux-low.c (linux_mourn): Call the_low_target.delete_process.
877 * linux-aarch64-low.c (aarch64_linux_delete_process): New.
878 (struct linux_target_ops): Add delete_process callback.
879 * linux-arm-low.c (arm_delete_process): New.
880 (struct linux_target_ops): Add delete_process callback.
881 * linux-bfin-low.c (struct linux_target_ops): Likewise.
882 * linux-crisv32-low.c (struct linux_target_ops): Likewise.
883 * linux-m32r-low.c (struct linux_target_ops): Likewise.
884 * linux-mips-low.c (mips_linux_delete_process): New.
885 (struct linux_target_ops): Add delete_process callback.
886 * linux-ppc-low.c (struct linux_target_ops): Likewise.
887 * linux-s390-low.c (struct linux_target_ops): Likewise.
888 * linux-sh-low.c (struct linux_target_ops): Likewise.
889 * linux-tic6x-low.c (struct linux_target_ops): Likewise.
890 * linux-tile-low.c (struct linux_target_ops): Likewise.
891 * linux-x86-low.c (x86_linux_delete_process): New.
892 (struct linux_target_ops): Add delete_process callback.
893 * linux-xtensa-low.c (struct linux_target_ops): Likewise.
894
895 2017-10-12 Simon Marchi <simon.marchi@ericsson.com>
896
897 * linux-aarch64-low.c (the_low_target): Add thread delete
898 callback.
899 * linux-arm-low.c (arm_delete_thread): New function.
900 (the_low_target): Add thread delete callback.
901 * linux-bfin-low.c (the_low_target): Likewise.
902 * linux-crisv32-low.c (the_low_target): Likewise.
903 * linux-low.c (delete_lwp): Invoke delete_thread callback if
904 set.
905 * linux-low.h (struct linux_target_ops) <delete_thread>: New
906 field.
907 * linux-m32r-low.c (the_low_target): Add thread delete callback.
908 * linux-mips-low.c (mips_linux_delete_thread): New function.
909 (the_low_target): Add thread delete callback.
910 * linux-ppc-low.c (the_low_target): Likewise.
911 * linux-s390-low.c (the_low_target): Likewise.
912 * linux-sh-low.c (the_low_target): Likewise.
913 * linux-tic6x-low.c (the_low_target): Likewise.
914 * linux-tile-low.c (the_low_target): Likewise.
915 * linux-x86-low.c (the_low_target): Likewise.
916 * linux-xtensa-low.c (the_low_target): Likewise.
917
918 2017-10-06 Yuanhui Zhang <asmwarrior@gmail.com>
919
920 * win32-low.c: Include "common-inferior.h".
921
922 2017-10-04 Sergio Durigan Junior <sergiodj@redhat.com>
923
924 * inferiors.c (set_inferior_cwd): New function.
925 * server.c (handle_general_set): Handle QSetWorkingDir packet.
926 (handle_query): Inform that QSetWorkingDir is supported.
927 * win32-low.c (create_process): Pass the inferior's cwd to
928 CreateProcess.
929
930 2017-10-04 Sergio Durigan Junior <sergiodj@redhat.com>
931
932 * inferiors.c (current_inferior_cwd): New global variable.
933 (get_inferior_cwd): New function.
934 * inferiors.h (struct process_info) <cwd>: New field.
935
936 2017-10-04 Sergio Durigan Junior <sergiodj@redhat.com>
937
938 * Makefile.in (SFILES): Add $(srcdir)/common/gdb_tilde_expand.c.
939 (OBS): Add gdb_tilde_expand.o.
940
941 2017-10-02 Simon Marchi <simon.marchi@ericsson.com>
942
943 * lynx-i386-low.c (lynx_i386_arch_setup): Call init_target_desc.
944 * nto-x86-low.c (nto_x86_arch_setup): Likewise.
945
946 2017-09-29 Pedro Alves <palves@redhat.com>
947
948 * ax.c (gdb_parse_agent_expr): Constify.
949 * ax.h (gdb_parse_agent_expr): Constify.
950 * mem-break.c (add_breakpoint_condition, add_breakpoint_commands):
951 Constify.
952 * mem-break.h (add_breakpoint_condition, add_breakpoint_commands): Constify.
953 * remote-utils.c (hex_or_minus_one, read_ptid): Constify.
954 * remote-utils.h (read_ptid): Constify.
955 * server.c (handle_qxfer_exec_file, handle_query, handle_v_cont)
956 (process_point_options, process_serial_event): Constify.
957 * tracepoint.c (add_tracepoint_action, cmd_qtdp, cmd_qtdpsrc)
958 (cmd_qtdv, cmd_qtenable_disable, cmd_qtro, cmd_qtframe, cmd_qtp)
959 (cmd_qtbuffer): Constify.
960
961 2017-09-29 Pedro Alves <palves@redhat.com>
962
963 * proc-service.c (ps_pdread): Return PS_ERR if reading memory
964 fails.
965
966 2017-09-29 Pedro Alves <palves@redhat.com>
967
968 * linux-low.c (handle_extended_wait): Pass parent thread instead
969 of process to thread_db_notice_clone.
970 * linux-low.h (thread_db_notice_clone): Replace parent process
971 parameter with parent thread parameter.
972 * thread-db.c (find_one_thread): Add comment.
973 (thread_db_notice_clone): Replace parent process parameter with
974 parent thread parameter. Temporarily switch to the parent thread.
975
976 2017-09-26 Sergio Durigan Junior <sergiodj@redhat.com>
977
978 * gdbthread.h: Include "common-gdbthread.h".
979 * inferiors.c (switch_to_thread): Use "gdb_assert" instead of
980 "if" when validating the ptid.
981 * remote-utils.c: Include "gdbthread.h".
982 (prepare_resume_reply): Use "switch_to_thread".
983 * target.c (done_accessing_memory): Likewise.
984
985 2017-09-25 Andreas Arnez <arnez@linux.vnet.ibm.com>
986
987 * configure.srv (s390*-*-linux*): Add s390-gs-linux64.o and
988 s390x-gs-linux64.o to srv_regobj. Add s390-gs-linux64.xml,
989 s390x-gs-linux64.xml, s390-gs.xml, and s390-gsbc.xml to
990 srv_xmlfiles. Add s390-gs-linux64-ipa.o and
991 s390x-gs-linux64-ipa.o to ipa_obj.
992 * linux-s390-low.c (HWCAP_S390_GS): New define.
993 (s390_fill_gs, s390_store_gs, s390_fill_gsbc, s390_store_gsbc):
994 New functions.
995 (s390_regsets): Add regsets for NT_S390_GS_CB and NT_S390_GS_BC.
996 (s390_arch_setup): Check for guarded-storage support and choose
997 appropriate tdesc.
998 (initialize_low_arch): Invoke init_registers_s390_gs_linux64 and
999 init_registers_s390x_gs_linux64.
1000 * linux-s390-tdesc.h (enum s390_linux_tdesc) <S390_TDESC_GS>: New
1001 enum value.
1002 (init_registers_s390x_gs_linux64, tdesc_s390x_gs_linux64)
1003 (init_registers_s390_gs_linux64, tdesc_s390_gs_linux64): Declare.
1004
1005 2017-09-22 Simon Marchi <simon.marchi@ericsson.com>
1006
1007 * win32-i386-low.c (i386_arch_setup): Call init_target_desc.
1008
1009 2017-09-21 Kevin Buettner <kevinb@redhat.com>
1010
1011 * linux-low.h (struct lwp_info): Add new field, thread_handle.
1012 (thread_db_thread_handle): Declare.
1013 * linux-low.c (linux_target_ops): Initialize thread_handle.
1014 * server.c (handle_qxfer_threads_worker): Add support for
1015 "handle" attribute.
1016 * target.h (struct target_ops): Add new function pointer,
1017 thread_handle.
1018 (target_thread_handle): Define.
1019 * thread-db.c (find_one_thread, attach_thread): Set thread_handle
1020 field in lwp.
1021 (thread_db_thread_handle): New function.
1022
1023 2017-09-21 Kevin Buettner <kevinb@redhat.com>
1024
1025 * linux-low.c (handle_extended_wait): Call thread_db_notice_clone().
1026 * linux-low.h (thread_db_notice_clone): Declare.
1027 * thread-db.c (thread_db_notice_clone): New function.
1028
1029 2017-09-21 Pedro Alves <palves@redhat.com>
1030
1031 * server.c (gdb_read_memory, handle_status, process_serial_event)
1032 (handle_serial_event, handle_target_event): Adjust to
1033 set_desired_thread prototype change.
1034 * target.c (set_desired_thread): Remove 'use_general' parameter
1035 and adjust.
1036 * target.h (set_desired_thread): Remove 'use_general' parameter.
1037
1038 2017-09-20 Tom Tromey <tom@tromey.com>
1039
1040 * target.c (target_terminal::terminal_state): Define.
1041 (target_terminal::init): Rename from target_terminal_init.
1042 (target_terminal::inferior): Rename from
1043 target_terminal_inferior.
1044 (target_terminal::ours): Rename from target_terminal_ours.
1045 (target_terminal::ours_for_output, target_terminal::info): New.
1046
1047 2017-09-16 Simon Marchi <simon.marchi@ericsson.com>
1048
1049 * server.c (accumulate_file_name_length): Remove.
1050 (emit_dll_description): Adjust to std::string change.
1051 (handle_qxfer_libraries): Use std::string to hold document.
1052
1053 2017-09-16 Simon Marchi <simon.marchi@ericsson.com>
1054
1055 * linux-low.c (linux_qxfer_libraries_svr4): Adjust to change of
1056 return type of xml_escape_text.
1057 * server.c (emit_dll_description): Likewise.
1058
1059 2017-09-16 Simon Marchi <simon.marchi@ericsson.com>
1060
1061 * server.c (captured_main): Accept argument for --selftest.
1062 Update run_tests call.
1063 * linux-x86-tdesc-selftest.c (initialize_low_tdesc): Add names
1064 when registering selftests.
1065
1066 2017-09-16 Sergio Durigan Junior <sergiodj@redhat.com>
1067
1068 * regcache.c (get_thread_regcache): Update code to use "std::vector"
1069 instead of "VEC" for "target_desc.reg_defs".
1070 (regcache_cpy): Likewise.
1071 (registers_to_string): Likewise.
1072 (registers_from_string): Likewise.
1073 (find_regno): Likewise.
1074 (supply_regblock): Likewise.
1075 (regcache_raw_read_unsigned): Likewise.
1076 * tdesc.c (init_target_desc): Likewise.
1077 (tdesc_create_reg): Likewise.
1078 * tdesc.h: Remove declaration of "tdesc_reg_p". Include <vector>.
1079 (struct target_desc) <reg_defs>: Convert to "std::vector".
1080 (target_desc): Do not initialize "reg_defs".
1081 (~target_desc): Update code to use "std::vector" instead of "VEC"
1082 for "target_desc.reg_defs".
1083 (operator==): Likewise.
1084
1085 2017-09-15 Simon Marchi <simon.marchi@ericsson.com>
1086
1087 * inferiors.h (thread_to_gdb_id): Remove.
1088 * inferiors.c (thread_to_gdb_id): Remove.
1089 * server.c (handle_qxfer_threads_worker, handle_query): Adjust.
1090 * lynx-low.c (lynx_resume, lynx_wait_1, lynx_fetch_registers,
1091 lynx_store_registers, lynx_read_memory, lynx_write_memory):
1092 Likewise.
1093 * nto-low.c (nto_fetch_registers, nto_store_registers,
1094 nto_stopped_by_watchpoint, nto_stopped_data_address): Likewise.
1095
1096 2017-09-15 Simon Marchi <simon.marchi@ericsson.com>
1097
1098 * inferiors.h (gdb_id_to_thread_id): Remove.
1099 * inferiors.c (gdb_id_to_thread_id): Remove.
1100 * server.c (process_serial_event): Adjust to gdb_id_to_thread_id
1101 removal. Move pid declaration closer to where it's used.
1102
1103 2017-09-15 Simon Marchi <simon.marchi@ericsson.com>
1104
1105 * server.c (handle_detach): New function.
1106 (process_serial_event): Move code out, call handle_detach.
1107
1108 2017-09-15 Simon Marchi <simon.marchi@ericsson.com>
1109
1110 * server.c (require_running): Rename to ...
1111 (require_running_or_return): ... this ...
1112 (require_running_or_break): ... and this.
1113 (handle_query, process_serial_event): Adjust.
1114
1115 2017-09-15 Simon Marchi <simon.marchi@ericsson.com>
1116
1117 * linux-low.c (linux_set_resume_request): Remove unused
1118 variables.
1119
1120 2017-09-15 Simon Marchi <simon.marchi@ericsson.com>
1121
1122 * server.c (first_thread_of): Remove.
1123 (process_serial_event): Replace usage of first_thread_of with
1124 find_any_thread_of_pid.
1125 * tracepoint.c (same_process_p): Remove.
1126 (gdb_agent_about_to_close): Replace usage of same_process_p with
1127 find_any_thread_of_pid.
1128 * linux-x86-low.c (same_process_callback): Remove.
1129 (x86_arch_setup_process_callback): Replace usage of
1130 same_process_callback with find_any_thread_of_pid.
1131 * thread-db.c (any_thread_of): Remove.
1132 (switch_to_process): Replace usage of any_thread_of with
1133 find_any_thread_of_pid.
1134 * inferiors.c (thread_pid_matches_callback): Remove.
1135 (find_thread_process): Adjust to use find_any_thread_of_pid.
1136
1137 2017-09-10 Sergio Durigan Junior <sergiodj@redhat.com>
1138
1139 * regcache.c (get_thread_regcache): Guard calls to "memset"
1140 with "!VEC_empty".
1141
1142 2017-09-10 Sergio Durigan Junior <sergiodj@redhat.com>
1143
1144 * linux-low.c (handle_extended_wait): Use
1145 "allocate_target_description" instead of "XNEW".
1146 * linux-x86-low.c (initialize_low_arch): Likewise.
1147
1148 2017-09-05 Yao Qi <yao.qi@linaro.org>
1149
1150 * configure.srv (srv_i386_regobj): Remove.
1151 (srv_amd64_regobj): Remove.
1152 (srv_regobj): Set it to "" for x86 non-linux targets.
1153 * linux-x86-tdesc.c (i386_linux_read_description):
1154 * lynx-i386-low.c: Include x86-xstate.h and arch/i386.h.
1155 (init_registers_i386): Remove the declaration.
1156 (tdesc_i386): Remove the declaration.
1157 (lynx_i386_arch_setup): Call i386_create_target_description.
1158 * nto-x86-low.c: Likewise.
1159 * win32-i386-low.c [__x86_64__]: include arch/amd64.h.
1160 [!__x86_64__]: include arch/i386.h.
1161 (i386_arch_setup) [__x86_64__]: Call amd64_create_target_description.
1162
1163 2017-09-05 Yao Qi <yao.qi@linaro.org>
1164
1165 * configure.srv (srv_amd64_linux_xmlfiles): Remove
1166 i386/amd64-XXX-linux from it.
1167
1168 2017-09-05 Yao Qi <yao.qi@linaro.org>
1169
1170 * configure.srv: Empty srv_amd64_linux_regobj if $development is
1171 false.
1172 (ipa_amd64_linux_regobj): Remove.
1173 (ipa_x32_linux_regobj): Remove.
1174
1175 2017-09-05 Yao Qi <yao.qi@linaro.org>
1176
1177 * Makefile.in (arch-amd64.o): New rule.
1178 * configure.srv: Append arch-amd64.o.
1179 * linux-amd64-ipa.c: Include common/x86-xstate.h.
1180 (get_ipa_tdesc): Call amd64_linux_read_description.
1181 (initialize_low_tracepoint): Don't call init_registers_x32_XXX
1182 and init_registers_amd64_XXX.
1183 * linux-x86-low.c (x86_linux_read_description): Call
1184 amd64_linux_read_description.
1185 (x86_get_ipa_tdesc_idx): Call amd64_get_ipa_tdesc_idx.
1186 (initialize_low_arch): Don't call init_registers_x32_XXX and
1187 init_registers_amd64_XXX.
1188 * linux-x86-tdesc-selftest.c: Declare init_registers_amd64_XXX
1189 and tdesc_amd64_XXX.
1190 [__x86_64__] (amd64_tdesc_test): New function.
1191 (initialize_low_tdesc) [__x86_64__]: Call init_registers_x32_XXX
1192 and init_registers_amd64_XXX.
1193 * linux-x86-tdesc.c: Include arch/amd64.h.
1194 (xcr0_to_tdesc_idx): New function.
1195 (i386_linux_read_description): New function.
1196 (amd64_get_ipa_tdesc_idx): New function.
1197 * linux-x86-tdesc.h (amd64_get_ipa_tdesc_idx): Declare.
1198 (amd64_get_ipa_tdesc): Declare.
1199
1200 2017-09-05 Yao Qi <yao.qi@linaro.org>
1201
1202 * configure.srv (srv_i386_linux_xmlfiles): Remove
1203 i386/i386-XXX-linux.xml from it.
1204
1205 2017-09-05 Yao Qi <yao.qi@linaro.org>
1206
1207 * configure.srv: Set srv_i386_linux_regobj empty if $development
1208 is false.
1209 * linux-i386-ipa.c (initialize_low_tracepoint): Don't call
1210 initialize_low_tdesc.
1211 * linux-x86-low.c (initialize_low_arch): Wrap initialize_low_tdesc
1212 with #if initialize_low_tdesc.
1213 * linux-x86-tdesc-selftest.c: New file.
1214 * linux-x86-tdesc.c: Move code to linux-x86-tdesc-selftest.c.
1215
1216 2017-09-05 Yao Qi <yao.qi@linaro.org>
1217
1218 * Makefile.in (arch-i386.o): New rule.
1219 * configure.srv (i[34567]86-*-linux*): Add arch-i386.o.
1220 (x86_64-*-linux*): Likewise.
1221 * linux-x86-tdesc.c: Don't include ../features/i386/32bit-XXX.c,
1222 include arch/i386.h.
1223 (i386_linux_read_description): Remove code and call
1224 i386_create_target_description.
1225 * tdesc.c (allocate_target_description): New function.
1226 * tdesc.h (set_tdesc_architecture): Remove declaration.
1227 (set_tdesc_osabi): Likewise.
1228
1229 2017-09-05 Yao Qi <yao.qi@linaro.org>
1230
1231 * linux-x86-tdesc.c: Don't include <inttypes.h>.
1232 (i386_linux_read_description) [!IN_PROCESS_AGENT]: Call
1233 set_tdesc_architecture and set_tdesc_osabi. Remove code setting
1234 .xmltarget.
1235 * server.c (get_features_xml): Call tdesc_get_features_xml.
1236 * tdesc.c (set_tdesc_architecture): New function.
1237 (set_tdesc_osabi): New function.
1238 (tdesc_get_features_xml): New function.
1239 (tdesc_create_feature): Add an argument.
1240 * tdesc.h (struct target_desc) <features>: New field.
1241 <arch, osabi>: New field.
1242 (~target_desc): xfree features, arch, and osabi.
1243 (target_desc::oerator==): Don't compare .xmltarget.
1244 [!IN_PROCESS_AGENT] (set_tdesc_architecture): Declare.
1245 (set_tdesc_osabi): Likewise.
1246 (tdesc_get_features_xml): Likewise.
1247
1248 2017-09-05 Yao Qi <yao.qi@linaro.org>
1249
1250 * linux-x86-tdesc.c: Include selftest.h.
1251 (i386_tdesc_test): New function.
1252 (initialize_low_tdesc): Call selftests::register_test.
1253 * tdesc.h: Include regdef.h.
1254 (target_desc): Override operator == and !=.
1255
1256 2017-09-05 Yao Qi <yao.qi@linaro.org>
1257
1258 * configure.srv (srv_tgtobj): Append linux-x86-tdesc.o.
1259 (ipa_obj): Likewise.
1260 * linux-i386-ipa.c: Include common/x86-xstate.h
1261 (get_ipa_tdesc): Call i386_linux_read_description.
1262 (initialize_low_tracepoint): Don't call init_registers_XXX
1263 functions, call initialize_low_tdesc instead.
1264 * linux-x86-low.c (x86_linux_read_description): Call
1265 i386_linux_read_description.
1266 (initialize_low_arch): Don't call init_registers_i386_XXX
1267 functions, call initialize_low_tdesc.
1268 * linux-x86-tdesc.c: New file.
1269 * linux-x86-tdesc.h (x86_linux_tdesc): New X86_TDESC_LAST.
1270 (i386_get_ipa_tdesc_idx): Declare.
1271 (i386_get_ipa_tdesc): Declare.
1272 (initialize_low_tdesc): Declare.
1273
1274 2017-09-05 Yao Qi <yao.qi@linaro.org>
1275
1276 * linux-x86-low.c (x86_get_ipa_tdesc_idx): Use X86_TDESC_MMX
1277 instead of 0.
1278
1279 2017-09-05 Yao Qi <yao.qi@linaro.org>
1280
1281 * Makefile.in (IPA_OBJS): Add vec-ipa.o
1282 * regcache.c (get_thread_regcache): Use VEC_length.
1283 (init_register_cache): Likewise.
1284 (regcache_cpy): Likewise.
1285 (registers_to_string): Iterate reg_defs via VEC_iterate.
1286 (find_regno): Likewise.
1287 (find_register_by_number): Use VEC_index.
1288 (register_size): Call find_register_by_number.
1289 (register_data): Call find_register_by_number.
1290 (supply_regblock): Use VEC_length.
1291 (regcache_raw_read_unsigned): Likewise.
1292 * tdesc.c (init_target_desc): Iterate reg_defs via
1293 VEC_iterate.
1294 (default_description): Update initializer.
1295 (copy_target_description): Don't update field num_registers.
1296 * tdesc.h (struct target_desc) <reg_defs>: Change it to VEC.
1297 <num_registers>: Remove.
1298
1299 2017-09-04 Simon Marchi <simon.marchi@ericsson.com>
1300
1301 * Makefile.in (.SECONDARY): Define target.
1302
1303 2017-09-03 Simon Marchi <simon.marchi@ericsson.com>
1304
1305 * linux-low.c (linux_wait_1): Adjust.
1306 * server.c (queue_stop_reply_callback): Adjust.
1307
1308 2017-08-31 Sergio Durigan Junior <sergiodj@redhat.com>
1309
1310 * server.c (handle_general_set): Handle QEnvironmentHexEncoded,
1311 QEnvironmentUnset and QEnvironmentReset packets.
1312 (handle_query): Inform remote that QEnvironmentHexEncoded,
1313 QEnvironmentUnset and QEnvironmentReset are supported.
1314
1315 2017-08-25 Simon Marchi <simon.marchi@ericsson.com>
1316
1317 * inferiors.h (inferior_target_data): Rename to ...
1318 (thread_target_data): ... this.
1319 (inferior_regcache_data): Rename to ...
1320 (thread_regcache_data): ... this.
1321 (set_inferior_regcache_data): Rename to ...
1322 (set_thread_regcache_data): ... this.
1323 * inferiors.c (inferior_target_data): Rename to ...
1324 (thread_target_data): ... this.
1325 (inferior_regcache_data): Rename to ...
1326 (thread_regcache_data): ... this.
1327 (set_inferior_regcache_data): Rename to ...
1328 (set_thread_regcache_data): ... this.
1329 (free_one_thread): Update.
1330 * linux-low.h (get_thread_lwp): Update.
1331 * regcache.c (get_thread_regcache): Update.
1332 (regcache_invalidate_thread): Update.
1333 (free_register_cache_thread): Update.
1334 * win32-i386-low.c (update_debug_registers_callback): Update.
1335 (win32_get_current_dr): Update.
1336 * win32-low.c (thread_rec): Update.
1337 (delete_thread_info): Update.
1338 (continue_one_thread): Update.
1339 (suspend_one_thread): Update.
1340
1341 2017-08-24 Simon Marchi <simon.marchi@ericsson.com>
1342
1343 * inferiors.c (set_inferior_target_data): Remove.
1344 * inferiors.h (set_inferior_target_data): Remove.
1345
1346 2017-08-18 Yao Qi <yao.qi@linaro.org>
1347
1348 * Makefile.in (OBS): Add selftest.o.
1349 * configure.ac: AC_DEFINE GDB_SELF_TEST if $development.
1350 * configure, config.in: Re-generated.
1351 * server.c: Include common/sefltest.h.
1352 (captured_main): Handle option --selftest.
1353
1354 2017-08-09 Yao Qi <yao.qi@linaro.org>
1355
1356 * configure.srv (srv_i386_regobj): Remove i386-avx.o,
1357 i386-avx-avx512.o, i386-avx-mpx-avx512-pku.o, i386-mpx.o,
1358 i386-avx-mpx.o and i386-mmx.o.
1359 (srv_amd64_regobj): Remove amd64-avx.o, amd64-avx-avx512.o,
1360 amd64-avx-mpx-avx512-pku.o, amd64-mpx.o and amd64-avx-mpx.o.
1361 (srv_i386_xmlfiles): Remove i386/i386-avx.xml,
1362 i386/i386-avx-avx512.xml, i386/i386-avx-mpx-avx512-pku.xml,
1363 i386/i386-mpx.xml, i386/i386-avx-mpx.xml and i386/i386-mmx.xml.
1364 (srv_amd64_xmlfile):i386/amd64-avx.xml, i386/amd64-avx-avx512.xml,
1365 i386/amd64-avx-mpx-avx512-pku.xml, i386/amd64-mpx.xml,
1366 i386/amd64-avx-mpx.xml.
1367
1368 2017-08-09 Yao Qi <yao.qi@linaro.org>
1369
1370 * configure.srv (srv_amd64_regobj): Remove x32.o, x32-avx.o
1371 and x32-avx-avx512.o.
1372 (srv_amd64_xmlfiles): Remove i386/x32.xml, i386/x32-avx.xml
1373 i386/x32-avx-avx512.xml.
1374
1375 2017-07-26 Simon Marchi <simon.marchi@ericsson.com>
1376
1377 * tracepoint.h (enum class fast_tpoint_collect_result): New
1378 enumeration.
1379 (fast_tracepoint_collecting): Change return type to
1380 fast_tpoint_collect_result.
1381 * tracepoint.c (fast_tracepoint_collecting): Likewise.
1382 * linux-low.h: Include tracepoint.h.
1383 (struct lwp_info) <collecting_fast_tracepoint>: Change type to
1384 fast_tpoint_collect_result.
1385 * linux-low.c (handle_tracepoints): Adjust.
1386 (linux_fast_tracepoint_collecting): Change return type to
1387 fast_tpoint_collect_result.
1388 (maybe_move_out_of_jump_pad, linux_wait_for_event_filtered,
1389 linux_wait_1, stuck_in_jump_pad_callback,
1390 lwp_signal_can_be_delivered, linux_resume_one_lwp_throw,
1391 proceed_one_lwp): Adjust to type change.
1392
1393 2017-07-10 Yao Qi <yao.qi@linaro.org>
1394
1395 * linux-x86-low.c (x86_linux_read_description): Re-indent the code.
1396
1397 2017-06-29 Yao Qi <yao.qi@linaro.org>
1398
1399 * tdesc.h (struct target_desc) [IN_PROCESS_AGENT] <expedite_regs>:
1400 Remove.
1401 [IN_PROCESS_AGENT] <xmltarget>: Likewise.
1402
1403 2017-06-20 Simon Marchi <simon.marchi@ericsson.com>
1404
1405 * Makefile.in (IPA_OBJS): Sort and format one item per line.
1406
1407 2017-06-20 Sergio Durigan Junior <sergiodj@redhat.com>
1408
1409 * linux-low.c (linux_create_inferior): Adjust code to access the
1410 environment information via 'gdb_environ' class.
1411 * lynx-low.c (lynx_create_inferior): Likewise.
1412 * server.c (our_environ): Make it an instance of 'gdb_environ'.
1413 (get_environ): Return a pointer to 'our_environ'.
1414 (captured_main): Initialize 'our_environ'.
1415 * server.h (get_environ): Adjust prototype.
1416 * spu-low.c (spu_create_inferior): Adjust code to access the
1417 environment information via 'gdb_environ' class.
1418
1419 2017-06-17 Simon Marchi <simon.marchi@ericsson.com>
1420
1421 * linux-low.c (linux_read_memory, linux_write_memory): Remove
1422 usage of "register" keyword.
1423
1424 2017-06-17 Simon Marchi <simon.marchi@ericsson.com>
1425
1426 * configure: Re-generate.
1427
1428 2017-06-17 Simon Marchi <simon.marchi@ericsson.com>
1429
1430 * configure: Re-generate.
1431
1432 2017-06-17 Simon Marchi <simon.marchi@ericsson.com>
1433
1434 * Makefile.in (COMPILE.pre): Add "-x c++".
1435
1436 2017-06-09 Sergio Durigan Junior <sergiodj@redhat.com>
1437
1438 * fork-child.c: Conditionally include <signal.h>.
1439
1440 2017-06-07 Sergio Durigan Junior <sergiodj@redhat.com>
1441
1442 * server.c (handle_general_set): Handle new packet
1443 "QStartupWithShell".
1444 (handle_query): Add "QStartupWithShell" to the list of supported
1445 packets.
1446 (gdbserver_usage): Add help text explaining the
1447 new "--startup-with-shell" and "--no-startup-with-shell" CLI
1448 options.
1449 (captured_main): Recognize and act upon the presence of the new
1450 CLI options.
1451
1452 2017-06-07 Sergio Durigan Junior <sergiodj@redhat.com>
1453 Pedro Alves <palves@redhat.com>
1454
1455 * Makefile.in (SFILES): Add "nat/fork-inferior.o".
1456 * configure: Regenerate.
1457 * configure.srv (srv_linux_obj): Add "fork-child.o" and
1458 "fork-inferior.o".
1459 (i[34567]86-*-lynxos*): Likewise.
1460 (spu*-*-*): Likewise.
1461 * fork-child.c: New file.
1462 * linux-low.c: Include "common-inferior.h", "nat/fork-inferior.h"
1463 and "environ.h".
1464 (linux_ptrace_fun): New function.
1465 (linux_create_inferior): Adjust function prototype to reflect
1466 change on "target.h". Adjust function code to use
1467 "fork_inferior".
1468 (linux_request_interrupt): Delete "signal_pid".
1469 * lynx-low.c: Include "common-inferior.h" and "nat/fork-inferior.h".
1470 (lynx_ptrace_fun): New function.
1471 (lynx_create_inferior): Adjust function prototype to reflect
1472 change on "target.h". Adjust function code to use
1473 "fork_inferior".
1474 * nto-low.c (nto_create_inferior): Adjust function prototype and
1475 code to reflect change on "target.h". Update comments.
1476 * server.c: Include "common-inferior.h", "nat/fork-inferior.h",
1477 "common-terminal.h" and "environ.h".
1478 (terminal_fd): Moved to fork-child.c.
1479 (old_foreground_pgrp): Likewise.
1480 (restore_old_foreground_pgrp): Likewise.
1481 (last_status): Make it global.
1482 (last_ptid): Likewise.
1483 (our_environ): New variable.
1484 (startup_with_shell): Likewise.
1485 (program_name): Likewise.
1486 (program_argv): Rename to...
1487 (program_args): ...this.
1488 (wrapper_argv): New variable.
1489 (start_inferior): Delete function.
1490 (get_exec_wrapper): New function.
1491 (get_exec_file): Likewise.
1492 (get_environ): Likewise.
1493 (prefork_hook): Likewise.
1494 (post_fork_inferior): Likewise.
1495 (postfork_hook): Likewise.
1496 (postfork_child_hook): Likewise.
1497 (handle_v_run): Update code to deal with arguments coming from the
1498 remote host. Update calls from "start_inferior" to
1499 "create_inferior".
1500 (captured_main): Likewise. Initialize environment variable. Call
1501 "have_job_control".
1502 * server.h (post_fork_inferior): New prototype.
1503 (get_environ): Likewise.
1504 (last_status): Declare.
1505 (last_ptid): Likewise.
1506 (signal_pid): Likewise.
1507 * spu-low.c: Include "common-inferior.h" and "nat/fork-inferior.h".
1508 (spu_ptrace_fun): New function.
1509 (spu_create_inferior): Adjust function prototype to reflect change
1510 on "target.h". Adjust function code to use "fork_inferior".
1511 * target.c (target_terminal_init): New function.
1512 (target_terminal_inferior): Likewise.
1513 (target_terminal_ours): Likewise.
1514 * target.h: Include <vector>.
1515 (struct target_ops) <create_inferior>: Update prototype.
1516 (create_inferior): Update macro.
1517 * utils.c (gdb_flush_out_err): New function.
1518 * win32-low.c (win32_create_inferior): Adjust function prototype
1519 and code to reflect change on "target.h".
1520
1521 2017-06-07 Sergio Durigan Junior <sergiodj@redhat.com>
1522
1523 * inferiors.c (switch_to_thread): New function.
1524
1525 2017-06-07 Sergio Durigan Junior <sergiodj@redhat.com>
1526
1527 * Makefile.in (SFILE): Add "common/job-control.c".
1528 (OBS): Add "job-control.o".
1529
1530 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com>
1531
1532 * Makefile: Remove "@host_makefile_frag@".
1533
1534 2017-05-05 Pedro Alves <palves@redhat.com>
1535
1536 * configure: Regenerate.
1537
1538 2017-05-03 Sergio Durigan Junior <sergiodj@redhat.com>
1539
1540 * configure: Regenerate.
1541
1542 2017-05-02 Simon Marchi <simon.marchi@polymtl.ca>
1543
1544 * linux-arm-low.c (arm_gdbserver_get_next_pcs): Adjust to
1545 software_single_step change of return type to
1546 std::vector<CORE_ADDR>.
1547 * linux-low.c (install_software_single_step_breakpoints):
1548 Likewise.
1549 * linux-low.h (install_software_single_step_breakpoints):
1550 Likewise.
1551
1552 2017-04-12 Sergio Durigan Junior <sergiodj@redhat.com>
1553
1554 * remote-utils.c: Include "gdb_termios.h" instead of
1555 "terminal.h".
1556 * terminal.h: Delete file.
1557
1558 2017-04-12 Sergio Durigan Junior <sergiodj@redhat.com>
1559
1560 * server.c: Include <vector>.
1561 <program_argv, wrapper_argv>: Convert to std::vector.
1562 (start_inferior): Rewrite function to use C++.
1563 (handle_v_run): Likewise. Update code that calculates the argv
1564 based on the vRun packet; use C++.
1565 (captured_main): Likewise.
1566
1567 2017-04-06 Simon Marchi <simon.marchi@ericsson.com>
1568
1569 * server.c (handle_v_cont): Initialize thread_resume::thread
1570 with null_ptid.
1571
1572 2017-04-05 Pedro Alves <palves@redhat.com>
1573
1574 * configure: Regenerate.
1575
1576 2017-04-05 Pedro Alves <palves@redhat.com>
1577
1578 * gdbreplay.c (sync_error): Constify.
1579 * linux-x86-low.c (push_opcode): Constify.
1580
1581 2017-04-05 Pedro Alves <palves@redhat.com>
1582
1583 * win32-low.c (get_child_debug_event)
1584 <CREATE_PROCESS_DEBUG_EVENT>: Don't report TARGET_WAITKIND_EXECD.
1585 Report TARGET_WAITKIND_SPURIOUS instead.
1586
1587 2017-04-05 Pedro Alves <palves@redhat.com>
1588
1589 * remote-utils.c (remote_prepare, remote_open): Constify.
1590 * remote-utils.h (remote_prepare, remote_open): Constify.
1591 * server.c (captured_main): Constify 'port' handling.
1592
1593 2017-04-04 Simon Marchi <simon.marchi@ericsson.com>
1594
1595 * Makefile.in (clean): Clear .deps.
1596
1597 2017-03-31 Simon Marchi <simon.marchi@polymtl.ca>
1598
1599 * .gitignore: Remove generated files, replace with wildcard.
1600 * (clean): Replace removal of generated files with wildcard.
1601 (version.c): Replace with...
1602 (version-generated.c): ...this.
1603 (xml-builtin.c): Replace with...
1604 (xml-builtin-generated.c): ...this.
1605 (%-ipa.o: %-generated.c, %.o: %-generated.c): New rules.
1606 (%.c: *regformats*): Replace with...
1607 (%-generated.c: *regformats*): ...this.
1608
1609 2017-03-27 Max Filippov <jcmvbkbc@gmail.com>
1610
1611 * linux-xtensa-low.c (regnum::R_THREADPTR): New enum member.
1612 (xtensa_fill_gregset): Call collect_register_by_name for
1613 threadptr register.
1614 (xtensa_store_gregset): Call supply_register_by_name for
1615 threadptr register.
1616
1617 2017-03-27 Max Filippov <jcmvbkbc@gmail.com>
1618
1619 * linux-xtensa-low.c (xtensa_fill_gregset): Call collect_register
1620 for all registers in a0_regnum..a0_regnum + C0_NREGS range.
1621 (xtensa_store_gregset): Call supply_register for all registers in
1622 a0_regnum..a0_regnum + C0_NREGS range.
1623
1624 2017-03-13 Simon Marchi <simon.marchi@polymtl.ca>
1625
1626 * Makefile.in (%-ipa.o: %-ipa.c): New rule.
1627 (ax-ipa.o: ax.c): Remove.
1628 (linux-i386-ipa.o: linux-i386-ipa.c): Remove.
1629 (linux-amd64-ipa.o: linux-amd64-ipa.c): Remove.
1630 (linux-aarch64-ipa.o: linux-aarch64-ipa.c): Remove.
1631 (linux-s390-ipa.o: linux-s390-ipa.c): Remove.
1632 (linux-ppc-ipa.o: linux-ppc-ipa.c): Remove.
1633
1634 2017-03-13 Simon Marchi <simon.marchi@polymtl.ca>
1635
1636 * Makefile.in (%-ipa.o: ../common/%.c): New rule.
1637 (print-utils-ipa.o: ../common/print-utils.c): Remove.
1638 (rsp-low-ipa.o: ../common/rsp-low.c): Remove.
1639 (errors-ipa.o: ../common/errors.c): Remove.
1640 (format-ipa.o: ../common/format.c): Remove.
1641 (common-utils-ipa.o: ../common/common-utils.c): Remove.
1642
1643 2017-03-13 Simon Marchi <simon.marchi@polymtl.ca>
1644
1645 * Makefile.in (%-ipa.o: %.c): New rule.
1646 (tracepoint-ipa.o: tracepoint.c): Remove.
1647 (utils-ipa.o: utils.c): Remove.
1648 (remote-utils-ipa.o: remote-utils.c): Remove.
1649 (regcache-ipa.o: regcache.c): Remove.
1650 (i386-linux-ipa.o: i386-linux.c): Remove.
1651 (i386-mmx-linux-ipa.o: i386-mmx-linux.c): Remove.
1652 (i386-avx-linux-ipa.o: i386-avx-linux.c): Remove.
1653 (i386-mpx-linux-ipa.o: i386-mpx-linux.c): Remove.
1654 (i386-avx-mpx-linux-ipa.o: i386-avx-mpx-linux.c): Remove.
1655 (i386-avx-avx512-linux-ipa.o: i386-avx-avx512-linux.c): Remove.
1656 (i386-avx-mpx-avx512-pku-linux-ipa.o: i386-avx-mpx-avx512-pku-linux.c): Remove.
1657 (amd64-linux-ipa.o: amd64-linux.c): Remove.
1658 (amd64-avx-linux-ipa.o: amd64-avx-linux.c): Remove.
1659 (amd64-mpx-linux-ipa.o: amd64-mpx-linux.c): Remove.
1660 (amd64-avx-mpx-linux-ipa.o: amd64-avx-mpx-linux.c): Remove.
1661 (amd64-avx-avx512-linux-ipa.o: amd64-avx-avx512-linux.c): Remove.
1662 (amd64-avx-mpx-avx512-pku-linux-ipa.o: amd64-avx-mpx-avx512-pku-linux.c): Remove.
1663 (aarch64-ipa.o: aarch64.c): Remove.
1664 (s390-linux32-ipa.o: s390-linux32.c): Remove.
1665 (s390-linux32v1-ipa.o: s390-linux32v1.c): Remove.
1666 (s390-linux32v2-ipa.o: s390-linux32v2.c): Remove.
1667 (s390-linux64-ipa.o: s390-linux64.c): Remove.
1668 (s390-linux64v1-ipa.o: s390-linux64v1.c): Remove.
1669 (s390-linux64v2-ipa.o: s390-linux64v2.c): Remove.
1670 (s390-te-linux64-ipa.o: s390-te-linux64.c): Remove.
1671 (s390-vx-linux64-ipa.o: s390-vx-linux64.c): Remove.
1672 (s390-tevx-linux64-ipa.o: s390-tevx-linux64.c): Remove.
1673 (s390x-linux64-ipa.o: s390x-linux64.c): Remove.
1674 (s390x-linux64v1-ipa.o: s390x-linux64v1.c): Remove.
1675 (s390x-linux64v2-ipa.o: s390x-linux64v2.c): Remove.
1676 (s390x-te-linux64-ipa.o: s390x-te-linux64.c): Remove.
1677 (s390x-vx-linux64-ipa.o: s390x-vx-linux64.c): Remove.
1678 (s390x-tevx-linux64-ipa.o: s390x-tevx-linux64.c): Remove.
1679 (powerpc-32l-ipa.o: powerpc-32l.c): Remove.
1680 (powerpc-altivec32l-ipa.o: powerpc-altivec32l.c): Remove.
1681 (powerpc-cell32l-ipa.o: powerpc-cell32l.c): Remove.
1682 (powerpc-vsx32l-ipa.o: powerpc-vsx32l.c): Remove.
1683 (powerpc-isa205-32l-ipa.o: powerpc-isa205-32l.c): Remove.
1684 (powerpc-isa205-altivec32l-ipa.o: powerpc-isa205-altivec32l.c): Remove.
1685 (powerpc-isa205-vsx32l-ipa.o: powerpc-isa205-vsx32l.c): Remove.
1686 (powerpc-e500l-ipa.o: powerpc-e500l.c): Remove.
1687 (powerpc-64l-ipa.o: powerpc-64l.c): Remove.
1688 (powerpc-altivec64l-ipa.o: powerpc-altivec64l.c): Remove.
1689 (powerpc-cell64l-ipa.o: powerpc-cell64l.c): Remove.
1690 (powerpc-vsx64l-ipa.o: powerpc-vsx64l.c): Remove.
1691 (powerpc-isa205-64l-ipa.o: powerpc-isa205-64l.c): Remove.
1692 (powerpc-isa205-altivec64l-ipa.o: powerpc-isa205-altivec64l.c): Remove.
1693 (powerpc-isa205-vsx64l-ipa.o: powerpc-isa205-vsx64l.c): Remove.
1694 (tdesc-ipa.o: tdesc.c): Remove.
1695 (x32-linux-ipa.o: x32-linux.c): Remove.
1696 (x32-avx-linux-ipa.o: x32-avx-linux.c): Remove.
1697 (x32-avx512-linux-ipa.o: x32-avx512-linux.c): Remove.
1698
1699 2017-03-13 Simon Marchi <simon.marchi@polymtl.ca>
1700
1701 * Makefile.in (%.o: ../arch/%.c): New rule.
1702 (arm.o: ../arch/arm.c): Remove.
1703 (arm-linux.o: ../arch/arm-linux.c): Remove.
1704 (arm-get-next-pcs.o: ../arch/arm-get-next-pcs.c): Remove.
1705 (aarch64-insn.o: ../arch/aarch64-insn.c): Remove.
1706
1707 2017-03-13 Simon Marchi <simon.marchi@polymtl.ca>
1708
1709 * Makefile.in (%.o: ../nat/%.c): New rule.
1710 (x86-dregs.o: ../nat/x86-dregs.c): Remove.
1711 (amd64-linux-siginfo.o: ../nat/amd64-linux-siginfo.c): Remove.
1712 (linux-btrace.o: ../nat/linux-btrace.c): Remove.
1713 (linux-osdata.o: ../nat/linux-osdata.c): Remove.
1714 (linux-procfs.o: ../nat/linux-procfs.c): Remove.
1715 (linux-ptrace.o: ../nat/linux-ptrace.c): Remove.
1716 (linux-waitpid.o: ../nat/linux-waitpid.c): Remove.
1717 (mips-linux-watch.o: ../nat/mips-linux-watch.c): Remove.
1718 (ppc-linux.o: ../nat/ppc-linux.c): Remove.
1719 (linux-personality.o: ../nat/linux-personality.c): Remove.
1720 (aarch64-linux-hw-point.o: ../nat/aarch64-linux-hw-point.c): Remove.
1721 (aarch64-linux.o: ../nat/aarch64-linux.c): Remove.
1722 (x86-linux.o: ../nat/x86-linux.c): Remove.
1723 (x86-linux-dregs.o: ../nat/x86-linux-dregs.c): Remove.
1724 (linux-namespaces.o: ../nat/linux-namespaces.c): Remove.
1725
1726 2017-03-13 Simon Marchi <simon.marchi@polymtl.ca>
1727
1728 * Makefile.in (%.o: ../common/%.c): New rule.
1729 (signals.o: ../common/signals.c): Remove.
1730 (print-utils.o: ../common/print-utils.c): Remove.
1731 (rsp-low.o: ../common/rsp-low.c): Remove.
1732 (common-utils.o: ../common/common-utils.c): Remove.
1733 (posix-strerror.o: ../common/posix-strerror.c): Remove.
1734 (mingw-strerror.o: ../common/mingw-strerror.c): Remove.
1735 (vec.o: ../common/vec.c): Remove.
1736 (gdb_vecs.o: ../common/gdb_vecs.c): Remove.
1737 (xml-utils.o: ../common/xml-utils.c): Remove.
1738 (ptid.o: ../common/ptid.c): Remove.
1739 (buffer.o: ../common/buffer.c): Remove.
1740 (format.o: ../common/format.c): Remove.
1741 (filestuff.o: ../common/filestuff.c): Remove.
1742 (agent.o: ../common/agent.c): Remove.
1743 (errors.o: ../common/errors.c): Remove.
1744 (environ.o: ../common/environ.c): Remove.
1745 (common-debug.o: ../common/common-debug.c): Remove.
1746 (cleanups.o: ../common/cleanups.c): Remove.
1747 (common-exceptions.o: ../common/common-exceptions.c): Remove.
1748 (fileio.o: ../common/fileio.c): Remove.
1749 (common-regcache.o: ../common/common-regcache.c): Remove.
1750 (signals-state-save-restore.o: ../common/signals-state-save-restore.c): Remove.
1751 (new-op.o: ../common/new-op.c): Remove.
1752 (btrace-common.o: ../common/btrace-common.c): Remove.
1753
1754 2017-03-13 Simon Marchi <simon.marchi@polymtl.ca>
1755
1756 * Makefile.in (%.o: ../target/%.c): New rule.
1757 (waitstatus.o: ../target/waitstatus.c): Remove.
1758
1759 2017-03-13 Simon Marchi <simon.marchi@polymtl.ca>
1760
1761 * Makefile.in
1762 (%.c: ../regformats/%.dat,
1763 (%.c: ../regformats/arm/%.dat,
1764 (%.c: ../regformats/i386/%.dat,
1765 (%.c: ../regformats/rs6000/%.dat): New rules.
1766 (aarch64.c): Remove.
1767 (reg-arm.c): Remove.
1768 (arm-with-iwmmxt.c): Remove.
1769 (arm-with-vfpv2.c): Remove.
1770 (arm-with-vfpv3.c): Remove.
1771 (arm-with-neon.c): Remove.
1772 (reg-bfin.c): Remove.
1773 (reg-cris.c): Remove.
1774 (reg-crisv32.c): Remove.
1775 (i386.c): Remove.
1776 (i386-linux.c): Remove.
1777 (i386-avx.c): Remove.
1778 (i386-avx-linux.c): Remove.
1779 (i386-avx-avx512.c): Remove.
1780 (i386-avx-avx512-linux.c): Remove.
1781 (i386-mpx.c): Remove.
1782 (i386-mpx-linux.c): Remove.
1783 (i386-avx-mpx-avx512-pku.c): Remove.
1784 (i386-avx-mpx-avx512-pku-linux.c): Remove.
1785 (i386-avx-mpx.c): Remove.
1786 (i386-avx-mpx-linux.c): Remove.
1787 (i386-mmx.c): Remove.
1788 (i386-mmx-linux.c): Remove.
1789 (reg-ia64.c): Remove.
1790 (reg-m32r.c): Remove.
1791 (reg-m68k.c): Remove.
1792 (reg-cf.c): Remove.
1793 (mips-linux.c): Remove.
1794 (mips-dsp-linux.c): Remove.
1795 (mips64-linux.c): Remove.
1796 (mips64-dsp-linux.c): Remove.
1797 (nios2-linux.c): Remove.
1798 (powerpc-32.c): Remove.
1799 (powerpc-32l.c): Remove.
1800 (powerpc-altivec32l.c): Remove.
1801 (powerpc-cell32l.c): Remove.
1802 (powerpc-vsx32l.c): Remove.
1803 (powerpc-isa205-32l.c): Remove.
1804 (powerpc-isa205-altivec32l.c): Remove.
1805 (powerpc-isa205-vsx32l.c): Remove.
1806 (powerpc-e500l.c): Remove.
1807 (powerpc-64l.c): Remove.
1808 (powerpc-altivec64l.c): Remove.
1809 (powerpc-cell64l.c): Remove.
1810 (powerpc-vsx64l.c): Remove.
1811 (powerpc-isa205-64l.c): Remove.
1812 (powerpc-isa205-altivec64l.c): Remove.
1813 (powerpc-isa205-vsx64l.c): Remove.
1814 (s390-linux32.c): Remove.
1815 (s390-linux32v1.c): Remove.
1816 (s390-linux32v2.c): Remove.
1817 (s390-linux64.c): Remove.
1818 (s390-linux64v1.c): Remove.
1819 (s390-linux64v2.c): Remove.
1820 (s390-te-linux64.c): Remove.
1821 (s390-vx-linux64.c): Remove.
1822 (s390-tevx-linux64.c): Remove.
1823 (s390x-linux64.c): Remove.
1824 (s390x-linux64v1.c): Remove.
1825 (s390x-linux64v2.c): Remove.
1826 (s390x-te-linux64.c): Remove.
1827 (s390x-vx-linux64.c): Remove.
1828 (s390x-tevx-linux64.c): Remove.
1829 (tic6x-c64xp-linux.c): Remove.
1830 (tic6x-c64x-linux.c): Remove.
1831 (tic6x-c62x-linux.c): Remove.
1832 (reg-sh.c): Remove.
1833 (reg-sparc64.c): Remove.
1834 (reg-spu.c): Remove.
1835 (amd64.c): Remove.
1836 (amd64-linux.c): Remove.
1837 (amd64-avx.c): Remove.
1838 (amd64-avx-linux.c): Remove.
1839 (amd64-avx-avx512.c): Remove.
1840 (amd64-avx-avx512-linux.c): Remove.
1841 (amd64-mpx.c): Remove.
1842 (amd64-mpx-linux.c): Remove.
1843 (amd64-avx-mpx-avx512-pku.c): Remove.
1844 (amd64-avx-mpx-avx512-pku-linux.c): Remove.
1845 (amd64-avx-mpx.c): Remove.
1846 (amd64-avx-mpx-linux.c): Remove.
1847 (x32.c): Remove.
1848 (x32-linux.c): Remove.
1849 (x32-avx.c): Remove.
1850 (x32-avx-linux.c): Remove.
1851 (x32-avx-avx512.c): Remove.
1852 (x32-avx-avx512-linux.c): Remove.
1853 (reg-xtensa.c): Remove.
1854 (reg-tilegx.c): Remove.
1855 (reg-tilegx32.c): Remove.
1856
1857 2017-03-07 Sergio Durigan Junior <sergiodj@redhat.com>
1858
1859 * Makefile.in (SFILES): Add "common/environ.c".
1860 (OBJS): Add "common/environ.h".
1861
1862 2017-01-27 Walfred Tedeschi <walfred.tedeschi@intel.com>
1863
1864 * configure.ac: Check if the fs_base and gs_base members of
1865 `struct user_regs_struct' exist.
1866 * config.in: Regenerated.
1867 * configure: Likewise.
1868
1869 2017-01-09 Antoine Tremblay <antoine.tremblay@ericsson.com>
1870
1871 * linux-aarch32-low.c (arm_breakpoint_kind_from_pc): Use
1872 target_read_memory.
1873 * linux-arm-low.c (get_next_pcs_read_memory_unsigned_integer): Likewise.
1874 (get_next_pcs_syscall_next_pc): Likewise.
1875
1876 2016-12-23 Luis Machado <lgustavo@codesourcery.com>
1877
1878 * win32-i386-low.c: Fix incorrect reference to a couple source files.
1879 * nto-x86-low.c: Likewise.
1880
1881 2016-11-30 Simon Marchi <simon.marchi@polymtl.ca>
1882
1883 * Makefile.in: Include disable-implicit-rules.mk.
1884
1885 2016-11-23 Pedro Alves <palves@redhat.com>
1886
1887 * debug.c: Include <chrono> instead of "gdb_sys_time.h".
1888 (debug_vprintf): Use std::chrono::steady_clock instead of
1889 gettimeofday. Use '.' instead of ':'.
1890 * tracepoint.c: Include <chrono> instead of "gdb_sys_time.h".
1891 (get_timestamp): Use std::chrono::steady_clock instead of
1892 gettimeofday.
1893
1894 2016-11-22 Simon Marchi <simon.marchi@polymtl.ca>
1895
1896 * Makefile.in: Fix whitespace formatting.
1897
1898 2016-11-22 Simon Marchi <simon.marchi@polymtl.ca>
1899
1900 * Makefile.in (SFILES, OBS): Flatten list and order
1901 alphabetically.
1902
1903 2016-11-23 Pedro Alves <palves@redhat.com>
1904
1905 * event-loop.c (handle_file_event): Use warning.
1906 * linux-low.c (linux_resume_one_lwp_throw): Use warning.
1907 * mem-break.c (add_breakpoint_condition, add_breakpoint_commands):
1908 Use warning.
1909
1910 2016-11-23 Pedro Alves <palves@redhat.com>
1911
1912 * linux-low.c (check_zombie_leaders): Use debug_printf for debug
1913 output.
1914 * notif.c (handle_notif_ack, notif_event_enque): Likewise.
1915 * remote-utils.c (putpkt_binary_1, readchar, getpkt): Use
1916 debug_printf and debug_flush for debug output.
1917 * server.c (handle_general_set): Likewise.
1918 * thread-db.c (try_thread_db_load): Use debug_printf for debug
1919 output.
1920
1921 2016-11-17 Simon Marchi <simon.marchi@polymtl.ca>
1922
1923 * Makefile.in (.c.o): Replace rule with ...
1924 (%.o: %.c): ... this one.
1925
1926 2016-11-17 Simon Marchi <simon.marchi@polymtl.ca>
1927
1928 * Makefile.in: Remove @GMAKE_TRUE@ prefixes and removes lines
1929 prefixed with @GMAKE_FALSE@. Update comment related to non-GNU
1930 make.
1931 * configure.ac: Remove checks for the make program.
1932 * configure: Re-generate.
1933
1934 2016-10-28 Pedro Alves <palves@redhat.com>
1935
1936 * Makefile.in (CXX_DIALECT): Get from configure.
1937 (COMPILE.pre, CC_LD): Append $(CXX_DIALECT).
1938 * acinclude.m4: Include ../ax_cxx_compile_stdcxx.m4.
1939 * configure.ac: Call AX_CXX_COMPILE_STDCXX.
1940 * config.in: Regenerate.
1941 * configure: Regenerate.
1942
1943 2016-10-27 Yao Qi <yao.qi@linaro.org>
1944
1945 * linux-low.c (linux_supports_range_stepping): Return true if
1946 can_software_single_step return true.
1947
1948 2016-10-27 Yao Qi <yao.qi@linaro.org>
1949
1950 * inferiors.c (find_inferior_in_random): New function.
1951 * inferiors.h (find_inferior_in_random): Declare.
1952 * linux-low.c (linux_wait_for_event_filtered): Call
1953 find_inferior_in_random instead of find_inferior.
1954
1955 2016-10-27 Yao Qi <yao.qi@linaro.org>
1956
1957 * linux-low.c (linux_wait_1): If single-step breakpoints are
1958 inserted, remove them.
1959
1960 2016-10-26 Pedro Alves <palves@redhat.com>
1961
1962 * linux-low.c (handle_extended_wait): Link parent/child fork
1963 threads.
1964 (linux_wait_1): Unlink them.
1965 (linux_set_resume_request): Ignore resume requests for
1966 already-resumed and unhandled fork child threads.
1967 * linux-low.h (struct lwp_info) <fork_relative>: New field.
1968 * server.c (in_queued_stop_replies_ptid, in_queued_stop_replies):
1969 New functions.
1970 (handle_v_requests) <vCont>: Don't call require_running.
1971 * server.h (in_queued_stop_replies): New declaration.
1972
1973 2016-10-24 Yao Qi <yao.qi@linaro.org>
1974
1975 PR server/20733
1976 * linux-aarch64-low.c (append_insns): Cast the return value to
1977 'uint32_t *'.
1978
1979 2016-10-10 Yao Qi <yao.qi@linaro.org>
1980
1981 * linux-aarch32-low.c (enum arm_breakpoint_kinds): Remove.
1982
1983 2016-10-06 Sergio Durigan Junior <sergiodj@redhat.com>
1984
1985 * target.c (target_supports_multi_process): New function, moved
1986 from...
1987 * target.h (target_supports_multi_process): ... here. Remove
1988 macro.
1989
1990 2016-10-05 Tom Tromey <tom@tromey.com>
1991
1992 PR remote/20655:
1993 * tracepoint.c (handle_tracepoint_bkpts): Check
1994 ipa_error_tracepoint, not ipa_stopping_tracepoint.
1995
1996 2016-10-05 Yao Qi <yao.qi@linaro.org>
1997
1998 * configure.srv: Update the path of arm-*.xml files.
1999
2000 2016-10-05 Terry Guo <terry.guo@arm.com>
2001 Yao Qi <yao.qi@linaro.org>
2002
2003 * Makefile.in: Adjust the path of rules.
2004 * configure.srv: Update the path of xml files.
2005 * regformats/arm-with-iwmmxt.dat: Regenerated.
2006 * regformats/arm-with-neon.dat: Likewise.
2007 * regformats/arm-with-vfpv2.dat: Likewise.
2008 * regformats/arm-with-vfpv3.dat Likewise.
2009
2010 2016-09-30 Yao Qi <yao.qi@linaro.org>
2011
2012 PR gdbserver/20627
2013 * target.c (target_stop_and_wait): Don't call
2014 target_continue_no_signal, use resume_stop instead.
2015
2016 2016-09-26 Yao Qi <yao.qi@linaro.org>
2017
2018 * linux-low.c (linux_wait_1): Call debug_exit.
2019
2020 2016-09-23 Pedro Alves <palves@redhat.com>
2021
2022 * Makefile.in (SFILES): Add common/new-op.c.
2023 (OBS): Add common/new-op.o.
2024 (new-op.o): New rule.
2025
2026 2016-09-21 Simon Marchi <simon.marchi@ericsson.com>
2027
2028 * .gitinore: Ignore more files.
2029
2030 2016-09-21 Yao Qi <yao.qi@linaro.org>
2031
2032 * linux-aarch32-low.c (arm_fill_gregset): Keep bits 20 to
2033 23.
2034
2035 2016-09-19 Sergio Durigan Junior <sergiodj@redhat.com>
2036
2037 * server.c (start_inferior): Call target_mourn_inferior instead of
2038 mourn_inferior; pass ptid_t argument to it.
2039 (resume): Likewise.
2040 (handle_target_event): Likewise.
2041 * target.c (target_mourn_inferior): New function.
2042 * target.h (mourn_inferior): Delete macro.
2043
2044 2016-09-16 Andreas Arnez <arnez@linux.vnet.ibm.com>
2045
2046 * linux-low.c (lwp_is_stepping): New function.
2047
2048 2016-09-06 Carl Love <cel@us.ibm.com>
2049
2050 * server.c (start_inferior): Fixed comment, requested comment change
2051 didn't get updated correctly. Removed reference to ptrace () call as
2052 it is only true on Linux systems.
2053
2054 2016-09-06 Carl Love <cel@us.ibm.com>
2055
2056 * server.c (start_inferior): Do not call
2057 function target_post_create_inferior () if the
2058 inferior process has already exited.
2059
2060 2016-09-05 Pedro Alves <palves@redhat.com>
2061
2062 * Makefile.in (COMPILER, COMPILER_CFLAGS): Remove.
2063 (COMPILE.pre, CC_LD): Use CXX directly.
2064 (INTERNAL_CFLAGS_BASE): Use CXXFLAGS directly.
2065 * acinclude.m4: Don't include build-with-cxx.m4.
2066 * configure.ac: Remove GDB_AC_BUILD_WITH_CXX call.
2067 * configure: Regenerate.
2068
2069 2016-09-02 Akash Trehan <akash.trehan123@gmail.com>
2070
2071 PR gdb/19495
2072 * remote-utils.c (relocate_instruction): Remove redundant strcpy()
2073 call writing data to own_buf.
2074
2075 2016-09-01 Sergio Durigan Junior <sergiodj@redhat.com>
2076
2077 * target.c (mywait): Call target_wait instead of
2078 the_target->wait.
2079 (target_wait): New function.
2080
2081 2016-09-01 Sergio Durigan Junior <sergiodj@redhat.com>
2082
2083 * server.c (start_inferior): New variable 'ptid'. Replace calls
2084 to the_target->resume by target_continue{,_no_signal}, depending
2085 on the case.
2086 * target.c (target_stop_and_wait): Call target_continue_no_signal
2087 instead of the_target->resume.
2088 (target_continue): New function.
2089
2090 2016-08-31 Antoine Tremblay <antoine.tremblay@ericsson.com>
2091
2092 * linux-low.c (linux_wait_1): Move event switch after unsuspend_lwps.
2093
2094 2016-08-25 Adhemerval Zanella <adhemerval.zanella@linaro.org>
2095
2096 PR server/20491
2097 * gdb_proc_service.h (ps_get_thread_area): Remove const from struct
2098 ps_prochandle.
2099 * linux-aarch64-low.c (ps_get_thread_area): Likewise.
2100 * linux-arm-low.c (ps_get_thread_area): Likewise.
2101 * linux-crisv32-low.c (ps_get_thread_area): Likewise.
2102 * linux-m68k-low.c (ps_get_thread_area): Likewise.
2103 * linux-mips-low.c (ps_get_thread_area): Likewise.
2104 * linux-nios2-low.c (ps_get_thread_area): Likewise.
2105 * linux-tic6x-low.c (ps_get_thread_area): Likewise.
2106 * linux-x86-low.c (ps_get_thread_area): Likewise.
2107 * linux-xtensa-low.c (ps_get_thread_area): Likewise.
2108
2109 2016-08-19 Pedro Alves <palves@redhat.com>
2110
2111 * linux-x86-low.c (amd64_emit_call): Emit missing call opcode.
2112
2113 2016-08-19 Pedro Alves <palves@redhat.com>
2114
2115 * linux-x86-low.c (amd64_install_fast_tracepoint_jump_pad): Fix
2116 comment. Use memcpy instead of casting through unsigned long.
2117
2118 2016-08-19 Pedro Alves <palves@redhat.com>
2119
2120 * linux-amd64-ipa.c (alloc_jump_pad_buffer) [__ILP32__]: Try
2121 allocating around 0x80000000.
2122
2123 2016-08-19 Pedro Alves <palves@redhat.com>
2124
2125 PR gdb/20415
2126 * Makefile.in (x32-linux-ipa.o, x32-avx-linux-ipa.o)
2127 (x32-avx512-linux-ipa.o): New rules.
2128 * configure.ac (x86_64-*-linux*): New x32 check.
2129 * configure.srv (ipa_x32_linux_regobj): New.
2130 (x86_64-*-linux*): Use $ipa_x32_linux_regobj if building for x32.
2131 * linux-amd64-ipa.c (get_ipa_tdesc) [__ILP32__]: Return x32
2132 descriptions.
2133 (initialize_low_tracepoint) [__ILP32__]: Initialize x32
2134 descriptions.
2135 * configure: Regenerate.
2136
2137 2016-08-09 Pedro Alves <palves@redhat.com>
2138
2139 PR gdb/18653
2140 * Makefile.in (OBS): Add signals-state-save-restore.o.
2141 (signals-state-save-restore.o): New rule.
2142 * config.in: Regenerate.
2143 * configure: Regenerate.
2144 * linux-low.c: Include "signals-state-save-restore.h".
2145 (linux_create_inferior): Call
2146 restore_original_signals_state.
2147 * server.c: Include "dispositions-save-restore.h".
2148 (captured_main): Call save_original_signals_state.
2149
2150 2016-08-05 Pedro Alves <palves@redhat.com>
2151
2152 * configure: Regenerate.
2153
2154 2016-08-04 Yao Qi <yao.qi@linaro.org>
2155
2156 * linux-low.c (regsets_fetch_inferior_registers): Check
2157 errno is ESRCH or not.
2158
2159 2016-08-02 Yao Qi <yao.qi@linaro.org>
2160
2161 * thread-db.c (struct thread_db) <td_ta_event_getmsg_p>: Remove.
2162 <td_ta_set_event_p, td_ta_event_addr_p>: Remove.
2163 (thread_db_load_search): Update.
2164 (try_thread_db_load_1): Don't look for td_ta_event_addr,
2165 td_ta_set_event and td_ta_event_getmsg.
2166
2167 2016-07-26 Pedro Alves <palves@redhat.com>
2168
2169 PR server/20414
2170 * linux-x86-low.c (x86_get_pc, x86_set_pc): Use uint64_t instead
2171 of unsigned long for 64-bit registers and use uint32_t instead of
2172 unsigned int for 32-bit registers.
2173
2174 2016-07-26 Pedro Alves <palves@redhat.com>
2175
2176 * linux-x86-low.c (x86_siginfo_fixup): Rename 'native' parameter
2177 to 'ptrace'.
2178
2179 2016-07-21 Tom Tromey <tom@tromey.com>
2180
2181 * configure: Rebuild.
2182
2183 2016-07-21 Yao Qi <yao.qi@linaro.org>
2184
2185 * mem-break.c (find_gdb_breakpoint): Cast bp to
2186 'struct gdb_breakpoint *' rather than 'gdb_breakpoint *'.
2187
2188 2016-07-21 Yao Qi <yao.qi@linaro.org>
2189
2190 * server.c (handle_v_requests): Support s and S actions
2191 if target_supports_software_single_step return true.
2192
2193 2016-07-21 Yao Qi <yao.qi@linaro.org>
2194
2195 * linux-low.c (resume_stopped_resumed_lwps): If resume request
2196 is resume_step, call maybe_hw_step.
2197 (linux_wait_1): Stop all threads, remove reinsert breakpoints,
2198 and unstop them.
2199 (linux_resume_one_lwp_throw): Don't assert the thread has reinsert
2200 breakpoints or not.
2201 (proceed_one_lwp): If resume request is resume_step, install
2202 reinsert breakpoints and call maybe_hw_step.
2203
2204 2016-07-21 Yao Qi <yao.qi@linaro.org>
2205
2206 * linux-low.c (proceed_one_lwp): Declare.
2207 (linux_resume_one_thread): Remove local variable 'step'.
2208 Lift code enqueue signal. Call proceed_one_lwp instead of
2209 linux_resume_one_lwp.
2210
2211 2016-07-21 Yao Qi <yao.qi@linaro.org>
2212
2213 * linux-low.c (linux_resume_one_thread): Call
2214 enqueue_pending_signal.
2215
2216 2016-07-21 Yao Qi <yao.qi@linaro.org>
2217
2218 * gdbthread.h (make_cleanup_restore_current_thread): Declare.
2219 * inferiors.c (do_restore_current_thread_cleanup): New function.
2220 (make_cleanup_restore_current_thread): Likewise.
2221 * linux-low.c (install_software_single_step_breakpoints): Call
2222 make_cleanup_restore_current_thread. Switch current_thread to
2223 thread.
2224
2225 2016-07-21 Yao Qi <yao.qi@linaro.org>
2226
2227 * mem-break.c (struct reinsert_breakpoint) <ptid>: New field.
2228 (set_reinsert_breakpoint): New parameter ptid. Callers updated.
2229 (clone_one_breakpoint): Likewise.
2230 (delete_reinsert_breakpoints): Change parameter to thread.
2231 Callers updated.
2232 (has_reinsert_breakpoints): Likewise.
2233 (uninsert_reinsert_breakpoints): Likewise.
2234 (reinsert_reinsert_breakpoints): Likewise.
2235 * mem-break.h (set_reinsert_breakpoint): Update declaration.
2236 (delete_reinsert_breakpoints): Likewise.
2237 (reinsert_reinsert_breakpoints): Likewise.
2238 (uninsert_reinsert_breakpoints): Likewise.
2239 (has_reinsert_breakpoints): Likewise.
2240
2241 2016-07-21 Yao Qi <yao.qi@linaro.org>
2242
2243 * inferiors.c (get_thread_process): Make parameter const.
2244 * inferiors.h (get_thread_process): Update declaration.
2245 * mem-break.c (clone_all_breakpoints): Remove all parameters.
2246 Add new parameters child_thread and parent_thread. Callers
2247 updated.
2248 * mem-break.h (clone_all_breakpoints): Update declaration.
2249
2250 2016-07-21 Yao Qi <yao.qi@linaro.org>
2251
2252 * mem-break.c (struct breakpoint) <cond_list>: Remove.
2253 <command_list, handler>: Remove.
2254 (struct gdb_breakpoint): New.
2255 (struct other_breakpoint): New.
2256 (struct reinsert_breakpoint): New.
2257 (is_gdb_breakpoint): New function.
2258 (any_persistent_commands): Update command_list if
2259 is_gdb_breakpoint returns true.
2260 (set_breakpoint): Create breakpoints according to their types.
2261 (find_gdb_breakpoint): Return 'struct gdb_breakpoint *'.
2262 (set_gdb_breakpoint_1): Likewise.
2263 (set_gdb_breakpoint): Likewise.
2264 (clear_breakpoint_conditions): Change parameter type to
2265 'struct gdb_breakpoint *'.
2266 (clear_breakpoint_commands): Likewise.
2267 (clear_breakpoint_conditions_and_commands): Likewise.
2268 (add_condition_to_breakpoint): Likewise.
2269 (add_breakpoint_condition): Likewise.
2270 (add_commands_to_breakpoint): Likewise.
2271 (check_breakpoints): Check other_breakpoint.
2272 (clone_one_breakpoint): Clone breakpopint according to its type.
2273 * mem-break.h (struct gdb_breakpoint): Declare.
2274 (set_gdb_breakpoint): Update declaration.
2275 (clear_breakpoint_conditions_and_commands): Likewise.
2276 (add_breakpoint_condition): Likewise.
2277 (add_breakpoint_commands): Likewise.
2278 * server.c (process_point_options): Change parameter type to
2279 'struct gdb_breakpoint *'.
2280
2281 2016-07-21 Yao Qi <yao.qi@linaro.org>
2282
2283 * mem-break.c (set_breakpoint_at): Rename it to ...
2284 (set_breakpoint_type_at): ... it.
2285 (set_breakpoint_at): Call set_breakpoint_type_at.
2286 (set_reinsert_breakpoint): Call set_breakpoint_type_at.
2287 * mem-break.h (set_breakpoint_at): Update comments.
2288
2289 2016-07-12 Chung-Lin Tang <cltang@codesourcery.com>
2290
2291 * linux-nios2-low.c (nios2_fill_gregset): Add type cast
2292 to buf parameter.
2293 (nios2_store_gregset): Likewise.
2294
2295 2016-07-01 Pedro Alves <palves@redhat.com>
2296 Antoine Tremblay <antoine.tremblay@ericsson.com>
2297
2298 * linux-low.c: Change interface to take the target lwp_info
2299 pointer directly and return void. Handle detaching from a zombie
2300 thread.
2301 (linux_detach_lwp_callback): New function.
2302 (linux_detach): Detach from the leader thread after detaching from
2303 the clone threads.
2304
2305 2016-06-28 Yao Qi <yao.qi@linaro.org>
2306
2307 * linux-aarch64-low.c (aarch64_ftrace_insn_reloc_b): Use int64_t
2308 for variable new_offset.
2309 (aarch64_ftrace_insn_reloc_b_cond): Likewise.
2310 (aarch64_ftrace_insn_reloc_cb): Likewise.
2311 (aarch64_ftrace_insn_reloc_tb): Likewise.
2312 (aarch64_install_fast_tracepoint_jump_pad): Likewise. Use
2313 PRIx64 instead of PRIx32.
2314
2315 2016-06-28 Yao Qi <yao.qi@linaro.org>
2316
2317 * linux-arm-low.c (arm_get_syscall_trapinfo): New function.
2318 (the_low_target): Install arm_get_syscall_trapinfo.
2319
2320 2016-06-28 Yao Qi <yao.qi@linaro.org>
2321
2322 * linux-aarch64-low.c (aarch64_get_syscall_trapinfo): New
2323 function.
2324 (the_low_target): Install aarch64_get_syscall_trapinfo.
2325
2326 2016-06-28 Yao Qi <yao.qi@linaro.org>
2327
2328 * linux-low.c (get_syscall_trapinfo): Remove parameter sysret.
2329 Callers updated.
2330 * linux-low.h (struct linux_target_ops) <get_syscall_trapinfo>:
2331 Remove parameter sysno.
2332 * linux-x86-low.c (x86_get_syscall_trapinfo): Remove parameter
2333 sysret.
2334
2335 2016-06-21 Andreas Arnez <arnez@linux.vnet.ibm.com>
2336
2337 * linux-s390-low.c (s390_emit_eq_goto): Mark function static.
2338 (s390_emit_ne_goto): Likewise.
2339 (s390_emit_lt_goto): Likewise.
2340 (s390_emit_le_goto): Likewise.
2341 (s390_emit_gt_goto): Likewise.
2342 (s390_emit_ge_goto): Likewise.
2343 (s390x_emit_eq_goto): Likewise.
2344 (s390x_emit_ne_goto): Likewise.
2345 (s390x_emit_lt_goto): Likewise.
2346 (s390x_emit_le_goto): Likewise.
2347 (s390x_emit_gt_goto): Likewise.
2348 (s390x_emit_ge_goto): Likewise.
2349 (s390_emit_ops_impl): Mark variable static.
2350 (s390x_emit_ops): Likewise.
2351
2352 2016-06-17 Yao Qi <yao.qi@linaro.org>
2353
2354 * linux-low.c (handle_extended_wait): Call
2355 uninsert_reinsert_breakpoints for the parent process. Remove
2356 reinsert breakpoints from the child process. Reinsert them to
2357 the parent process when vfork is done.
2358 * mem-break.c (uninsert_reinsert_breakpoints): New function.
2359 (reinsert_reinsert_breakpoints): New function.
2360 * mem-break.h (uninsert_reinsert_breakpoints): Declare
2361 (reinsert_reinsert_breakpoints): Declare.
2362
2363 2016-06-17 Yao Qi <yao.qi@linaro.org>
2364
2365 * linux-low.c (handle_extended_wait): If the parent is doing
2366 step-over, remove the reinsert breakpoints from the forked child.
2367
2368 2016-06-17 Yao Qi <yao.qi@linaro.org>
2369
2370 * linux-low.c (unsuspend_all_lwps): Declare.
2371 (linux_low_filter_event): If thread exited, call finish_step_over.
2372 If step-over is finished, unsuspend other threads.
2373
2374 2016-06-17 Yao Qi <yao.qi@linaro.org>
2375
2376 * linux-low.c (linux_resume_one_lwp_throw): Assert
2377 has_reinsert_breakpoints returns false.
2378 * mem-break.c (delete_disabled_breakpoints): Assert
2379 bp type isn't reinsert_breakpoint.
2380
2381 2016-06-17 Yao Qi <yao.qi@linaro.org>
2382
2383 * linux-low.c (maybe_hw_step): New function.
2384 (linux_resume_one_lwp_throw): Call maybe_hw_step.
2385 (finish_step_over): Switch current_thread to lwp temporarily,
2386 and assert has_reinsert_breakpoints returns true.
2387 (proceed_one_lwp): Call maybe_hw_step.
2388 * mem-break.c (has_reinsert_breakpoints): New function.
2389 * mem-break.h (has_reinsert_breakpoints): Declare.
2390
2391 2016-06-02 Jon Turney <jon.turney@dronecode.org.uk>
2392
2393 * win32-low.c (win32_create_inferior): Add pointer casts for C++.
2394
2395 2016-05-17 Yao Qi <yao.qi@linaro.org>
2396
2397 * linux-low.c (linux_stabilize_threads): Call unsuspend_all_lwps
2398 instead of find_inferior.
2399
2400 2016-05-05 Yao Qi <yao.qi@linaro.org>
2401
2402 * linux-arm-low.c (get_next_pcs_read_memory_unsigned_integer):
2403 Initialize res to zero.
2404
2405 2016-05-05 Yao Qi <yao.qi@linaro.org>
2406
2407 * linux-arm-low.c (arm_sigreturn_next_pc): Change type of cpsr
2408 to uint32_t.
2409
2410 2016-05-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2411
2412 * spu-low.c (fetch_ppc_register): Cast PowerPC-Linux-specific value
2413 used as first ptrace argument to PTRACE_TYPE_ARG1 for C++.
2414 (fetch_ppc_memory_1, store_ppc_memory_1): Likewise.
2415
2416 2016-04-28 Par Olsson <par.olsson@windriver.com>
2417 Simon Marchi <simon.marchi@ericsson.com>
2418
2419 * tracepoint.c (write_inferior_int8): New function.
2420 (cmd_qtenable_disable): Write enable flag using
2421 write_inferior_int8.
2422
2423 2016-04-25 Yao Qi <yao.qi@linaro.org>
2424
2425 * linux-low.c (lwp_signal_can_be_delivered): Adjust.
2426 (need_step_over_p): Return zero if the LWP has pending signals
2427 can be delivered on software single step target.
2428
2429 2016-04-25 Yao Qi <yao.qi@linaro.org>
2430
2431 * linux-low.c (reinsert_raw_breakpoint): If bp->inserted is true
2432 return instead of error.
2433
2434 2016-04-22 Yao Qi <yao.qi@linaro.org>
2435
2436 * linux-aarch32-low.c (arm_store_gregset): Clear CPSR bits 20
2437 to 23.
2438
2439 2016-04-22 Yao Qi <yao.qi@linaro.org>
2440
2441 * linux-low.c (lwp_signal_can_be_delivered): Don't deliver
2442 signal when stepping over breakpoint with software single
2443 step.
2444
2445 2016-04-21 Pedro Alves <palves@redhat.com>
2446
2447 * linux-s390-low.c (s390_collect_ptrace_register)
2448 (s390_supply_ptrace_register, s390_get_hwcap): Use gdb_byte * and
2449 add casts.
2450 (s390_check_regset): Use void * instead of gdb_byte *.
2451
2452 2016-04-20 Pedro Alves <palves@redhat.com>
2453
2454 * configure: Renegerate.
2455
2456 2016-04-20 Yao Qi <yao.qi@linaro.org>
2457
2458 * linux-aarch32-low.c: Include "arch/arm-linux.h".
2459 (arm_fill_gregset): Use ARM_CPSR_GREGNUM rather than magic
2460 number 16.
2461 (arm_store_gregset): Likewise.
2462
2463 2016-04-16 Walfred Tedeschi <walfred.tedeschi@intel.com>
2464
2465 * Makefile.in (clean): Add removal for i386-avx-mpx.c,
2466 i386-avx-mpx-linux.c, amd64-avx-mpx.c and amd64-avx-mpx-linux.c.
2467 (i386-avx-mpx.c, i386-avx-mpx-linux.c, amd64-avx-mpx.c)
2468 (amd64-avx-mpx-linux.c): New rules.
2469 (amd64-avx-mpx-linux-ipa.o, i386-avx-mpx-linux-ipa.o): New rule.
2470 * configure.srv (srv_i386_regobj): Add i386-avx-mpx.o.
2471 (srv_i386_linux_regobj): Add i386-avx-mpx-linux.o.
2472 (srv_amd64_regobj): Add amd64-avx-mpx.o.
2473 (srv_amd64_linux_regobj): Add amd64-avx-mpx-linux.o.
2474 (srv_i386_xmlfiles): Add i386/i386-avx-mpx.xml.
2475 (srv_amd64_xmlfiles): Add i386/amd64-avx-mpx.xml.
2476 (srv_i386_linux_xmlfiles): Add i386/i386-avx-mpx-linux.xml.
2477 (srv_amd64_linux_xmlfiles): Add i386/amd64-avx-mpx-linux.xml.
2478 (ipa_i386_linux_regobj): Add i386-avx-mpx-linux-ipa.o.
2479 (ipa_amd64_linux_regobj): Add amd64-avx-mpx-linux-ipa.o.
2480 * linux-x86-low.c (x86_linux_read_description): Add case for
2481 X86_XSTATE_AVX_MPX_MASK.
2482 (x86_get_ipa_tdesc_idx): Add cases for avx_mpx.
2483 (initialize_low_arch): Call init_registers_amd64_avx_mpx_linux and
2484 init_registers_i386_avx_mpx_linux.
2485 * linux-i386-ipa.c (get_ipa_tdesc): Add case for avx_mpx.
2486 (initialize_low_tracepoint): Call
2487 init_registers_i386_avx_mpx_linux.
2488 * linux-amd64-ipa.c (get_ipa_tdesc): Add case for avx_mpx.
2489 (initialize_low_tracepoint): Call
2490 init_registers_amd64_avx_mpx_linux.
2491 * linux-x86-tdesc.h (X86_TDESC_AVX_MPX): New enum value.
2492 (init_registers_amd64_avx_mpx_linux, tdesc_amd64_avx_mpx_linux)
2493 (init_registers_i386_avx_mpx_linux, tdesc_i386_avx_mpx_linux): New
2494 declarations.
2495
2496 2016-04-18 Pedro Alves <palves@redhat.com>
2497
2498 * configure: Regenerate.
2499
2500 2016-04-13 Antoine Tremblay <antoine.tremblay@ericsson.com>
2501
2502 * linux-aarch64-low.c (aarch64_emit_add): Switch x1 and x0.
2503 (aarch64_emit_sub): Likewise.
2504
2505 2016-04-12 Pedro Alves <palves@redhat.com>
2506
2507 * utils.c (prepare_to_throw_exception): Delete.
2508
2509 2016-04-05 Simon Marchi <simon.marchi@ericsson.com>
2510
2511 * Makefile.in ($(IPA_LIB)): Set SONAME of the IPA lib.
2512
2513 2016-04-05 Marcin Kościelnicki <koriakin@0x04.net>
2514
2515 * tracepoint.c (getauxval): Move to #ifdef IN_PROCESS_AGENT.
2516
2517 2016-04-03 Marcin Kościelnicki <koriakin@0x04.net>
2518
2519 * linux-aarch64-ipa.c: Add <elf.h> include.
2520 * linux-ppc-ipa.c: Add <elf.h> include.
2521 * linux-s390-ipa.c: Add <elf.h> include.
2522
2523 2016-03-31 Marcin Kościelnicki <koriakin@0x04.net>
2524
2525 * tracepoint.c (gdb_collect_ptr): Remove const qualifier.
2526 (get_raw_reg_ptr): Likewise.
2527 (get_trace_state_variable_value_ptr): Likewise.
2528 (set_trace_state_variable_value_ptr): Likewise.
2529 (initialize_tracepoint): Cast alloc_jump_pad_buffer result to
2530 char *.
2531
2532 2016-03-31 Wei-cheng Wang <cole945@gmail.com>
2533 Marcin Kościelnicki <koriakin@0x04.net>
2534
2535 PR/17221
2536 * linux-ppc-low.c (emit_insns): New function.
2537 (__EMIT_ASM, _EMIT_ASM, EMIT_ASM): New macros.
2538 (ppc_emit_prologue): New function.
2539 (ppc_emit_epilogue): New function.
2540 (ppc_emit_add): New function.
2541 (ppc_emit_sub): New function.
2542 (ppc_emit_mul): New function.
2543 (ppc_emit_lsh): New function.
2544 (ppc_emit_rsh_signed): New function.
2545 (ppc_emit_rsh_unsigned): New function.
2546 (ppc_emit_ext): New function.
2547 (ppc_emit_zero_ext): New function.
2548 (ppc_emit_log_not): New function.
2549 (ppc_emit_bit_and): New function.
2550 (ppc_emit_bit_or): New function.
2551 (ppc_emit_bit_xor): New function.
2552 (ppc_emit_bit_not): New function.
2553 (ppc_emit_equal): New function.
2554 (ppc_emit_less_signed): New function.
2555 (ppc_emit_less_unsigned): New function.
2556 (ppc_emit_ref): New function.
2557 (ppc_emit_const): New function.
2558 (ppc_emit_reg): New function.
2559 (ppc_emit_pop): New function.
2560 (ppc_emit_stack_flush): New function.
2561 (ppc_emit_swap): New function.
2562 (ppc_emit_stack_adjust): New function.
2563 (ppc_emit_call): New function.
2564 (ppc_emit_int_call_1): New function.
2565 (ppc_emit_void_call_2): New function.
2566 (ppc_emit_if_goto): New function.
2567 (ppc_emit_goto): New function.
2568 (ppc_emit_eq_goto): New function.
2569 (ppc_emit_ne_goto): New function.
2570 (ppc_emit_lt_goto): New function.
2571 (ppc_emit_le_goto): New function.
2572 (ppc_emit_gt_goto): New function.
2573 (ppc_emit_ge_goto): New function.
2574 (ppc_write_goto_address): New function.
2575 (ppc_emit_ops_impl): New static variable.
2576 (ppc64v1_emit_prologue): New function.
2577 (ppc64v2_emit_prologue): New function.
2578 (ppc64_emit_epilogue): New function.
2579 (ppc64_emit_add): New function.
2580 (ppc64_emit_sub): New function.
2581 (ppc64_emit_mul): New function.
2582 (ppc64_emit_lsh): New function.
2583 (ppc64_emit_rsh_signed): New function.
2584 (ppc64_emit_rsh_unsigned): New function.
2585 (ppc64_emit_ext): New function.
2586 (ppc64_emit_zero_ext): New function.
2587 (ppc64_emit_log_not): New function.
2588 (ppc64_emit_bit_and): New function.
2589 (ppc64_emit_bit_or): New function.
2590 (ppc64_emit_bit_xor): New function.
2591 (ppc64_emit_bit_not): New function.
2592 (ppc64_emit_equal): New function.
2593 (ppc64_emit_less_signed): New function.
2594 (ppc64_emit_less_unsigned): New function.
2595 (ppc64_emit_ref): New function.
2596 (ppc64_emit_const): New function.
2597 (ppc64v1_emit_reg): New function.
2598 (ppc64v2_emit_reg): New function.
2599 (ppc64_emit_pop): New function.
2600 (ppc64_emit_stack_flush): New function.
2601 (ppc64_emit_swap): New function.
2602 (ppc64v1_emit_call): New function.
2603 (ppc64v2_emit_call): New function.
2604 (ppc64v1_emit_int_call_1): New function.
2605 (ppc64v2_emit_int_call_1): New function.
2606 (ppc64v1_emit_void_call_2): New function.
2607 (ppc64v2_emit_void_call_2): New function.
2608 (ppc64_emit_if_goto): New function.
2609 (ppc64_emit_eq_goto): New function.
2610 (ppc64_emit_ne_goto): New function.
2611 (ppc64_emit_lt_goto): New function.
2612 (ppc64_emit_le_goto): New function.
2613 (ppc64_emit_gt_goto): New function.
2614 (ppc64_emit_ge_goto): New function.
2615 (ppc64v1_emit_ops_impl): New static variable.
2616 (ppc64v2_emit_ops_impl): New static variable.
2617 (ppc_emit_ops): New function.
2618 (linux_low_target): Wire in ppc_emit_ops.
2619
2620 2016-03-31 Wei-cheng Wang <cole945@gmail.com>
2621 Marcin Kościelnicki <koriakin@0x04.net>
2622
2623 PR/17221
2624 * Makefile.in: Add powerpc-*-ipa.o
2625 * configure.srv: Add ipa_obj for powerpc*-linux.
2626 * linux-ppc-ipa.c: New file.
2627 * linux-ppc-low.c: Added linux-ppc-tdesc.h, ax.h, tracepoint.h
2628 includes.
2629 (PPC_FIELD): New macro.
2630 (PPC_SEXT): New macro.
2631 (PPC_OP6): New macro.
2632 (PPC_BO): New macro.
2633 (PPC_LI): New macro.
2634 (PPC_BD): New macro.
2635 (init_registers_*): Move prototype to linux-ppc-tdesc.h.
2636 (tdesc_*): Move declaration to linux-ppc-tdesc.h.
2637 (ppc_get_hwcap): Rename to ppc_get_auxv and add type parameter.
2638 (ppc_get_thread_area): New function.
2639 (is_elfv2_inferior): New function.
2640 (gen_ds_form): New function.
2641 (GEN_STD): New macro.
2642 (GEN_STDU): New macro.
2643 (GEN_LD): New macro.
2644 (GEN_LDU): New macro.
2645 (gen_d_form): New function.
2646 (GEN_ADDI): New macro.
2647 (GEN_ADDIS): New macro.
2648 (GEN_LI): New macro.
2649 (GEN_LIS): New macro.
2650 (GEN_ORI): New macro.
2651 (GEN_ORIS): New macro.
2652 (GEN_LWZ): New macro.
2653 (GEN_STW): New macro.
2654 (GEN_STWU): New macro.
2655 (gen_xfx_form): New function.
2656 (GEN_MFSPR): New macro.
2657 (GEN_MTSPR): New macro.
2658 (GEN_MFCR): New macro.
2659 (GEN_MTCR): New macro.
2660 (GEN_SYNC): New macro.
2661 (GEN_LWSYNC): New macro.
2662 (gen_x_form): New function.
2663 (GEN_OR): New macro.
2664 (GEN_MR): New macro.
2665 (GEN_LWARX): New macro.
2666 (GEN_STWCX): New macro.
2667 (GEN_CMPW): New macro.
2668 (gen_md_form): New function.
2669 (GEN_RLDICL): New macro.
2670 (GEN_RLDICR): New macro.
2671 (gen_i_form): New function.
2672 (GEN_B): New macro.
2673 (GEN_BL): New macro.
2674 (gen_b_form): New function.
2675 (GEN_BNE): New macro.
2676 (GEN_LOAD): New macro.
2677 (GEN_STORE): New macro.
2678 (gen_limm): New function.
2679 (gen_atomic_xchg): New function.
2680 (gen_call): New function.
2681 (ppc_relocate_instruction): New function.
2682 (ppc_install_fast_tracepoint_jump_pad): New function.
2683 (ppc_get_min_fast_tracepoint_insn_len): New function.
2684 (ppc_get_ipa_tdesc_idx): New function.
2685 (the_low_target): Wire in the new functions.
2686 (initialize_low_arch) [!__powerpc64__]: Don'it initialize 64-bit
2687 tdescs.
2688 * linux-ppc-tdesc.h: New file.
2689
2690 2016-03-31 Marcin Kościelnicki <koriakin@0x04.net>
2691
2692 * linux-aarch64-ipa.c: Add <sys/mman.h> and <sys/auxv.h> includes.
2693 (alloc_jump_pad_buffer): New function.
2694 * linux-amd64-ipa.c: Add <sys/mman.h> include.
2695 (alloc_jump_pad_buffer): New function.
2696 * linux-i386-ipa.c (alloc_jump_pad_buffer): New function.
2697 * linux-s390-ipa.c: Add <sys/mman.h> and <sys/auxv.h> includes.
2698 (alloc_jump_pad_buffer): New function.
2699 * tracepoint.c (getauxval) [!HAVE_GETAUXVAL]: New function.
2700 (initialize_tracepoint): Delegate to alloc_jump_pad_buffer.
2701 * tracepoint.h (alloc_jump_pad_buffer): New prototype.
2702 (getauxval) [!HAVE_GETAUXVAL]: New prototype.
2703
2704 2016-03-30 Marcin Kościelnicki <koriakin@0x04.net>
2705
2706 * linux-aarch64-ipa.c: Rename gdb_agent_get_raw_reg to get_raw_reg.
2707 * linux-amd64-ipa.c: Likewise.
2708 * linux-i386-ipa.c: Likewise.
2709 * linux-s390-ipa.c: Likewise.
2710 * tracepoint.c: IPA-export gdb_collect_ptr instead of gdb_collect,
2711 ditto for get_raw_reg_ptr, get_trace_state_variable_value_ptr,
2712 set_trace_state_variable_value_ptr.
2713 (struct ipa_sym_addresses): Likewise.
2714 (symbol_list): Likewise.
2715 (install_fast_tracepoint): Dereference gdb_collect_ptr instead of
2716 accessing gdb_collect directly.
2717 (gdb_collect_ptr_type): New typedef.
2718 (get_raw_reg_ptr_type): New typedef.
2719 (get_trace_state_variable_value_ptr_type): New typedef.
2720 (set_trace_state_variable_value_ptr_type): New typedef.
2721 (gdb_collect_ptr): New global.
2722 (get_raw_reg_ptr): New global.
2723 (get_trace_state_variable_value_ptr): New global.
2724 (set_trace_state_variable_value_ptr): New global.
2725 (get_raw_reg_func_addr): Dereference get_raw_reg_ptr instead of
2726 accessing get_raw_reg directly.
2727 (get_get_tsv_func_addr): Likewise for
2728 get_trace_state_variable_value_ptr.
2729 (get_set_tsv_func_addr): Likewise for
2730 set_trace_state_variable_value_ptr.
2731 * tracepoint.h: Rename gdb_agent_get_raw_reg to get_raw_reg.
2732
2733 2016-03-30 Simon Marchi <simon.marchi@ericsson.com>
2734
2735 * tracepoint.c (cmd_qtenable_disable): Remove whitespace.
2736
2737 2016-03-30 Marcin Kościelnicki <koriakin@0x04.net>
2738
2739 * remote-utils.c (look_up_one_symbol): Remove own_buf, handle 'v'
2740 packets.
2741 (relocate_instruction): Remove own_buf.
2742 * server.c (own_buf): Make global.
2743 (handle_v_requests): Make global.
2744 * server.h (own_buf): New declaration.
2745 (handle_v_requests): New prototype.
2746
2747 2016-03-29 Marcin Kościelnicki <koriakin@0x04.net>
2748
2749 PR 18377
2750 * linux-s390-low.c (add_insns): New function.
2751 (s390_emit_prologue): New function.
2752 (s390_emit_epilogue): New function.
2753 (s390_emit_add): New function.
2754 (s390_emit_sub): New function.
2755 (s390_emit_mul): New function.
2756 (s390_emit_lsh): New function.
2757 (s390_emit_rsh_signed): New function.
2758 (s390_emit_rsh_unsigned): New function.
2759 (s390_emit_ext): New function.
2760 (s390_emit_log_not): New function.
2761 (s390_emit_bit_and): New function.
2762 (s390_emit_bit_or): New function.
2763 (s390_emit_bit_xor): New function.
2764 (s390_emit_bit_not): New function.
2765 (s390_emit_equal): New function.
2766 (s390_emit_less_signed): New function.
2767 (s390_emit_less_unsigned): New function.
2768 (s390_emit_ref): New function.
2769 (s390_emit_if_goto): New function.
2770 (s390_emit_goto): New function.
2771 (s390_write_goto_address): New function.
2772 (s390_emit_litpool): New function.
2773 (s390_emit_const): New function.
2774 (s390_emit_call): New function.
2775 (s390_emit_reg): New function.
2776 (s390_emit_pop): New function.
2777 (s390_emit_stack_flush): New function.
2778 (s390_emit_zero_ext): New function.
2779 (s390_emit_swap): New function.
2780 (s390_emit_stack_adjust): New function.
2781 (s390_emit_set_r2): New function.
2782 (s390_emit_int_call_1): New function.
2783 (s390_emit_void_call_2): New function.
2784 (s390_emit_eq_goto): New function.
2785 (s390_emit_ne_goto): New function.
2786 (s390_emit_lt_goto): New function.
2787 (s390_emit_le_goto): New function.
2788 (s390_emit_gt_goto): New function.
2789 (s390_emit_ge_goto): New function.
2790 (s390x_emit_prologue): New function.
2791 (s390x_emit_epilogue): New function.
2792 (s390x_emit_add): New function.
2793 (s390x_emit_sub): New function.
2794 (s390x_emit_mul): New function.
2795 (s390x_emit_lsh): New function.
2796 (s390x_emit_rsh_signed): New function.
2797 (s390x_emit_rsh_unsigned): New function.
2798 (s390x_emit_ext): New function.
2799 (s390x_emit_log_not): New function.
2800 (s390x_emit_bit_and): New function.
2801 (s390x_emit_bit_or): New function.
2802 (s390x_emit_bit_xor): New function.
2803 (s390x_emit_bit_not): New function.
2804 (s390x_emit_equal): New function.
2805 (s390x_emit_less_signed): New function.
2806 (s390x_emit_less_unsigned): New function.
2807 (s390x_emit_ref): New function.
2808 (s390x_emit_if_goto): New function.
2809 (s390x_emit_const): New function.
2810 (s390x_emit_call): New function.
2811 (s390x_emit_reg): New function.
2812 (s390x_emit_pop): New function.
2813 (s390x_emit_stack_flush): New function.
2814 (s390x_emit_zero_ext): New function.
2815 (s390x_emit_swap): New function.
2816 (s390x_emit_stack_adjust): New function.
2817 (s390x_emit_int_call_1): New function.
2818 (s390x_emit_void_call_2): New function.
2819 (s390x_emit_eq_goto): New function.
2820 (s390x_emit_ne_goto): New function.
2821 (s390x_emit_lt_goto): New function.
2822 (s390x_emit_le_goto): New function.
2823 (s390x_emit_gt_goto): New function.
2824 (s390x_emit_ge_goto): New function.
2825 (s390_emit_ops): New function.
2826 (struct linux_target_ops): Fill in emit_ops hook.
2827
2828 2016-03-29 Marcin Kościelnicki <koriakin@0x04.net>
2829
2830 PR 18377
2831 * Makefile.in: Add s390 IPA files.
2832 * configure.srv: Build IPA for s390.
2833 * linux-s390-ipa.c: New file.
2834 * linux-s390-low.c: New includes - inttypes.h and linux-s390-tdesc.h.
2835 (init_registers_s390_linux32): Move declaration to linux-s390-tdesc.h.
2836 (tdesc_s390_linux32): Likewise.
2837 (init_registers_s390_linux32v1): Likewise.
2838 (tdesc_s390_linux32v1): Likewise.
2839 (init_registers_s390_linux32v2): Likewise.
2840 (tdesc_s390_linux32v2): Likewise.
2841 (init_registers_s390_linux64): Likewise.
2842 (tdesc_s390_linux64): Likewise.
2843 (init_registers_s390_linux64v1): Likewise.
2844 (tdesc_s390_linux64v1): Likewise.
2845 (init_registers_s390_linux64v2): Likewise.
2846 (tdesc_s390_linux64v2): Likewise.
2847 (init_registers_s390_te_linux64): Likewise.
2848 (tdesc_s390_te_linux64): Likewise.
2849 (init_registers_s390_vx_linux64): Likewise.
2850 (tdesc_s390_vx_linux64): Likewise.
2851 (init_registers_s390_tevx_linux64): Likewise.
2852 (tdesc_s390_tevx_linux64): Likewise.
2853 (init_registers_s390x_linux64): Likewise.
2854 (tdesc_s390x_linux64): Likewise.
2855 (init_registers_s390x_linux64v1): Likewise.
2856 (tdesc_s390x_linux64v1): Likewise.
2857 (init_registers_s390x_linux64v2): Likewise.
2858 (tdesc_s390x_linux64v2): Likewise.
2859 (init_registers_s390x_te_linux64): Likewise.
2860 (tdesc_s390x_te_linux64): Likewise.
2861 (init_registers_s390x_vx_linux64): Likewise.
2862 (tdesc_s390x_vx_linux64): Likewise.
2863 (init_registers_s390x_tevx_linux64): Likewise.
2864 (tdesc_s390x_tevx_linux64): Likewise.
2865 (have_hwcap_s390_vx): New static variable.
2866 (s390_arch_setup): Fill have_hwcap_s390_vx.
2867 (s390_get_thread_area): New function.
2868 (s390_ft_entry_gpr_esa): New const.
2869 (s390_ft_entry_gpr_zarch): New const.
2870 (s390_ft_entry_misc): New const.
2871 (s390_ft_entry_fr): New const.
2872 (s390_ft_entry_vr): New const.
2873 (s390_ft_main_31): New const.
2874 (s390_ft_main_64): New const.
2875 (s390_ft_exit_fr): New const.
2876 (s390_ft_exit_vr): New const.
2877 (s390_ft_exit_misc): New const.
2878 (s390_ft_exit_gpr_esa): New const.
2879 (s390_ft_exit_gpr_zarch): New const.
2880 (append_insns): New function.
2881 (s390_relocate_instruction): New function.
2882 (s390_install_fast_tracepoint_jump_pad): New function.
2883 (s390_get_min_fast_tracepoint_insn_len): New function.
2884 (s390_get_ipa_tdesc_idx): New function.
2885 (struct linux_target_ops): Wire in the above functions.
2886 (initialize_low_arch) [!__s390x__]: Don't initialize s390x tdescs.
2887 * linux-s390-tdesc.h: New file.
2888
2889 2016-03-29 Marcin Kościelnicki <koriakin@0x04.net>
2890
2891 * linux-s390-low.c (s390_supports_tracepoints): New function.
2892 (struct linux_target_ops): Fill supports_tracepoints hook.
2893
2894 2016-03-18 Yao Qi <yao.qi@linaro.org>
2895
2896 * linux-low.c (lwp_signal_can_be_delivered): New function.
2897 (linux_resume_one_lwp_throw): Use lwp_signal_can_be_delivered.
2898
2899 2016-03-18 Yao Qi <yao.qi@linaro.org>
2900
2901 * linux-low.c (linux_resume_one_lwp_throw): Set 'signal' to
2902 0 if signal is enqueued. Remove 'signal' from one debugging
2903 message. Move one debugging message to some lines below.
2904 Remove code setting 'signal' to 0.
2905
2906 2016-03-18 Yao Qi <yao.qi@linaro.org>
2907
2908 * linux-low.c (linux_low_filter_event): Remove redundant
2909 WIFSTOPPED check together with linux_wstatus_maybe_breakpoint.
2910
2911 2016-03-09 Marcin Kościelnicki <koriakin@0x04.net>
2912
2913 * linux-ppc-low.c (ppc_supports_tracepoints): New function.
2914 (struct linux_target_ops): Wire in the above.
2915
2916 2016-03-03 Yao Qi <yao.qi@linaro.org>
2917
2918 * linux-low.c: Update comments to start_step_over.
2919
2920 2016-03-03 Yao Qi <yao.qi@linaro.org>
2921
2922 PR server/19736
2923 * linux-low.c (handle_extended_wait): Set child suspended
2924 if event_lwp->bp_reinsert isn't zero.
2925
2926 2016-03-02 Yao Qi <yao.qi@linaro.org>
2927
2928 * linux-low.c (linux_resume_one_lwp_throw): Replace code with
2929 enqueue_pending_signal.
2930
2931 2016-03-02 Marcin Kościelnicki <koriakin@0x04.net>
2932
2933 * tracepoint.c (cmd_qtstart): Only set ipa_tdesc_idx if agent
2934 is actually loaded.
2935
2936 2016-02-25 Marcin Kościelnicki <koriakin@0x04.net>
2937
2938 * linux-s390-low.c (s390_num_regs_3264): Define on 31-bit too.
2939 (s390_regmap_3264) [!__s390x__]: New global.
2940 (s390_collect_ptrace_register): Skip map entries containing -1.
2941 (s390_supply_ptrace_register): Ditto.
2942 (s390_fill_gprs_high): New function.
2943 (s390_store_gprs_high): New function.
2944 (s390_regsets): Add NT_S390_HIGH_GPRS.
2945 (s390_get_hwcap): Enable on 31-bit.
2946 (have_hwcap_s390_high_gprs): Enable on 31-bit.
2947 (s390_arch_setup): Enable detection of high GPRs, TDB, VX on 31-bit.
2948 Detect NT_S390_HIGH_GPRS.
2949 (s390_usrregs_info_3264): Enable on 31-bit.
2950 (s390_regs_info): Enable regs_info_3264 on 31-bit.
2951 (initialize_low_arch): Initialize s390_regsets_info_3264 on 31-bit.
2952
2953 2016-02-25 Marcin Kościelnicki <koriakin@0x04.net>
2954
2955 PR gdb/13808
2956 * Makefile.in: Add i386-*-linux-ipa.o and amd64-*-linux-ipa.o.
2957 * configure.srv: Ditto.
2958 * linux-aarch64-ipa.c (get_ipa_tdesc): New function.
2959 (initialize_low_tracepoint): Remove ipa_tdesc assignment.
2960 * linux-amd64-ipa.c: Add "linux-x86-tdesc.h" include.
2961 (init_registers_amd64_linux): Remove prototype.
2962 (tdesc_amd64_linux): Remove declaration.
2963 (get_ipa_tdesc): New function.
2964 (initialize_low_tracepoint): Remove ipa_tdesc assignment,
2965 initialize remaining tdescs.
2966 * linux-i386-ipa.c: Add "linux-x86-tdesc.h" include.
2967 (init_registers_i386_linux): Remove prototype.
2968 (tdesc_i386_linux): Remove declaration.
2969 (get_ipa_tdesc): New function.
2970 (initialize_low_tracepoint): Remove ipa_tdesc assignment,
2971 initialize remaining tdescs.
2972 * linux-low.c (linux_get_ipa_tdesc_idx): New function.
2973 (linux_target_ops): wire in linux_get_ipa_tdesc_idx.
2974 * linux-low.h (struct linux_target_ops): Add get_ipa_tdesc_idx.
2975 * linux-x86-low.c: Move tdesc declarations to linux-x86-tdesc.h.
2976 (x86_get_ipa_tdesc_idx): New function.
2977 (the_low_target): Wire in x86_get_ipa_tdesc_idx.
2978 * linux-x86-tdesc.h: New file.
2979 * target.h (struct target_ops): Add get_ipa_tdesc_idx.
2980 (target_get_ipa_tdesc_idx): New macro.
2981 * tracepoint.c (ipa_tdesc_idx): New macro.
2982 (struct ipa_sym_addresses): Add addr_ipa_tdesc_idx.
2983 (symbol_list): Add ipa_tdesc_idx.
2984 (cmd_qtstart): Write ipa_tdesc_idx in the target.
2985 (ipa_tdesc): Remove.
2986 (ipa_tdesc_idx): New variable.
2987 (get_context_regcache): Use get_ipa_tdesc.
2988 (gdb_collect): Ditto.
2989 (gdb_probe): Ditto.
2990 * tracepoint.h (get_ipa_tdesc): New prototype.
2991 (ipa_tdesc): Remove.
2992
2993 2016-02-24 Pedro Alves <palves@redhat.com>
2994
2995 * linux-low.c (check_stopped_by_breakpoint): Rename to ...
2996 (save_stop_reason): ... this. Use GDB_ARCH_IS_TRAP_HWBKPT and
2997 handle ambiguous GDB_ARCH_IS_TRAP_BRKPT / GDB_ARCH_IS_TRAP_HWBKPT.
2998 Factor out common code between the USE_SIGTRAP_SIGINFO and
2999 !USE_SIGTRAP_SIGINFO blocks.
3000 (linux_low_filter_event): Call save_stop_reason instead of
3001 check_stopped_by_breakpoint and check_stopped_by_watchpoint.
3002 Update comments.
3003 (linux_wait_1): Update comments.
3004
3005 2016-02-24 Wei-cheng Wang <cole945@gmail.com>
3006
3007 * linux-ppc-low.c (ppc_supports_z_point_type): New function:
3008 (ppc_insert_point, ppc_remove_point): Insert/remove z-packet breakpoints.
3009 (ppc64_emit_ops_vector): Add target ops - ppc_supports_z_point_type,
3010 ppc_insert_point, ppc_remove_point.
3011
3012 2016-02-17 Marcin Kościelnicki <koriakin@0x04.net>
3013
3014 * linux-s390-low.c (s390_supports_z_point_type): New function.
3015 (struct linux_target_ops): Wire s390_supports_z_point_type in.
3016
3017 2016-02-16 Yao Qi <yao.qi@linaro.org>
3018
3019 * linux-arm-low.c (get_next_pcs_syscall_next_pc): Remove argument
3020 PC. Get pc from regcache_read_pc.
3021
3022 2016-02-12 Yao Qi <yao.qi@linaro.org>
3023
3024 * linux-aarch64-low.c (aarch64_get_pc): Call linux_get_pc_64bit
3025 or linux_get_pc_32bit.
3026 (aarch64_set_pc): Call linux_set_pc_64bit or linux_set_pc_32bit.
3027
3028 2016-02-12 Yao Qi <yao.qi@linaro.org>
3029
3030 * linux-arm-low.c (get_next_pcs_ops): Initialize it with
3031 arm_linux_get_next_pcs_fixup.
3032
3033 2016-02-12 Marcin Kościelnicki <koriakin@0x04.net>
3034
3035 * tracepoint.c (x_tracepoint_action_download): Change
3036 write_inferior_data_ptr to write_inferior_data_pointer.
3037 (cmd_qtstart): Likewise.
3038 (write_inferior_data_ptr): Remove.
3039 (download_agent_expr): Change write_inferior_data_ptr to
3040 write_inferior_data_pointer.
3041 (download_tracepoint_1): Likewise.
3042 (download_tracepoint): Likewise.
3043 (download_trace_state_variables): Likewise.
3044
3045 2016-02-11 Wei-cheng Wang <cole945@gmail.com>
3046 Marcin Kościelnicki <koriakin@0x04.net>
3047
3048 * tracepoint.c (struct tracepoint_action_ops): Remove.
3049 (struct tracepoint_action): Remove ops.
3050 (m_tracepoint_action_download, r_tracepoint_action_download)
3051 (x_tracepoint_action_download, l_tracepoint_action_download): Adjust
3052 size and offset accordingly.
3053 (m_tracepoint_action_ops, r_tracepoint_action_ops)
3054 (x_tracepoint_action_ops, l_tracepoint_action_ops): Remove.
3055 (tracepoint_action_send, tracepoint_action_download): New functions.
3056 Helpers for trace action handlers.
3057 (add_tracepoint_action): Remove setup actions ops.
3058 (download_tracepoint_1, tracepoint_send_agent): Call helper functions.
3059
3060 2016-02-10 Yao Qi <yao.qi@linaro.org>
3061
3062 * regcache.c (regcache_raw_read_unsigned): Clear *VAL.
3063
3064 2016-02-09 Simon Marchi <simon.marchi@ericsson.com>
3065
3066 * configure.ac: Use AC_CONFIG_FILES instead of passing arguments
3067 to AC_OUTPUT.
3068 * configure: Regenerate.
3069
3070 2016-02-09 Simon Marchi <simon.marchi@ericsson.com>
3071
3072 * linux-aarch64-low.c (aarch64_linux_siginfo_fixup): Change
3073 void * to gdb_byte *.
3074 * linux-low.c (siginfo_fixup): Likewise.
3075 (linux_xfer_siginfo): Likewise.
3076 * linux-low.h (struct linux_target_ops) <siginfo_fixup>:
3077 Likewise.
3078 * linux-x86-low.c (x86_siginfo_fixup): Likewise.
3079
3080 2016-02-02 Walfred Tedeschi <walfred.tedeschi@intel.com>
3081
3082 * configure.srv (x86_64-*-linux*): Add amd64-linux-siginfo.o
3083 to srv_tgtobj.
3084 (i[34567]86-*-linux*): Add amd64-linux-siginfo.o
3085 to srv_tgtobj.
3086 * linux-x86-low.c [__x86_64__]: Include
3087 "nat/amd64-linux-siginfo.h".
3088 (compat_siginfo_from_siginfo, siginfo_from_compat_siginfo)
3089 (compat_x32_siginfo_from_siginfo, siginfo_from_compat_x32_siginfo)
3090 (compat_timeval, compat_sigval, compat_x32_clock, cpt_si_pid)
3091 (cpt_si_uid, cpt_si_timerid, cpt_si_overrun, cpt_si_status)
3092 (cpt_si_utime, cpt_si_stime, cpt_si_ptr, cpt_si_addr, cpt_si_band)
3093 (cpt_si_fd, si_timerid, si_overrun): Move from
3094 nat/amd64-linux-siginfo.c.
3095 * Makefile.in (amd64-linux-siginfo.o:): New rule.
3096
3097 2016-01-28 Simon Marchi <simon.marchi@ericsson.com>
3098
3099 * server.c (skip_to_semicolon): Remove.
3100 (process_point_options): Use strchrnul instead of
3101 skip_to_semicolon.
3102
3103 2016-01-26 Yao Qi <yao.qi@linaro.org>
3104
3105 * linux-arm-low.c (arm_gdbserver_get_next_pcs): Remove argument pc.
3106 * linux-low.c (install_software_single_step_breakpoints): Don't
3107 call regcache_read_pc.
3108 * linux-low.h (struct linux_target_ops) <get_next_pcs>: Remove
3109 argument pc.
3110
3111 2016-01-26 Yao Qi <yao.qi@linaro.org>
3112
3113 * linux-low.c (install_software_single_step_breakpoints): Call
3114 regcache_read_pc instead of get_pc.
3115
3116 2016-01-26 Yao Qi <yao.qi@linaro.org>
3117
3118 * remote-utils.c (remote_close) [!USE_WIN32API]: Ignore SIGIO.
3119 (unblock_async_io): Rename to ...
3120 (block_unblock_async_io): ... it. New function.
3121 (enable_async_io): Don't install SIGIO handler. Unblock it
3122 instead.
3123 (disable_async_io): Don't ignore SIGIO. Block it instead.
3124 (initialize_async_io): Install SIGIO handler. Don't call
3125 unblock_async_io.
3126
3127 2016-01-26 Yao Qi <yao.qi@linaro.org>
3128
3129 * remote-utils.c (getpkt): If the buffer isn't empty, and the
3130 first character is '\003', call *the_target->request_interrupt.
3131
3132 2016-01-25 Yao Qi <yao.qi@linaro.org>
3133
3134 * remote-utils.c (new_thread_notify): Remove.
3135 (dead_thread_notify): Likewise.
3136 * remote-utils.h (new_thread_notify): Remove declaration.
3137 (dead_thread_notify): Likewise.
3138
3139 2016-01-23 Marcin Kościelnicki <koriakin@0x04.net>
3140
3141 * gdb.trace/pending.exp: Fix expected message on continue.
3142
3143 2016-01-22 Marcin Kościelnicki <koriakin@0x04.net>
3144
3145 * tracepoint.c (write_inferior_data_ptr): Cast to uintptr_t, so that
3146 it works properly on big-endian machines where sizeof (CORE_ADDR)
3147 != sizeof (void *).
3148
3149 2016-01-21 Pedro Alves <palves@redhat.com>
3150
3151 * Makefile.in (COMPILER_CFLAGS, CXXFLAGS): New.
3152 (INTERNAL_CFLAGS_BASE): Use COMPILER_CFLAGS instead of CFLAGS.
3153 * configure: Regenerate.
3154
3155 2016-01-21 Yao Qi <yao.qi@linaro.org>
3156
3157 * linux-arm-low.c (arm_sigreturn_next_pc): Add parameter
3158 is_thumb and set it according to CPSR saved on the stack.
3159 (get_next_pcs_syscall_next_pc): Pass is_thumb to
3160 arm_sigreturn_next_pc.
3161
3162 2016-01-18 Yao Qi <yao.qi@linaro.org>
3163
3164 * linux-low.c (linux_set_pc_64bit): New function.
3165 (linux_get_pc_64bit): New function.
3166 * linux-low.h (linux_set_pc_64bit, linux_get_pc_64bit):
3167 Declare.
3168 * linux-sparc-low.c (debug_threads): Remove declaration.
3169 (sparc_get_pc): Remove.
3170 (the_low_target): Use linux_get_pc_64bit instead of
3171 sparc_get_pc.
3172 * linux-tile-low.c (tile_get_pc, tile_set_pc): Remove.
3173 (the_low_target): Use linux_get_pc_64bit and
3174 linux_set_pc_64bit.
3175
3176 2016-01-18 Yao Qi <yao.qi@linaro.org>
3177
3178 * linux-arm-low.c (debug_threads): Remove declaration.
3179 (arm_get_pc, arm_set_pc): Remove.
3180 (the_low_target): Use linux_get_pc_32bit and
3181 linux_set_pc_32bit.
3182 * linux-bfin-low.c (bfin_get_pc, bfin_set_pc): Remove.
3183 (the_low_target): Use linux_get_pc_32bit and
3184 linux_set_pc_32bit.
3185 * linux-cris-low.c (debug_threads): Remove declaration.
3186 (cris_get_pc, cris_set_pc,): Remove.
3187 (the_low_target): Use linux_get_pc_32bit and
3188 linux_set_pc_32bit.
3189 * linux-crisv32-low.c (debug_threads): Remove declaration.
3190 (cris_get_pc, cris_set_pc): Remove.
3191 (the_low_target): Use linux_get_pc_32bit and
3192 linux_set_pc_32bit.
3193 * linux-low.c: Include inttypes.h.
3194 (linux_get_pc_32bit, linux_set_pc_32bit): New functions.
3195 * linux-low.h (linux_get_pc_32bit, linux_set_pc_32bit): Declare.
3196 * linux-m32r-low.c (m32r_get_pc, m32r_set_pc): Remove.
3197 (the_low_target): Use linux_get_pc_32bit and
3198 linux_set_pc_32bit.
3199 * linux-m68k-low.c (m68k_get_pc, m68k_set_pc): Remove.
3200 (the_low_target): Use linux_get_pc_32bit and
3201 linux_set_pc_32bit.
3202 * linux-nios2-low.c (nios2_get_pc, nios2_set_pc): Remove.
3203 (the_low_target): Use linux_get_pc_32bit and
3204 linux_set_pc_32bit.
3205 * linux-sh-low.c (sh_get_pc, sh_set_pc): Remove.
3206 (the_low_target): Use linux_get_pc_32bit and
3207 linux_set_pc_32bit.
3208 * linux-xtensa-low.c (xtensa_get_pc, xtensa_set_pc): Remove.
3209 (the_low_target): Use linux_get_pc_32bit and
3210 linux_set_pc_32bit.
3211
3212 2016-01-18 Gary Benson <gbenson@redhat.com>
3213
3214 * configure.ac (AC_FUNC_FORK): New check.
3215 * config.in: Regenerate.
3216 * configure: Likewise.
3217
3218 2016-01-14 Yao Qi <yao.qi@linaro.org>
3219
3220 * linux-aarch32-low.c (thumb2_breakpoint): Make it static.
3221 * linux-aarch32-low.h (thumb2_breakpoint): Remove declaration.
3222 * linux-arm-low.c (arm_gdbserver_get_next_pcs): Pass 1 to
3223 arm_get_next_pcs_ctor.
3224
3225 2016-01-12 Josh Stone <jistone@redhat.com>
3226 Philippe Waroquiers <philippe.waroquiers@skynet.be>
3227
3228 * inferiors.h: Include "gdb_vecs.h".
3229 (struct process_info): Add syscalls_to_catch.
3230 * inferiors.c (remove_process): Free syscalls_to_catch.
3231 * remote-utils.c (prepare_resume_reply): Report syscall_entry and
3232 syscall_return stops.
3233 * server.h (UNKNOWN_SYSCALL, ANY_SYSCALL): Define.
3234 * server.c (handle_general_set): Handle QCatchSyscalls.
3235 (handle_query): Report support for QCatchSyscalls.
3236 * target.h (struct target_ops): Add supports_catch_syscall.
3237 (target_supports_catch_syscall): New macro.
3238 * linux-low.h (struct linux_target_ops): Add get_syscall_trapinfo.
3239 (struct lwp_info): Add syscall_state.
3240 * linux-low.c (handle_extended_wait): Mark syscall_state as an entry.
3241 Maintain syscall_state and syscalls_to_catch across exec.
3242 (get_syscall_trapinfo): New function, proxy to the_low_target.
3243 (linux_low_ptrace_options): Enable PTRACE_O_TRACESYSGOOD.
3244 (linux_low_filter_event): Toggle syscall_state entry/return for
3245 syscall traps, and set it ignored for all others.
3246 (gdb_catching_syscalls_p): New function.
3247 (gdb_catch_this_syscall_p): New function.
3248 (linux_wait_1): Handle SYSCALL_SIGTRAP.
3249 (linux_resume_one_lwp_throw): Add PTRACE_SYSCALL possibility.
3250 (linux_supports_catch_syscall): New function.
3251 (linux_target_ops): Install it.
3252 * linux-x86-low.c (x86_get_syscall_trapinfo): New function.
3253 (the_low_target): Install it.
3254
3255 2016-01-12 Mike Frysinger <vapier@gentoo.org>
3256
3257 * acinclude.m4: Include new ../warning.m4 file.
3258 * configure: Regenerated.
3259 * configure.ac: Replace all warning logic with AM_GDB_WARNINGS.
3260
3261 2016-01-12 Mike Frysinger <vapier@gentoo.org>
3262
3263 * ax.c (is_goto_target): Mark static.
3264 * linux-low.c (register_addr): Likewise.
3265 (linux_fetch_registers, linux_store_registers): Likewise.
3266 * mem-break.c (any_persistent_commands): Fix old prototype.
3267 (add_commands_to_breakpoint): Mark static.
3268 * regcache.c (find_register_by_name): Delete unused func.
3269 * remote-utils.c (hex_or_minus_one): Mark static.
3270 * server.c (monitor_show_help): Mark static.
3271 (handle_query, handle_v_cont, handle_v_attach, handle_v_kill,
3272 handle_v_requests): Likewise.
3273
3274 2016-01-12 Pedro Alves <palves@redhat.com>
3275
3276 Remove use of the registered trademark symbol throughout.
3277
3278 2016-01-08 Yao Qi <yao.qi@linaro.org>
3279
3280 * remote-utils.c (getpkt): If c is '\003', call target hook
3281 request_interrupt.
3282
3283 2016-01-06 Yao Qi <yao.qi@linaro.org>
3284
3285 * linux-aarch32-low.h (arm_abi_breakpoint): Move to
3286 linux-aarch32-low.c.
3287 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
3288 (arm_breakpoint_len, thumb_breakpoint_len): Likewise.
3289 (thumb2_breakpoint, thumb2_breakpoint_len): Likewise.
3290 (thumb2_breakpoint): Declare.
3291 * linux-aarch32-low.c (arm_abi_breakpoint): Moved from
3292 linux-aarch32-low.h.
3293 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
3294 (arm_breakpoint_len, thumb_breakpoint_len): Likewise.
3295 (thumb2_breakpoint, thumb2_breakpoint_len): Likewise.
3296
3297 2016-01-01 Joel Brobecker <brobecker@adacore.com>
3298
3299 * gdbreplay.c (gdbreplay_version): Change copyright year in
3300 version message.
3301 * server.c (gdbserver_version): Likewise.
3302
3303 2015-12-28 Patrick Palka <patrick@parcs.ath.cx>
3304
3305 * server.c (crc32_table): Delete.
3306 (crc32): Use libiberty's xcrc32 function.
3307
3308 2015-12-22 Joel Brobecker <brobecker@adacore.com>
3309
3310 * lynx-low.c (lynx_delete_thread_callback): New function.
3311 (lynx_mourn): Properly delete our process and all of its
3312 threads. Remove call to clear_inferiors.
3313
3314 2015-12-22 Joel Brobecker <brobecker@adacore.com>
3315
3316 * target.c (thread_search_callback): Add check that
3317 the thread_stopped target callback is not NULL before
3318 calling it.
3319
3320 2015-12-21 Yao Qi <yao.qi@linaro.org>
3321
3322 * linux-aarch32-low.h [__aarch64__]: Use arm_abi_breakpoint
3323 arm breakpoint.
3324
3325 2015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
3326
3327 * server.c (handle_query): Call target_supports_software_single_step.
3328
3329 2015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
3330
3331 * linux-low.c (single_step): New function.
3332 (linux_resume_one_lwp_throw): Call single_step.
3333 (start_step_over): Likewise.
3334
3335 2015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
3336
3337 * Makefile.in (SFILES): Append arch/arm-linux.c,
3338 arch/arm-get-next-pcs.c.
3339 (arm-linux.o): New rule.
3340 (arm-get-next-pcs.o): New rule.
3341 * configure.srv (arm*-*-linux*): Add arm-get-next-pcs.o,
3342 arm-linux.o.
3343 * linux-aarch32-low.c (arm_abi_breakpoint): Remove macro. Moved
3344 to linux-aarch32-low.c.
3345 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
3346 (arm_breakpoint_len, thumb_breakpoint): Likewise.
3347 (thumb_breakpoint_len, thumb2_breakpoint): Likewise.
3348 (thumb2_breakpoint_len): Likewise.
3349 (arm_is_thumb_mode): Make non-static.
3350 * linux-aarch32-low.h (arm_abi_breakpoint): New macro. Moved
3351 from linux-aarch32-low.c.
3352 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
3353 (arm_breakpoint_len, thumb_breakpoint): Likewise.
3354 (thumb_breakpoint_len, thumb2_breakpoint): Likewise.
3355 (thumb2_breakpoint_len): Likewise.
3356 (arm_is_thumb_mode): New declaration.
3357 * linux-arm-low.c: Include arch/arm-linux.h
3358 aarch/arm-get-next-pcs.h, sys/syscall.h.
3359 (get_next_pcs_ops): New struct.
3360 (get_next_pcs_addr_bits_remove): New function.
3361 (get_next_pcs_is_thumb): New function.
3362 (get_next_pcs_read_memory_unsigned_integer): Likewise.
3363 (arm_sigreturn_next_pc): Likewise.
3364 (get_next_pcs_syscall_next_pc): Likewise.
3365 (arm_gdbserver_get_next_pcs): Likewise.
3366 (struct linux_target_ops) <arm_gdbserver_get_next_pcs>:
3367 Initialize.
3368 * linux-low.h: Move CORE_ADDR vector definition to gdb_vecs.h.
3369 * server.h: Include gdb_vecs.h.
3370
3371 2015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
3372
3373 * Makefile.in (SFILES): Append common/common-regcache.c.
3374 (OBS): Append common-regcache.o.
3375 (common-regcache.o): New rule.
3376 * regcache.c (init_register_cache): Initialize cache to
3377 REG_UNAVAILABLE.
3378 (regcache_raw_read_unsigned): New function.
3379 * regcache.h (REG_UNAVAILABLE, REG_VALID): Replaced by shared
3380 register_status enum.
3381
3382 2015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
3383
3384 * linux-aarch64-low.c (the_low_targets): Rename
3385 breakpoint_reinsert_addr to get_next_pcs.
3386 * linux-arm-low.c (the_low_targets): Likewise.
3387 * linux-bfin-low.c (the_low_targets): Likewise.
3388 * linux-cris-low.c (the_low_targets): Likewise.
3389 * linux-crisv32-low.c (the_low_targets): Likewise.
3390 * linux-low.c (can_software_single_step): Likewise.
3391 (install_software_single_step_breakpoints): New function.
3392 (start_step_over): Use install_software_single_step_breakpoints.
3393 * linux-low.h: New CORE_ADDR vector.
3394 (struct linux_target_ops) Rename breakpoint_reinsert_addr to
3395 get_next_pcs.
3396 * linux-mips-low.c (the_low_targets): Likewise.
3397 * linux-nios2-low.c (the_low_targets): Likewise.
3398 * linux-sparc-low.c (the_low_targets): Likewise.
3399
3400 2015-12-17 Pedro Alves <palves@redhat.com>
3401
3402 * linux-low.c (linux_kill_one_lwp): Remove references to
3403 LinuxThreads.
3404 (kill_lwp): Remove HAVE_TKILL_SYSCALL check. No longer fall back
3405 to 'kill'.
3406 (linux_init_signals): Delete.
3407 (initialize_low): Adjust.
3408 * thread-db.c (thread_db_init): Remove LinuxThreads reference.
3409
3410 2015-12-16 Pedro Alves <palves@redhat.com>
3411
3412 * configure.ac (compiler warning flags): When testing a
3413 -Wno-foo option, check whether -Wfoo works instead.
3414 * configure: Regenerate.
3415
3416 2015-12-11 Don Breazeal <donb@codesourcery.com>
3417
3418 * server.c (process_serial_event): Don't exit from gdbserver
3419 in remote mode if there are still active inferiors.
3420
3421 2015-12-11 Yao Qi <yao.qi@linaro.org>
3422
3423 * linux-aarch64-low.c (aarch64_breakpoint_at): Call
3424 arm_breakpoint_at if the process is 32-bit.
3425
3426 2015-12-11 Yao Qi <yao.qi@linaro.org>
3427
3428 * linux-aarch32-low.c [__aarch64__]: Use arm_abi_breakpoint
3429 arm breakpoint.
3430
3431 2015-12-07 Yao Qi <yao.qi@linaro.org>
3432
3433 * configure.srv: Append arm.o to srv_tgtobj for
3434 aarch64*-*-linux* target.
3435 * linux-aarch32-low.c (arm_abi_breakpoint): New macro. Moved
3436 from linux-arm-low.c.
3437 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
3438 (arm_breakpoint_len, thumb_breakpoint): Likewise.
3439 (thumb_breakpoint_len, thumb2_breakpoint): Likewise.
3440 (thumb2_breakpoint_len): Likewise.
3441 (arm_is_thumb_mode, arm_breakpoint_at): Likewise.
3442 (arm_breakpoint_kinds): Likewise.
3443 (arm_breakpoint_kind_from_pc): Likewise.
3444 (arm_sw_breakpoint_from_kind): Likewise.
3445 (arm_breakpoint_kind_from_current_state): Likewise.
3446 * linux-aarch32-low.h (arm_breakpoint_kind_from_pc): Declare.
3447 (arm_sw_breakpoint_from_kind): Declare.
3448 (arm_breakpoint_kind_from_current_state): Declare.
3449 (arm_breakpoint_at): Declare.
3450 * linux-aarch64-low.c (aarch64_sw_breakpoint_from_kind): Call
3451 arm_sw_breakpoint_from_kind if process is 32-bit.
3452 (aarch64_breakpoint_kind_from_pc): New function.
3453 (aarch64_breakpoint_kind_from_current_state): New function.
3454 (the_low_target): Initialize fields breakpoint_kind_from_pc
3455 and breakpoint_kind_from_current_state.
3456 * linux-arm-low.c (arm_breakpoint_kinds): Move to
3457 linux-aarch32-low.c.
3458 (arm_abi_breakpoint, arm_eabi_breakpoint): Likewise.
3459 (arm_breakpoint, arm_breakpoint_len): Likewise.
3460 (thumb_breakpoint, thumb_breakpoint_len): Likewise.
3461 (thumb2_breakpoint, thumb2_breakpoint_len): Likewise.
3462 (arm_is_thumb_mode): Likewise.
3463 (arm_breakpoint_at): Likewise.
3464 (arm_breakpoint_kind_from_pc): Likewise.
3465 (arm_sw_breakpoint_from_kind): Likewise.
3466 (arm_breakpoint_kind_from_current_state): Likewise.
3467
3468 Revert:
3469 2015-08-04 Yao Qi <yao.qi@linaro.org>
3470
3471 * linux-aarch64-low.c (aarch64_supports_z_point_type): Return
3472 0 for Z_PACKET_SW_BP if it may be used in multi-arch debugging.
3473 * server.c (extended_protocol): Remove "static".
3474 * server.h (extended_protocol): Declare it.
3475
3476 2015-12-04 Josh Stone <jistone@redhat.com>
3477
3478 * target.h (struct target_ops) <arch_setup>: Rename to ...
3479 (struct target_ops) <post_create_inferior>: ... this.
3480 (target_arch_setup): Rename to ...
3481 (target_post_create_inferior): ... this, calling post_create_inferior.
3482 * server.c (start_inferior): Update target_arch_setup calls to
3483 target_post_create_inferior.
3484 * linux-low.c (linux_low_ptrace_options): Forward declare.
3485 (linux_arch_setup): Update its comment for general use.
3486 (linux_post_create_inferior): New, run arch_setup and setup ptrace.
3487 (struct linux_target_ops): Use linux_post_create_inferior.
3488 * lynx-low.c (struct lynx_target_ops): Update arch_setup stub comment
3489 to post_create_inferior.
3490 * nto-low.c (struct nto_target_ops): Likewise.
3491 * spu-low.c (struct spu_target_ops): Likewise.
3492 * win32-low.c (struct win32_target_ops): Likewise.
3493
3494 2015-12-03 Antoine Tremblay <antoine.tremblay@ericsson.com>
3495
3496 * linux-arm-low.c: Remove duplicate arch/arm.h include.
3497
3498 2015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
3499
3500 * linux-arm-low.c (arm_reinsert_addr): Remove function.
3501 (struct linux_target_ops <breakpoint_reinsert_addr>: Set to NULL.
3502 * linux-cris-low.c (cris_reinsert_addr> Remove function.
3503 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
3504 * linux-crisv32-low.c (cris_reinsert_addr): Remove function.
3505 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
3506 * linux-mips-low.c (mips_reinsert_addr): Remove function.
3507 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
3508 * linux-nios2-low.c (nios2_reinsert_addr): Remove function.
3509 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
3510 * linux-sparc-low.c (sparc_reinsert_addr): Remove function.
3511 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
3512
3513 2015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
3514
3515 * linux-low.c (linux_look_up_symbols): Don't call
3516 linux_supports_traceclone.
3517 * linux-low.h (thread_db_init): Remove use_events argument.
3518 * thread-db.c (thread_db_use_event): Remove global variable.
3519 (struct thread_db) <td_thr_event_enable_p>: Remove field.
3520 (struct thread_db) <td_create_bp>: Remove field.
3521 (thread_db_create_event): Remove function.
3522 (thread_db_enable_reporting): Likewise.
3523 (find_one_thread): Don't check for thread_db_use_events.
3524 (attach_thread): Likewise.
3525 (thread_db_load_search): Remove td_thr_event_enable_p initialization.
3526 (try_thread_db_load_1): Don't check for thread_db_use_events.
3527 (thread_db_init): Remove use_events argument and thread events
3528 handling.
3529 (remove_thread_event_breakpoints): Remove function.
3530 (thread_db_detach): Remove call to remove_thred_event_breakpoints.
3531
3532 2015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
3533
3534 * linux-aarch64-low.c (aarch64_supports_hardware_single_step):
3535 New function.
3536 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
3537 * linux-arm-low.c (arm_supports_hardware_single_step): New function.
3538 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
3539 * linux-bfin-low.c (bfin_supports_hardware_single_step): New function.
3540 (struct linux_target_ops) <bfin_supports_hardware_single_step>:
3541 Initialize.
3542 * linux-crisv32-low.c (cris_supports_hardware_single_step):
3543 New function.
3544 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
3545 * linux-low.c (can_hardware_single_step): Use
3546 supports_hardware_single_step.
3547 (can_software_single_step): New function.
3548 (start_step_over): Call can_software_single_step.
3549 (linux_supports_hardware_single_step): New function.
3550 (struct target_ops) <supports_software_single_step>: Initialize.
3551 * linux-low.h (struct linux_target_ops)
3552 <supports_hardware_single_step>: Initialize.
3553 * linux-m32r-low.c (m32r_supports_hardware_single_step): New function.
3554 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
3555 * linux-ppc-low.c (ppc_supports_hardware_single_step): New function.
3556 (struct linux_target_ops) <supports_hardware_single_step> Initialize.
3557 * linux-s390-low.c (s390_supports_hardware_single_step): New function.
3558 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
3559 * linux-sh-low.c (sh_supports_hardware_single_step): New function.
3560 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
3561 * linux-tic6x-low.c (tic6x_supports_hardware_single_step): New function.
3562 (struct linux_target_ops) <tic6x_supports_hardware_single_step>:
3563 Initialize.
3564 * linux-tile-low.c (tile_supports_hardware_single_step): New function.
3565 (struct linux_target_ops) <tile_supports_hardware_single_step>:
3566 Initialize.
3567 * linux-x86-low.c (x86_supports_hardware_single_step) New function.
3568 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
3569 * linux-xtensa-low.c (xtensa_supports_hardware_single_step):
3570 New function.
3571 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
3572 * target.h (struct target_ops): <supports_software_single_step>:
3573 New field.
3574 (target_supports_software_single_step): New macro.
3575
3576 2015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
3577
3578 * linux-low.c (linux_wait_1): Fix pc advance condition.
3579 * mem-break.c (reinsert_breakpoint_inserted_here): New function.
3580 * mem-break.h (reinsert_breakpoint_inserted_here): New declaration.
3581
3582 2015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
3583
3584 * linux-arm-low.c (arm_is_thumb_mode): New function.
3585 (arm_breakpoint_at): Use arm_is_thumb_mode.
3586 (arm_breakpoint_kind_from_current_state): New function.
3587 (struct linux_target_ops) <breakpoint_kind_from_current_state>:
3588 Initialize.
3589 * linux-low.c (linux_wait_1): Call breakpoint_kind_from_current_state.
3590 (linux_breakpoint_kind_from_current_state): New function.
3591 (struct target_ops <breakpoint_kind_from_current_state>: Initialize.
3592 * linux-low.h (struct linux_target_ops)
3593 <breakpoint_kind_from_current_state>: New field.
3594 * target.h (struct target_ops): Likewise.
3595 (target_breakpoint_kind_from_current_state): New macro.
3596
3597 2015-11-30 Pedro Alves <palves@redhat.com>
3598
3599 * linux-low.c (linux_resume): Wake up the event loop before
3600 returning.
3601
3602 2015-11-30 Pedro Alves <palves@redhat.com>
3603
3604 * mem-break.c (check_gdb_bp_preconditions): Remove current_thread
3605 check.
3606 (set_gdb_breakpoint): If prepare_to_access_memory fails, set *ERR
3607 to -1.
3608 * target.c (struct thread_search): New structure.
3609 (thread_search_callback): New function.
3610 (prev_general_thread): New global.
3611 (prepare_to_access_memory, done_accessing_memory): New functions.
3612 * target.h (prepare_to_access_memory, done_accessing_memory):
3613 Replace macros with function declarations.
3614
3615 2015-11-30 Pedro Alves <palves@redhat.com>
3616
3617 PR 14618
3618 * linux-low.c (linux_wait_1): If the last resumed thread is gone,
3619 report TARGET_WAITKIND_NO_RESUMED.
3620 * remote-utils.c (prepare_resume_reply): Handle
3621 TARGET_WAITKIND_NO_RESUMED.
3622 * server.c (report_no_resumed): New global.
3623 (handle_query) <qSupported>: Handle "no-resumed+". Report
3624 "no-resumed+" support.
3625 (resume): When the target reports TARGET_WAITKIND_NO_RESUMED, only
3626 return error if the client doesn't support no-resumed events.
3627 (push_stop_notification): New function.
3628 (handle_target_event): Use it. Report TARGET_WAITKIND_NO_RESUMED
3629 events if the client supports them.
3630
3631 2015-11-30 Pedro Alves <palves@redhat.com>
3632
3633 * linux-low.c (thread_still_has_status_pending_p): Don't check
3634 vCont;t here.
3635 (lwp_resumed): New function.
3636 (status_pending_p_callback): Return early if the LWP is not
3637 supposed to be resumed.
3638
3639 2015-11-30 Pedro Alves <palves@redhat.com>
3640
3641 * linux-low.c (handle_extended_wait): Assert that the LWP's
3642 waitstatus is TARGET_WAITKIND_IGNORE. If GDB wants to hear about
3643 thread create events, leave the new child's status pending.
3644 (linux_low_filter_event): If GDB wants to hear about thread exit
3645 events, leave the LWP marked dead and don't delete it.
3646 (linux_wait_for_event_filtered): Don't check for thread exit.
3647 (filter_exit_event): New function.
3648 (linux_wait_1): Use it, when returning an exit event.
3649 (linux_resume_one_lwp_throw): Assert that the LWP's
3650 waitstatus is TARGET_WAITKIND_IGNORE.
3651 * remote-utils.c (prepare_resume_reply): Handle
3652 TARGET_WAITKIND_THREAD_CREATED and TARGET_WAITKIND_THREAD_EXITED.
3653 * server.c (report_thread_events): New global.
3654 (handle_general_set): Handle QThreadEvents.
3655 (handle_query) <qSupported>: Handle and report QThreadEvents+;
3656 (handle_target_event): Handle TARGET_WAITKIND_THREAD_CREATED and
3657 TARGET_WAITKIND_THREAD_EXITED.
3658 * server.h (report_thread_events): Declare.
3659
3660 2015-11-30 Pedro Alves <palves@redhat.com>
3661
3662 * linux-low.c (resume_stopped_resumed_lwps): Don't check whether
3663 the thread's last_resume_kind was resume_stop.
3664
3665 2015-11-30 Pedro Alves <palves@redhat.com>
3666
3667 * linux-low.c (linux_attach): In non-stop mode, wait for one stop
3668 before returning.
3669
3670 2015-11-30 Pedro Alves <palves@redhat.com>
3671
3672 * server.c (handle_v_requests): Handle vCtrlC.
3673
3674 2015-11-30 Pedro Alves <palves@redhat.com>
3675
3676 * gdbthread.h (find_any_thread_of_pid): Declare.
3677 * inferiors.c (thread_of_pid, find_any_thread_of_pid): New
3678 functions.
3679 * server.c (handle_query): If current_thread is NULL, look for
3680 another thread of the selected process.
3681
3682 2015-11-26 Daniel Colascione <dancol@dancol.org>
3683 Simon Marchi <simon.marchi@ericsson.com>
3684
3685 * linux-low.c (linux_target_ops): Use linux_proc_tid_get_name.
3686 * server.c (handle_qxfer_threads_worker): Refactor to include thread
3687 name in reply.
3688 * target.h (struct target_ops) <thread_name>: New field.
3689 (target_thread_name): New macro.
3690
3691 2015-11-23 Joel Brobecker <brobecker@adacore.com>
3692
3693 * regcache.h (regcache_invalidate_pid): Add declaration.
3694 * regcache.c (regcache_invalidate_pid): New function, extracted
3695 from regcache_invalidate.
3696 (regcache_invalidate): Reimplement using regcache_invalidate_pid.
3697 Add trivial documentation comment.
3698 * lynx-low.c: Use regcache_invalidate_pid instead of
3699 regcache_invalidate.
3700
3701 2015-11-23 Joel Brobecker <brobecker@adacore.com>
3702
3703 * configure.ac: Do not call AC_CHECK_TYPES for Elf32_auxv_t
3704 and Elf64_auxv_t if the target is Android.
3705
3706 2015-11-22 Doug Evans <xdje42@gmail.com>
3707
3708 * target.h: #include <sys/types.h>.
3709
3710 2015-11-19 Pedro Alves <palves@redhat.com>
3711
3712 * linux-low.c (linux_process_qsupported): Change prototype.
3713 Adjust.
3714 * linux-low.h (struct linux_target_ops) <process_qsupported>:
3715 Change prototype.
3716 * linux-x86-low.c (x86_linux_process_qsupported): Change prototype
3717 and adjust to loop over all features.
3718 * server.c (handle_query) <qSupported>: Adjust to call
3719 target_process_qsupported once, passing it a vector of unprocessed
3720 features.
3721 * target.h (struct target_ops) <process_qsupported>: Change
3722 prototype.
3723 (target_process_qsupported): Adjust.
3724
3725 2015-11-19 Pedro Alves <palves@redhat.com>
3726
3727 * configure.ac (ERROR_ON_WARNING): Don't check whether in C++
3728 mode.
3729 * configure: Regenerate.
3730
3731 2015-11-19 Pedro Alves <palves@redhat.com>
3732
3733 * configure: Regenerate.
3734
3735 2015-11-19 Yao Qi <yao.qi@linaro.org>
3736
3737 * linux-aarch64-low.c (emit_data_processing_reg): Change opcode
3738 type to uint32_t.
3739
3740 2015-11-19 Yao Qi <yao.qi@linaro.org>
3741
3742 * linux-aarch64-low.c (enum aarch64_operand_type): New.
3743 (struct aarch64_operand): Move enum out.
3744
3745 2015-11-19 Yao Qi <yao.qi@linaro.org>
3746
3747 * linux-aarch64-low.c (aarch64_fill_fpregset): Cast buf to
3748 struct user_fpsimd_state *.
3749 (aarch64_store_fpregset): Likewise.
3750
3751 2015-11-19 Yao Qi <yao.qi@linaro.org>
3752
3753 * linux-aarch64-low.c (aarch64_fill_gregset): Cast buf to
3754 struct user_pt_regs *.
3755 (aarch64_store_gregset): Likewise.
3756
3757 2015-11-18 Pedro Alves <palves@redhat.com>
3758
3759 * Makefile.in (all_object_files): Add $IPA_OBJS.
3760
3761 2015-11-17 Pedro Alves <palves@redhat.com>
3762
3763 * win32-low.c (win32_resume): Use gdb_signal_from_host,
3764 GDB_SIGNAL_0 and gdb_signal_to_string.
3765
3766 2015-11-17 Pedro Alves <palves@redhat.com>
3767
3768 * win32-low.c (handle_output_debug_string): Remove parameter.
3769 (win32_kill): Remove our_status local and adjust call to
3770 handle_output_debug_string.
3771 (get_child_debug_event): Adjust call to
3772 handle_output_debug_string.
3773
3774 2015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
3775
3776 * linux-mips-low.c (mips_fill_gregset): Add cast.
3777 (mips_store_gregset): Likewise.
3778 (mips_fill_fpregset): Likewise.
3779 (mips_store_fpregset): Likewise.
3780
3781 2015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
3782
3783 * linux-mips-low.c (mips_add_watchpoint): Rename private to
3784 priv.
3785
3786 2015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
3787
3788 * linux-mips-low.c (mips_linux_new_thread): Change type of
3789 watch_type to enum target_hw_bp_type.
3790
3791 2015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
3792
3793 * linux-arm-low.c (raw_bkpt_type_to_arm_hwbp_type):
3794 Change return type to arm_hwbp_type.
3795
3796 2015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
3797
3798 * linux-aarch32-low.c (arm_fill_gregset): Add cast.
3799 (arm_store_gregset): Likewise.
3800 * linux-arm-low.c (arm_get_hwcap): Likewise.
3801 (arm_read_description): Likewise.
3802
3803 2015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
3804
3805 * linux-aarch32-low.c (aarch32_regsets): Use NULL_REGSET.
3806
3807 2015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
3808
3809 * linux-ppc-low.c (ppc_get_hwcap): Add cast.
3810 (ppc_fill_vsxregset): Likewise.
3811 (ppc_store_vsxregset): Likewise.
3812 (ppc_fill_vrregset): Likewise.
3813 (ppc_store_vrregset): Likewise.
3814 (ppc_fill_evrregset): Likewise.
3815 (ppc_store_evrregset): Likewise.
3816
3817 2015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
3818
3819 * linux-ppc-low.c (ppc_usrregs_info): Remove
3820 forward-declaration.
3821 (ppc_arch_setup): Move lower in file.
3822
3823 2015-10-30 Simon Marchi <simon.marchi@ericsson.com>
3824
3825 * proc-service.c (ps_pdread): Change CORE_ADDR cast to uintptr_t.
3826 (ps_pdwrite): Likewise.
3827
3828 2015-10-29 Henrik Wallin <henrik.wallin@windriver.com>
3829
3830 * linux-arm-low.c (arm_new_thread): Move pointer dereference
3831 to after assert checks.
3832
3833 2015-10-29 Simon Marchi <simon.marchi@ericsson.com>
3834
3835 * proc-service.c (ps_pdread): Add/adjust casts.
3836 (ps_pdwrite): Add/adjust casts.
3837
3838 2015-10-29 Simon Marchi <simon.marchi@polymtl.ca>
3839
3840 * server.c (handle_search_memory_1): Cast return value of
3841 memmem.
3842
3843 2015-10-29 Simon Marchi <simon.marchi@polymtl.ca>
3844
3845 * server.c (write_qxfer_response): Change type of data to
3846 gdb_byte *.
3847
3848 2015-10-29 Pedro Alves <palves@redhat.com>
3849
3850 * mem-break.c (Z_packet_to_bkpt_type): Add cast.
3851
3852 2015-10-29 Pedro Alves <palves@redhat.com>
3853
3854 * tracepoint.c (clear_installed_tracepoints): Add casts.
3855
3856 2015-10-29 Pedro Alves <palves@redhat.com>
3857
3858 * server.c (handle_v_cont, process_serial_event): Add enum
3859 gdb_signal casts to signal parsing code.
3860
3861 2015-10-29 Pedro Alves <palves@redhat.com>
3862
3863 * linux-low.h (NULL_REGSET): Define.
3864 * linux-aarch64-low.c (aarch64_regsets): Use NULL_REGSET.
3865 * linux-arm-low.c (arm_regsets): Likewise.
3866 * linux-crisv32-low.c (cris_regsets): Likewise.
3867 * linux-m68k-low.c (m68k_regsets): Likewise.
3868 * linux-mips-low.c (mips_regsets): Likewise.
3869 * linux-nios2-low.c (nios2_regsets): Likewise.
3870 * linux-ppc-low.c (ppc_regsets): Likewise.
3871 * linux-s390-low.c (s390_regsets): Likewise.
3872 * linux-sh-low.c (sh_regsets): Likewise.
3873 * linux-sparc-low.c (sparc_regsets): Likewise.
3874 * linux-tic6x-low.c (tic6x_regsets): Likewise.
3875 * linux-tile-low.c (tile_regsets): Likewise.
3876 * linux-x86-low.c (x86_regsets): Likewise.
3877 * linux-xtensa-low.c (xtensa_regsets): Likewise.
3878
3879 2015-10-29 Pedro Alves <palves@redhat.com>
3880
3881 * linux-low.h (NULL_REGSET): Define.
3882 * linux-aarch64-low.c (aarch64_regsets): Use NULL_REGSET.
3883 * linux-arm-low.c (arm_regsets): Likewise.
3884 * linux-crisv32-low.c (cris_regsets): Likewise.
3885 * linux-m68k-low.c (m68k_regsets): Likewise.
3886 * linux-mips-low.c (mips_regsets): Likewise.
3887 * linux-nios2-low.c (nios2_regsets): Likewise.
3888 * linux-ppc-low.c (ppc_regsets): Likewise.
3889 * linux-s390-low.c (s390_regsets): Likewise.
3890 * linux-sh-low.c (sh_regsets): Likewise.
3891 * linux-sparc-low.c (sparc_regsets): Likewise.
3892 * linux-tic6x-low.c (tic6x_regsets): Likewise.
3893 * linux-tile-low.c (tile_regsets): Likewise.
3894 * linux-x86-low.c (x86_regsets): Likewise.
3895 * linux-xtensa-low.c (xtensa_regsets): Likewise.
3896
3897 2015-10-26 Doug Evans <dje@google.com>
3898
3899 * linux-low.c (__SIGRTMIN): Move to nat/linux-nat.h.
3900
3901 2015-10-26 Doug Evans <dje@google.com>
3902
3903 * linux-low.c (W_STOPCODE): Moved to common/gdb_wait.h.
3904
3905 2015-10-26 Doug Evans <dje@google.com>
3906
3907 * thread-db.c (find_one_thread): Cast ti.ti_tid to unsigned long
3908 for debug_printf.
3909 (attach_thread, find_new_threads_callback): Ditto.
3910
3911 2015-10-23 Antoine Tremblay <antoine.tremblay@ericsson.com>
3912
3913 * mem-break.h (set_breakpoint_data): Remove.
3914
3915 2015-10-23 Antoine Tremblay <antoine.tremblay@ericsson.com>
3916
3917 * nto-low.c (nto_sw_breakpoint_from_kind): New function.
3918 (struct target_ops) <sw_breakpoint_from_kind>: Initialize.
3919 (initialize_low): Remove set_breakpoint_data call.
3920 * spu-low.c (spu_sw_breakpoint_from_kind): New function.
3921 (struct target_ops) <sw_breakpoint_from_kind>: Iniitalize.
3922 (initialize_low): Remove set_breakpoint_data call.
3923 * win32-low.c (win32_sw_breakpoint_from_kind): New function.
3924 (struct target_ops) <sw_breakpoint_from_kind>: Initialize.
3925 (initialize_low): Remove set_breakpoint_data call.
3926
3927 2015-10-23 Antoine Tremblay <antoine.tremblay@ericsson.com>
3928
3929 * linux-low.c (default_breakpoint_kind_from_pc): Move to target.c.
3930 * mem-break.c (set_breakpoint_at): Use target_breakpoint_kind_from_pc.
3931 * target.c (default_breakpoint_kind_from_pc): Moved from linux-low.c
3932 * target.h (target_breakpoint_kind_from_pc): New macro.
3933
3934 2015-10-22 Antoine Tremblay <antoine.tremblay@ericsson.com>
3935
3936 * linux-low.c (default_breakpoint_kind_from_pc): New function.
3937 (linux_breakpoint_kind_from_pc): Use default_breakpoint_kind_from_pc for
3938 the default breakpoint kind.
3939
3940 2015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
3941
3942 * linux-arm-low.c (arm_supports_z_point_type): Add software
3943 breakpoint support.
3944
3945 2015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
3946
3947 * linux-arm-low.c: Refactor breakpoint definitions.
3948 (arm_breakpoint_at): Adjust for arm_abi_breakpoint.
3949 (arm_sw_breakpoint_from_kind): Adjust for arm_breakpoint.
3950
3951 2015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
3952
3953 * Makefile.in: Add arm.c/o.
3954 * configure.srv: Likewise.
3955 * linux-arm-low.c (arm_breakpoint_kinds): New enum.
3956 (arm_breakpoint_kind_from_pc): New function.
3957 (arm_sw_breakpoint_from_kind): Return proper kind.
3958 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize.
3959
3960 2015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
3961
3962 * linux-low.c (initialize_low): Ajdust for breakpoint global variables
3963 removal.
3964 * mem-break.c : Remove breakpoint_data/breakpoint_len global variables.
3965 (struct raw_breakpoint) <size>: Remove.
3966 (struct raw_breakpoint) <kind>: Add.
3967 (bp_size): New function.
3968 (bp_opcode): Likewise.
3969 (find_raw_breakpoint_at): Adjust for kind.
3970 (insert_memory_breakpoint): Adjust for kind call bp_size,bp_opcode.
3971 (remove_memory_breakpoint): Adjust for kind call bp_size.
3972 (set_raw_breakpoint_at): Adjust for kind.
3973 (set_breakpoint): Likewise.
3974 (set_breakpoint_at): Call breakpoint_kind_from_pc.
3975 (delete_raw_breakpoint): Adjust for kind.
3976 (delete_breakpoint): Likewise.
3977 (find_gdb_breakpoint): Likewise.
3978 (set_gdb_breakpoint_1): Likewise.
3979 (set_gdb_breakpoint): Likewise.
3980 (delete_gdb_breakpoint_1): Likewise.
3981 (delete_gdb_breakpoint): Likewise.
3982 (uninsert_raw_breakpoint): Likewise.
3983 (reinsert_raw_breakpoint): Likewise.
3984 (set_breakpoint_data): Remove.
3985 (validate_inserted_breakpoint): Adjust for kind call bp_size,bp_opcode.
3986 (check_mem_read): Adjust for kind call bp_size.
3987 (check_mem_write): Adjust for kind call bp_size,bp_opcode.
3988 (clone_one_breakpoint): Adjust for kind.
3989 * mem-break.h (set_gdb_breakpoint): Likewise.
3990 (delete_gdb_breakpoint): Likewise.
3991 * server.c (process_serial_event): Likewise.
3992
3993 2015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
3994
3995 * linux-aarch64-low.c (aarch64_sw_breakpoint_from_kind): New function.
3996 (struct linux_target_ops) <breakpoint>: Remove.
3997 (struct linux_target_ops) <breakpoint_len>: Remove.
3998 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
3999 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4000 * linux-arm-low.c (arm_breakpoint_kind_from_pc): New function.
4001 (arm_sw_breakpoint_from_kind): New function.
4002 * linux-bfin-low.c (bfin_sw_breakpoint_from_kind): New function.
4003 (struct linux_target_ops) <breakpoint>: Remove.
4004 (struct linux_target_ops) <breakpoint_len>: Remove.
4005 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4006 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4007 * linux-cris-low.c (cris_sw_breakpoint_from_kind): New function.
4008 (struct linux_target_ops) <breakpoint>: Remove.
4009 (struct linux_target_ops) <breakpoint_len>: Remove.
4010 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4011 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4012 * linux-crisv32-low.c (cris_sw_breakpoint_from_kind): New function.
4013 (struct linux_target_ops) <breakpoint>: Remove.
4014 (struct linux_target_ops) <breakpoint_len>: Remove.
4015 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4016 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4017 * linux-low.c (linux_wait_1): Call breakpoint_kind_from_pc
4018 and sw_breakpoint_from_kind to increment the pc.
4019 (linux_breakpoint_kind_from_pc): New function.
4020 (linux_sw_breakpoint_from_kind): New function.
4021 (struct target_ops) <sw_breakpoint_from_kind>: Initialize field.
4022 (initialize_low): Call breakpoint_kind_from_pc and
4023 sw_breakpoint_from_kind to replace breakpoint_data/len.
4024 * linux-low.h (struct linux_target_ops) <breakpoint_kind_from_pc>:
4025 New field.
4026 (struct linux_target_ops) <sw_breakpoint_from_kind>: Likewise.
4027 * linux-m32r-low.c (m32r_sw_breakpoint_from_kind): New function.
4028 (struct linux_target_ops) <breakpoint>: Remove.
4029 (struct linux_target_ops) <breakpoint_len>: Remove.
4030 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4031 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4032 * linux-m68k-low.c (m68k_sw_breakpoint_from_kind): New function.
4033 (struct linux_target_ops) <breakpoint>: Remove.
4034 (struct linux_target_ops) <breakpoint_len>: Remove.
4035 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4036 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4037 * linux-mips-low.c (mips_sw_breakpoint_from_kind): New function.
4038 (struct linux_target_ops) <breakpoint>: Remove.
4039 (struct linux_target_ops) <breakpoint_len>: Remove.
4040 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4041 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4042 * linux-nios2-low.c (nios2_sw_breakpoint_from_kind): New function.
4043 (struct linux_target_ops) <breakpoint>: Remove.
4044 (struct linux_target_ops) <breakpoint_len>: Remove.
4045 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4046 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4047 * linux-ppc-low.c (ppc_sw_breakpoint_from_kind): New function.
4048 (struct linux_target_ops) <breakpoint>: Remove.
4049 (struct linux_target_ops) <breakpoint_len>: Remove.
4050 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4051 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4052 * linux-s390-low.c (s390_sw_breakpoint_from_kind): New function.
4053 (struct linux_target_ops) <breakpoint>: Remove.
4054 (struct linux_target_ops) <breakpoint_len>: Remove.
4055 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4056 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4057 * linux-sh-low.c (sh_sw_breakpoint_from_kind): New function.
4058 (struct linux_target_ops) <breakpoint>: Remove.
4059 (struct linux_target_ops) <breakpoint_len>: Remove.
4060 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4061 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4062 * linux-sparc-low.c (sparc_sw_breakpoint_from_kind): New function.
4063 (struct linux_target_ops) <breakpoint>: Remove.
4064 (struct linux_target_ops) <breakpoint_len>: Remove.
4065 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4066 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4067 * linux-tic6x-low.c (tic6x_sw_breakpoint_from_kind): New function.
4068 (struct linux_target_ops) <breakpoint>: Remove.
4069 (struct linux_target_ops) <breakpoint_len>: Remove.
4070 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4071 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4072 * linux-tile-low.c (tile_sw_breakpoint_from_kind): New function.
4073 * linux-x86-low.c (x86_sw_breakpoint_from_kind): New function.
4074 (struct linux_target_ops) <breakpoint>: Remove.
4075 (struct linux_target_ops) <breakpoint_len>: Remove.
4076 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4077 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4078 * linux-xtensa-low.c (xtensa_sw_breakpoint_from_kind) New function.
4079 (struct linux_target_ops) <breakpoint>: Remove.
4080 (struct linux_target_ops) <breakpoint_len>: Remove.
4081 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4082 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4083
4084 2015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
4085
4086 * linux-cris-low.c (cris_get_pc): Remove void arg.
4087
4088 2015-10-16 Aleksandar Ristovski <aristovski@qnx.com>
4089
4090 * gdbserver/nto-low.c (nto_insert_point, nto_remove_point): Fix
4091 variable name.
4092
4093 2015-10-16 Aleksandar Ristovski <aristovski@qnx.com>
4094
4095 * inferiors.c (thread_pid_matches_callback): New function.
4096 (find_thread_process): New function.
4097 (remove_thread): Reset current_thread.
4098 (remove_process): Assert threads have been removed first.
4099
4100 2015-10-15 Yao Qi <yao.qi@linaro.org>
4101
4102 * linux-aarch64-low.c (aarch64_insert_point): Set len to 2
4103 if it is 3.
4104 (aarch64_remove_point): Likewise.
4105 * regcache.c (regcache_register_size): New function.
4106
4107 2015-10-12 Yao Qi <yao.qi@linaro.org>
4108
4109 * linux-aarch64-low.c: Update all callers as emit_load_store
4110 is renamed to aarch64_emit_load_store.
4111
4112 2015-10-12 Yao Qi <yao.qi@linaro.org>
4113
4114 * linux-aarch64-low.c: Update all callers of function renaming
4115 from emit_insn to aarch64_emit_insn.
4116
4117 2015-10-12 Yao Qi <yao.qi@linaro.org>
4118
4119 * linux-aarch64-low.c (enum aarch64_opcodes): Move to
4120 arch/aarch64-insn.h.
4121 (struct aarch64_memory_operand): Likewise.
4122 (ENCODE): Likewise.
4123 (emit_insn): Move to arch/aarch64-insn.c.
4124 (emit_b, emit_bcond, emit_cb, emit_tb): Remove.
4125 (emit_load_store): Move to arch/aarch64-insn.c.
4126 (emit_ldr, emit_ldrb, emit_ldrsw, emit_nop): Remove.
4127 (can_encode_int32): Remove.
4128
4129 2015-10-12 Yao Qi <yao.qi@linaro.org>
4130
4131 * linux-aarch64-low.c (extract_signed_bitfield): Remove.
4132 (aarch64_decode_ldr_literal): Move to gdb/arch/aarch64-insn.c.
4133 (aarch64_relocate_instruction): Likewise.
4134 (struct aarch64_insn_data): Move to gdb/arch/aarch64-insn.h.
4135 (struct aarch64_insn_visitor): Likewise.
4136
4137 2015-10-12 Yao Qi <yao.qi@linaro.org>
4138
4139 * linux-aarch64-low.c (struct aarch64_insn_data): New.
4140 (struct aarch64_insn_visitor): New.
4141 (struct aarch64_insn_relocation_data): New.
4142 (aarch64_ftrace_insn_reloc_b): New function.
4143 (aarch64_ftrace_insn_reloc_b_cond): Likewise.
4144 (aarch64_ftrace_insn_reloc_cb): Likewise.
4145 (aarch64_ftrace_insn_reloc_tb): Likewise.
4146 (aarch64_ftrace_insn_reloc_adr): Likewise.
4147 (aarch64_ftrace_insn_reloc_ldr_literal): Likewise.
4148 (aarch64_ftrace_insn_reloc_others): Likewise.
4149 (visitor): New.
4150 (aarch64_relocate_instruction): Use visitor.
4151
4152 2015-10-12 Yao Qi <yao.qi@linaro.org>
4153
4154 * linux-aarch64-low.c (aarch64_relocate_instruction): Return
4155 int. Add argument buf.
4156 (aarch64_install_fast_tracepoint_jump_pad): Pass buf to
4157 aarch64_relocate_instruction.
4158
4159 2015-10-12 Yao Qi <yao.qi@linaro.org>
4160
4161 * linux-aarch64-low.c (aarch64_relocate_instruction): Add
4162 argument insn. Remove local variable insn. Don't call
4163 target_read_uint32.
4164 (aarch64_install_fast_tracepoint_jump_pad): Call
4165 target_read_uint32.
4166
4167 2015-09-30 Yao Qi <yao.qi@linaro.org>
4168
4169 * linux-aarch64-low.c (emit_movk): Shorten a long line.
4170 (emit_load_store_pair): Likewise.
4171
4172 2015-09-25 Simon Marchi <simon.marchi@ericsson.com>
4173
4174 * dll.c (match_dll): Add cast(s).
4175 (unloaded_dll): Likewise.
4176 * linux-low.c (second_thread_of_pid_p): Likewise.
4177 (delete_lwp_callback): Likewise.
4178 (count_events_callback): Likewise.
4179 (select_event_lwp_callback): Likewise.
4180 (linux_set_resume_request): Likewise.
4181 * server.c (accumulate_file_name_length): Likewise.
4182 (emit_dll_description): Likewise.
4183 (handle_qxfer_threads_worker): Likewise.
4184 (visit_actioned_threads): Likewise.
4185 * thread-db.c (any_thread_of): Likewise.
4186 * tracepoint.c (same_process_p): Likewise.
4187 (match_blocktype): Likewise.
4188 (build_traceframe_info_xml): Likewise.
4189
4190 2015-09-25 Simon Marchi <simon.marchi@ericsson.com>
4191
4192 * ax.c (gdb_parse_agent_expr): Add cast to allocation result
4193 assignment.
4194 (gdb_unparse_agent_expr): Likewise.
4195 * hostio.c (require_data): Likewise.
4196 (handle_pread): Likewise.
4197 * linux-low.c (disable_regset): Likewise.
4198 (fetch_register): Likewise.
4199 (store_register): Likewise.
4200 (get_dynamic): Likewise.
4201 (linux_qxfer_libraries_svr4): Likewise.
4202 * mem-break.c (delete_fast_tracepoint_jump): Likewise.
4203 (set_fast_tracepoint_jump): Likewise.
4204 (uninsert_fast_tracepoint_jumps_at): Likewise.
4205 (reinsert_fast_tracepoint_jumps_at): Likewise.
4206 (validate_inserted_breakpoint): Likewise.
4207 (clone_agent_expr): Likewise.
4208 * regcache.c (init_register_cache): Likewise.
4209 * remote-utils.c (putpkt_binary_1): Likewise.
4210 (decode_M_packet): Likewise.
4211 (decode_X_packet): Likewise.
4212 (look_up_one_symbol): Likewise.
4213 (relocate_instruction): Likewise.
4214 (monitor_output): Likewise.
4215 * server.c (handle_search_memory): Likewise.
4216 (handle_qxfer_exec_file): Likewise.
4217 (handle_qxfer_libraries): Likewise.
4218 (handle_qxfer): Likewise.
4219 (handle_query): Likewise.
4220 (handle_v_cont): Likewise.
4221 (handle_v_run): Likewise.
4222 (captured_main): Likewise.
4223 * target.c (write_inferior_memory): Likewise.
4224 * thread-db.c (try_thread_db_load_from_dir): Likewise.
4225 * tracepoint.c (init_trace_buffer): Likewise.
4226 (add_tracepoint_action): Likewise.
4227 (add_traceframe): Likewise.
4228 (add_traceframe_block): Likewise.
4229 (cmd_qtdpsrc): Likewise.
4230 (cmd_qtdv): Likewise.
4231 (cmd_qtstatus): Likewise.
4232 (response_source): Likewise.
4233 (response_tsv): Likewise.
4234 (cmd_qtnotes): Likewise.
4235 (gdb_collect): Likewise.
4236 (initialize_tracepoint): Likewise.
4237
4238 2015-09-21 Pierre Langlois <pierre.langlois@arm.com>
4239
4240 * linux-aarch64-low-.c: Include ax.h and tracepoint.h.
4241 (enum aarch64_opcodes) <RET>, <SUBS>, <AND>, <ORR>, <ORN>,
4242 <EOR>, <LSLV>, <LSRV>, <ASRV>, <SBFM>, <UBFM>, <CSINC>, <MUL>,
4243 <NOP>: New.
4244 (enum aarch64_condition_codes): New enum.
4245 (w0): New static global.
4246 (fp): Likewise.
4247 (lr): Likewise.
4248 (struct aarch64_memory_operand) <type>: New
4249 MEMORY_OPERAND_POSTINDEX type.
4250 (postindex_memory_operand): New helper function.
4251 (emit_ret): New function.
4252 (emit_load_store_pair): New function, factored out of emit_stp
4253 with support for MEMORY_OPERAND_POSTINDEX.
4254 (emit_stp): Rewrite using emit_load_store_pair.
4255 (emit_ldp): New function.
4256 (emit_load_store): Likewise.
4257 (emit_ldr): Mention post-index instruction in comment.
4258 (emit_ldrh): New function.
4259 (emit_ldrb): New function.
4260 (emit_ldrsw): Mention post-index instruction in comment.
4261 (emit_str): Likewise.
4262 (emit_subs): New function.
4263 (emit_cmp): Likewise.
4264 (emit_and): Likewise.
4265 (emit_orr): Likewise.
4266 (emit_orn): Likewise.
4267 (emit_eor): Likewise.
4268 (emit_mvn): Likewise.
4269 (emit_lslv): Likewise.
4270 (emit_lsrv): Likewise.
4271 (emit_asrv): Likewise.
4272 (emit_mul): Likewise.
4273 (emit_sbfm): Likewise.
4274 (emit_sbfx): Likewise.
4275 (emit_ubfm): Likewise.
4276 (emit_ubfx): Likewise.
4277 (emit_csinc): Likewise.
4278 (emit_cset): Likewise.
4279 (emit_nop): Likewise.
4280 (emit_ops_insns): New helper function.
4281 (emit_pop): Likewise.
4282 (emit_push): Likewise.
4283 (aarch64_emit_prologue): New function.
4284 (aarch64_emit_epilogue): Likewise.
4285 (aarch64_emit_add): Likewise.
4286 (aarch64_emit_sub): Likewise.
4287 (aarch64_emit_mul): Likewise.
4288 (aarch64_emit_lsh): Likewise.
4289 (aarch64_emit_rsh_signed): Likewise.
4290 (aarch64_emit_rsh_unsigned): Likewise.
4291 (aarch64_emit_ext): Likewise.
4292 (aarch64_emit_log_not): Likewise.
4293 (aarch64_emit_bit_and): Likewise.
4294 (aarch64_emit_bit_or): Likewise.
4295 (aarch64_emit_bit_xor): Likewise.
4296 (aarch64_emit_bit_not): Likewise.
4297 (aarch64_emit_equal): Likewise.
4298 (aarch64_emit_less_signed): Likewise.
4299 (aarch64_emit_less_unsigned): Likewise.
4300 (aarch64_emit_ref): Likewise.
4301 (aarch64_emit_if_goto): Likewise.
4302 (aarch64_emit_goto): Likewise.
4303 (aarch64_write_goto_address): Likewise.
4304 (aarch64_emit_const): Likewise.
4305 (aarch64_emit_call): Likewise.
4306 (aarch64_emit_reg): Likewise.
4307 (aarch64_emit_pop): Likewise.
4308 (aarch64_emit_stack_flush): Likewise.
4309 (aarch64_emit_zero_ext): Likewise.
4310 (aarch64_emit_swap): Likewise.
4311 (aarch64_emit_stack_adjust): Likewise.
4312 (aarch64_emit_int_call_1): Likewise.
4313 (aarch64_emit_void_call_2): Likewise.
4314 (aarch64_emit_eq_goto): Likewise.
4315 (aarch64_emit_ne_goto): Likewise.
4316 (aarch64_emit_lt_goto): Likewise.
4317 (aarch64_emit_le_goto): Likewise.
4318 (aarch64_emit_gt_goto): Likewise.
4319 (aarch64_emit_ge_got): Likewise.
4320 (aarch64_emit_ops_impl): New static global variable.
4321 (aarch64_emit_ops): New target function, return
4322 &aarch64_emit_ops_impl.
4323 (struct linux_target_ops): Install it.
4324
4325 2015-09-21 Pierre Langlois <pierre.langlois@arm.com>
4326
4327 * Makefile.in (linux-aarch64-ipa.o, aarch64-ipa.o): New rules.
4328 * configure.srv (aarch64*-*-linux*): Add linux-aarch64-ipa.o and
4329 aarch64-ipa.o.
4330 * linux-aarch64-ipa.c: New file.
4331 * linux-aarch64-low.c: Include arch/aarch64-insn.h, inttypes.h
4332 and endian.h.
4333 (aarch64_get_thread_area): New target method.
4334 (extract_signed_bitfield): New helper function.
4335 (aarch64_decode_ldr_literal): New function.
4336 (enum aarch64_opcodes): New enum.
4337 (struct aarch64_register): New struct.
4338 (struct aarch64_operand): New struct.
4339 (x0): New static global.
4340 (x1): Likewise.
4341 (x2): Likewise.
4342 (x3): Likewise.
4343 (x4): Likewise.
4344 (w2): Likewise.
4345 (ip0): Likewise.
4346 (sp): Likewise.
4347 (xzr): Likewise.
4348 (aarch64_register): New helper function.
4349 (register_operand): Likewise.
4350 (immediate_operand): Likewise.
4351 (struct aarch64_memory_operand): New struct.
4352 (offset_memory_operand): New helper function.
4353 (preindex_memory_operand): Likewise.
4354 (enum aarch64_system_control_registers): New enum.
4355 (ENCODE): New macro.
4356 (emit_insn): New helper function.
4357 (emit_b): New function.
4358 (emit_bcond): Likewise.
4359 (emit_cb): Likewise.
4360 (emit_tb): Likewise.
4361 (emit_blr): Likewise.
4362 (emit_stp): Likewise.
4363 (emit_ldp_q_offset): Likewise.
4364 (emit_stp_q_offset): Likewise.
4365 (emit_load_store): Likewise.
4366 (emit_ldr): Likewise.
4367 (emit_ldrsw): Likewise.
4368 (emit_str): Likewise.
4369 (emit_ldaxr): Likewise.
4370 (emit_stxr): Likewise.
4371 (emit_stlr): Likewise.
4372 (emit_data_processing_reg): Likewise.
4373 (emit_data_processing): Likewise.
4374 (emit_add): Likewise.
4375 (emit_sub): Likewise.
4376 (emit_mov): Likewise.
4377 (emit_movk): Likewise.
4378 (emit_mov_addr): Likewise.
4379 (emit_mrs): Likewise.
4380 (emit_msr): Likewise.
4381 (emit_sevl): Likewise.
4382 (emit_wfe): Likewise.
4383 (append_insns): Likewise.
4384 (can_encode_int32_in): New helper function.
4385 (aarch64_relocate_instruction): New function.
4386 (aarch64_install_fast_tracepoint_jump_pad): Likewise.
4387 (aarch64_get_min_fast_tracepoint_insn_len): Likewise.
4388 (struct linux_target_ops): Install aarch64_get_thread_area,
4389 aarch64_install_fast_tracepoint_jump_pad and
4390 aarch64_get_min_fast_tracepoint_insn_len.
4391
4392 2015-09-21 Pierre Langlois <pierre.langlois@arm.com>
4393
4394 * Makefile.in (aarch64-insn.o): New rule.
4395 * configure.srv (aarch64*-*-linux*): Add aarch64-insn.o.
4396
4397 2015-09-21 Yao Qi <yao.qi@linaro.org>
4398
4399 * ax.c [!IN_PROCESS_AGENT] (gdb_agent_op_sizes): Define it.
4400
4401 2015-09-21 Yao Qi <yao.qi@linaro.org>
4402
4403 * tracepoint.c (max_jump_pad_size): Remove.
4404
4405 2015-09-18 Yao Qi <yao.qi@linaro.org>
4406
4407 * linux-aarch64-low.c: Don't include sys/uio.h.
4408 (ps_get_thread_area): Call aarch64_ps_get_thread_area.
4409
4410 2015-09-16 Wei-cheng Wang <cole945@gmail.com>
4411
4412 * tracepoint.c (eval_result_type): Change prototype.
4413 (condition_true_at_tracepoint): Fix argument to compiled_cond.
4414
4415 2015-09-15 Pedro Alves <palves@redhat.com>
4416
4417 * remote-utils.c (prepare_resume_reply) <TARGET_WAITKIND_EXECD>:
4418 Check whether to report exec events instead of checking whether
4419 multiprocess is enabled.
4420
4421 2015-09-15 Pedro Alves <palves@redhat.com>
4422
4423 PR remote/18965
4424 * remote-utils.c (prepare_resume_reply): Merge
4425 TARGET_WAITKIND_VFORK_DONE switch case with the
4426 TARGET_WAITKIND_FORKED case.
4427
4428 2015-09-15 Yao Qi <yao.qi@linaro.org>
4429
4430 * server.c (handle_query): Check string comparison using
4431 "else if" instead of "if".
4432
4433 2015-09-15 Yao Qi <yao.qi@linaro.org>
4434
4435 * server.c (vCont_supported): New global variable.
4436 (handle_query): Set vCont_supported to 1 if "vContSupported+"
4437 matches. Append ";vContSupported+" to own_buf.
4438 (handle_v_requests): Append ";s;S" to own_buf if target supports
4439 hardware single step or vCont_supported is false.
4440 (capture_main): Set vCont_supported to zero.
4441
4442 2015-09-15 Yao Qi <yao.qi@linaro.org>
4443
4444 * linux-low.c (linux_supports_conditional_breakpoints): Rename
4445 it to ...
4446 (linux_supports_hardware_single_step): ... New function.
4447 (linux_target_ops): Update.
4448 * lynx-low.c (lynx_target_ops): Set field
4449 supports_hardware_single_step to target_can_do_hardware_single_step.
4450 * nto-low.c (nto_target_ops): Likewise.
4451 * spu-low.c (spu_target_ops): Likewise.
4452 * win32-low.c (win32_target_ops): Likewise.
4453 * target.c (target_can_do_hardware_single_step): New function.
4454 * target.h (struct target_ops) <supports_conditional_breakpoints>:
4455 Remove. <supports_hardware_single_step>: New field.
4456 (target_supports_conditional_breakpoints): Remove.
4457 (target_supports_hardware_single_step): New macro.
4458 (target_can_do_hardware_single_step): Declare.
4459 * server.c (handle_query): Use target_supports_hardware_single_step
4460 instead of target_supports_conditional_breakpoints.
4461
4462 2015-09-15 Yao Qi <yao.qi@linaro.org>
4463
4464 * linux-aarch64-low.c (aarch64_linux_siginfo_fixup): New
4465 function.
4466 (struct linux_target_ops the_low_target): Install
4467 aarch64_linux_siginfo_fixup.
4468
4469 2015-09-11 Don Breazeal <donb@codesourcery.com>
4470 Luis Machado <lgustavo@codesourcery.com>
4471
4472 * linux-low.c (linux_mourn): Static declaration.
4473 (linux_arch_setup): Move in front of
4474 handle_extended_wait.
4475 (linux_arch_setup_thread): New function.
4476 (handle_extended_wait): Handle exec events. Call
4477 linux_arch_setup_thread. Make event_lwp argument a
4478 pointer-to-a-pointer.
4479 (check_zombie_leaders): Do not check stopped threads.
4480 (linux_low_ptrace_options): Add PTRACE_O_TRACEEXEC.
4481 (linux_low_filter_event): Add lwp and thread for exec'ing
4482 non-leader thread if leader thread has been deleted.
4483 Refactor code into linux_arch_setup_thread and call it.
4484 Pass child lwp pointer by reference to handle_extended_wait.
4485 (linux_wait_for_event_filtered): Update comment.
4486 (linux_wait_1): Prevent clobbering exec event status.
4487 (linux_supports_exec_events): New function.
4488 (linux_target_ops) <supports_exec_events>: Initialize new member.
4489 * lynx-low.c (lynx_target_ops) <supports_exec_events>: Initialize
4490 new member.
4491 * remote-utils.c (prepare_resume_reply): New stop reason 'exec'.
4492 * server.c (report_exec_events): New global variable.
4493 (handle_query): Handle qSupported query for exec-events feature.
4494 (captured_main): Initialize report_exec_events.
4495 * server.h (report_exec_events): Declare new global variable.
4496 * target.h (struct target_ops) <supports_exec_events>: New
4497 member.
4498 (target_supports_exec_events): New macro.
4499 * win32-low.c (win32_target_ops) <supports_exec_events>:
4500 Initialize new member.
4501
4502 2015-09-09 Markus Metzger <markus.t.metzger@intel.com>
4503
4504 * linux-low.c (linux_low_enable_btrace): Remove.
4505 (linux_target_ops): Replace linux_low_enable_btrace with
4506 linux_enable_btrace.
4507
4508 2015-09-03 Yao Qi <yao.qi@linaro.org>
4509
4510 * linux-aarch64-low.c (aarch64_insert_point): Call
4511 aarch64_handle_watchpoint if aarch64_linux_region_ok_for_watchpoint
4512 returns true.
4513
4514 2015-08-27 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4515
4516 * linux-low.c (check_stopped_by_breakpoint): Use
4517 GDB_ARCH_IS_TRAP_BRKPT instead of GDB_ARCH_TRAP_BRKPT.
4518
4519 2015-08-27 Pedro Alves <palves@redhat.com>
4520
4521 * proc-service.c (ps_pdwrite): Return PS_ERR/PS_OK explicily.
4522
4523 2015-08-26 Simon Marchi <simon.marchi@ericsson.com>
4524
4525 * ax.c (gdb_parse_agent_expr): Replace xmalloc-family function with
4526 the XNEW-family equivalent.
4527 (compile_bytecodes): Likewise.
4528 * dll.c (loaded_dll): Likewise.
4529 * event-loop.c (append_callback_event): Likewise.
4530 (create_file_handler): Likewise.
4531 (create_file_event): Likewise.
4532 * hostio.c (handle_open): Likewise.
4533 * inferiors.c (add_thread): Likewise.
4534 (add_process): Likewise.
4535 * linux-aarch64-low.c (aarch64_linux_new_process): Likewise.
4536 * linux-arm-low.c (arm_new_process): Likewise.
4537 (arm_new_thread): Likewise.
4538 * linux-low.c (add_to_pid_list): Likewise.
4539 (linux_add_process): Likewise.
4540 (handle_extended_wait): Likewise.
4541 (add_lwp): Likewise.
4542 (enqueue_one_deferred_signal): Likewise.
4543 (enqueue_pending_signal): Likewise.
4544 (linux_resume_one_lwp_throw): Likewise.
4545 (linux_resume_one_thread): Likewise.
4546 (linux_read_memory): Likewise.
4547 (linux_write_memory): Likewise.
4548 * linux-mips-low.c (mips_linux_new_process): Likewise.
4549 (mips_linux_new_thread): Likewise.
4550 (mips_add_watchpoint): Likewise.
4551 * linux-x86-low.c (initialize_low_arch): Likewise.
4552 * lynx-low.c (lynx_add_process): Likewise.
4553 * mem-break.c (set_raw_breakpoint_at): Likewise.
4554 (set_breakpoint): Likewise.
4555 (add_condition_to_breakpoint): Likewise.
4556 (add_commands_to_breakpoint): Likewise.
4557 (clone_agent_expr): Likewise.
4558 (clone_one_breakpoint): Likewise.
4559 * regcache.c (new_register_cache): Likewise.
4560 * remote-utils.c (look_up_one_symbol): Likewise.
4561 * server.c (queue_stop_reply): Likewise.
4562 (start_inferior): Likewise.
4563 (queue_stop_reply_callback): Likewise.
4564 (handle_target_event): Likewise.
4565 * spu-low.c (fetch_ppc_memory): Likewise.
4566 (store_ppc_memory): Likewise.
4567 * target.c (set_target_ops): Likewise.
4568 * thread-db.c (thread_db_load_search): Likewise.
4569 (try_thread_db_load_1): Likewise.
4570 * tracepoint.c (add_tracepoint): Likewise.
4571 (add_tracepoint_action): Likewise.
4572 (create_trace_state_variable): Likewise.
4573 (cmd_qtdpsrc): Likewise.
4574 (cmd_qtro): Likewise.
4575 (add_while_stepping_state): Likewise.
4576 * win32-low.c (child_add_thread): Likewise.
4577 (get_image_name): Likewise.
4578
4579 2015-08-25 Yao Qi <yao.qi@linaro.org>
4580
4581 * linux-aarch64-low.c (aarch64_linux_new_thread): Remove.
4582
4583 2015-08-25 Yao Qi <yao.qi@linaro.org>
4584
4585 * Makefile.in (aarch64-linux.o): New rule.
4586 * configure.srv (aarch64*-*-linux*): Append aarch64-linux.o to
4587 srv_tgtobj.
4588 * linux-aarch64-low.c: Include nat/aarch64-linux.h.
4589 (aarch64_init_debug_reg_state): Make it extern.
4590 (aarch64_linux_prepare_to_resume): Remove.
4591
4592 2015-08-25 Yao Qi <yao.qi@linaro.org>
4593
4594 * linux-aarch64-low.c (aarch64_linux_prepare_to_resume): Use
4595 lwp_arch_private_info and ptid_of_lwp.
4596
4597 2015-08-25 Yao Qi <yao.qi@linaro.org>
4598
4599 * linux-aarch64-low.c (aarch64_get_debug_reg_state): Add argument pid.
4600 Find proc_info by find_process_pid. All callers updated.
4601
4602 2015-08-25 Yao Qi <yao.qi@linaro.org>
4603
4604 * linux-aarch64-low.c (struct arch64_dr_update_callback_param):
4605 Remove.
4606 (debug_reg_change_callback): Remove.
4607 (aarch64_notify_debug_reg_change): Remove.
4608
4609 2015-08-25 Yao Qi <yao.qi@linaro.org>
4610
4611 * linux-aarch64-low.c (aarch64_notify_debug_reg_change):
4612 Call current_lwp_ptid.
4613
4614 2015-08-25 Yao Qi <yao.qi@linaro.org>
4615
4616 * linux-aarch64-low.c (debug_reg_change_callback): Use
4617 debug_printf.
4618
4619 2015-08-25 Yao Qi <yao.qi@linaro.org>
4620
4621 * linux-aarch64-low.c (debug_reg_change_callback): Use phex.
4622
4623 2015-08-25 Yao Qi <yao.qi@linaro.org>
4624
4625 * linux-aarch64-low.c (debug_reg_change_callback): Remove comments.
4626
4627 2015-08-25 Yao Qi <yao.qi@linaro.org>
4628
4629 * linux-aarch64-low.c (debug_reg_change_callback): Re-indent
4630 the code.
4631
4632 2015-08-25 Yao Qi <yao.qi@linaro.org>
4633
4634 * linux-aarch64-low.c (aarch64_dr_update_callback_param) <pid>:
4635 Remove.
4636 (debug_reg_change_callback): Remove argument entry and add argument
4637 lwp. Remove local variable thread. Don't print thread id in the
4638 debugging output. Don't check whether pid of thread equals to pid.
4639 (aarch64_notify_debug_reg_change): Don't set param.pid. Call
4640 iterate_over_lwps instead find_inferior.
4641
4642 2015-08-24 Pedro Alves <palves@redhat.com>
4643
4644 * inferiors.c (get_first_process): New function.
4645 * inferiors.h (get_first_process): New declaration.
4646 * remote-utils.c (read_ptid): Default to the first process in the
4647 list, instead of to the current thread's process.
4648
4649 2015-08-24 Pedro Alves <palves@redhat.com>
4650
4651 * debug.c: Include gdb_sys_time.h instead of sys/time.h.
4652 * event-loop.c: Likewise.
4653 * remote-utils.c: Likewise.
4654 * tracepoint.c: Likewise.
4655
4656 2015-08-24 Pedro Alves <palves@redhat.com>
4657
4658 * spu-low.c (spu_request_interrupt): Use lwpid_of instead of
4659 ptid_get_lwp.
4660
4661 2015-08-21 Pedro Alves <palves@redhat.com>
4662
4663 * ax.c (gdb_eval_agent_expr): Return expr_eval_unhandled_opcode
4664 instead of literal 1.
4665
4666 2015-08-21 Pedro Alves <palves@redhat.com>
4667
4668 * tdesc.c (default_description): Explicitly zero-initialize.
4669
4670 2015-08-21 Pedro Alves <palves@redhat.com>
4671
4672 PR gdb/18749
4673 * inferiors.c (remove_thread): Discard any pending stop reply for
4674 this thread.
4675 * server.c (remove_all_on_match_pid): Rename to ...
4676 (remove_all_on_match_ptid): ... this. Work with a filter ptid
4677 instead of a pid.
4678 (discard_queued_stop_replies): Change parameter to a ptid. Now
4679 extern.
4680 (handle_v_kill, kill_inferior_callback, captured_main)
4681 (process_serial_event): Adjust.
4682 * server.h (discard_queued_stop_replies): Declare.
4683
4684 2015-08-21 Pedro Alves <palves@redhat.com>
4685
4686 * linux-low.c (wait_for_sigstop): Always switch to no thread
4687 selected if the previously current thread dies.
4688 * lynx-low.c (lynx_request_interrupt): Use the first thread's
4689 process instead of the current thread's.
4690 * remote-utils.c (input_interrupt): Don't check if there's no
4691 current thread.
4692 * server.c (gdb_read_memory, gdb_write_memory): If setting the
4693 current thread to the general thread fails, error out.
4694 (handle_qxfer_auxv, handle_qxfer_libraries)
4695 (handle_qxfer_libraries_svr4, handle_qxfer_siginfo)
4696 (handle_qxfer_spu, handle_qxfer_statictrace, handle_qxfer_fdpic)
4697 (handle_query): Check if there's a thread selected instead of
4698 checking whether there's any thread in the thread list.
4699 (handle_qxfer_threads, handle_qxfer_btrace)
4700 (handle_qxfer_btrace_conf): Don't error out early if there's no
4701 thread in the thread list.
4702 (handle_v_cont, myresume): Don't set the current thread to the
4703 continue thread.
4704 (process_serial_event) <Hg handling>: Also set thread_id if the
4705 previous general thread is still alive.
4706 (process_serial_event) <g/G handling>: If setting the current
4707 thread to the general thread fails, error out.
4708 * spu-low.c (spu_resume, spu_request_interrupt): Use the first
4709 thread's lwp instead of the current thread's.
4710 * target.c (set_desired_thread): If the desired thread was not
4711 found, leave the current thread pointing to NULL. Return an int
4712 (boolean) indicating success.
4713 * target.h (set_desired_thread): Change return type to int.
4714
4715 2015-08-20 Max Filippov <jcmvbkbc@gmail.com>
4716
4717 * configure.srv (xtensa*-*-linux*): Add srv_linux_thread_db=yes.
4718 * linux-xtensa-low.c (arch/xtensa.h gdb_proc_service.h): New
4719 #includes.
4720 (ps_get_thread_area): New function.
4721
4722 2015-08-19 Gary Benson <gbenson@redhat.com>
4723
4724 * hostio.c (handle_pread): Do not attempt to read more data
4725 than hostio_reply_with_data can fit in a packet.
4726
4727 2015-08-18 Joel Brobecker <brobecker@adacore.com>
4728
4729 * linux-aarch32-low.c (NT_ARM_VFP): Define if not already defined.
4730
4731 2015-08-14 Matthew Fortune <matthew.fortune@imgtec.com>
4732
4733 * linux-low.c (get_r_debug): Handle DT_MIPS_RLD_MAP_REL.
4734
4735 2015-08-06 Pedro Alves <palves@redhat.com>
4736
4737 * tracepoint.c (expr_eval_result): Now an int.
4738
4739 2015-08-06 Pedro Alves <palves@redhat.com>
4740
4741 * gdbthread.h (struct regcache): Forward declare.
4742 (struct thread_info) <regcache_data>: Now a struct regcache
4743 pointer.
4744 * inferiors.c (inferior_regcache_data)
4745 (set_inferior_regcache_data): Now work with struct regcache
4746 pointers.
4747 * inferiors.h (struct regcache): Forward declare.
4748 (inferior_regcache_data, set_inferior_regcache_data): Now work
4749 with struct regcache pointers.
4750 * regcache.c (get_thread_regcache, regcache_invalidate_thread)
4751 (free_register_cache_thread): Remove struct regcache pointer
4752 casts.
4753
4754 2015-08-06 Pedro Alves <palves@redhat.com>
4755
4756 * server.c (captured_main): On error, print the exception message
4757 to stderr, and if run_once is set, throw a quit.
4758
4759 2015-08-06 Pedro Alves <palves@redhat.com>
4760
4761 * linux-low.c (move_out_of_jump_pad_callback): Temporarily switch
4762 the current thread.
4763
4764 2015-08-06 Pedro Alves <palves@redhat.com>
4765
4766 * linux-low.c (linux_write_memory): Rewrite debug output to avoid
4767 reading beyond the passed in buffer length.
4768
4769 2015-08-06 Pierre Langlois <pierre.langlois@arm.com>
4770
4771 * tracepoint.c (symbol_list) <required>: Remove.
4772
4773 2015-08-06 Pedro Alves <palves@redhat.com>
4774
4775 * linux-low.c (handle_extended_wait): Set the fork child's suspend
4776 count if stopping and suspending threads.
4777 (check_stopped_by_breakpoint): If stopped by trace, set the LWP's
4778 stop reason to TARGET_STOPPED_BY_SINGLE_STEP.
4779 (linux_detach): Complete an ongoing step-over.
4780 (lwp_suspended_inc, lwp_suspended_decr): New functions. Use
4781 throughout.
4782 (resume_stopped_resumed_lwps): Don't resume a suspended thread.
4783 (linux_wait_1): If passing a signal to the inferior after
4784 finishing a step-over, unsuspend and re-resume all lwps. If we
4785 see a single-step event but the thread should be continuing, don't
4786 pass the trap to gdb.
4787 (stuck_in_jump_pad_callback, move_out_of_jump_pad_callback): Use
4788 internal_error instead of gdb_assert.
4789 (enqueue_pending_signal): New function.
4790 (check_ptrace_stopped_lwp_gone): Add debug output.
4791 (start_step_over): Use internal_error instead of gdb_assert.
4792 (complete_ongoing_step_over): New function.
4793 (linux_resume_one_thread): Don't resume a suspended thread.
4794 (proceed_one_lwp): If the LWP is stepping over a breakpoint, reset
4795 it stepping.
4796
4797 2015-08-06 Pedro Alves <palves@redhat.com>
4798
4799 * linux-low.c (add_lwp): Set waitstatus to TARGET_WAITKIND_IGNORE.
4800 (linux_thread_alive): Use lwp_is_marked_dead.
4801 (extended_event_reported): Delete.
4802 (linux_wait_1): Check if waitstatus is TARGET_WAITKIND_IGNORE
4803 instead of extended_event_reported.
4804 (mark_lwp_dead): Don't set the 'dead' flag. Store the waitstatus
4805 as well.
4806 (lwp_is_marked_dead): New function.
4807 (lwp_running): Use lwp_is_marked_dead.
4808 * linux-low.h: Delete 'dead' field, and update 'waitstatus's
4809 comment.
4810
4811 2015-08-06 Pedro Alves <palves@redhat.com>
4812
4813 * linux-low.c (linux_wait_1): Move fork event output out of the
4814 !report_to_gdb check. Pass event_child->waitstatus to
4815 target_waitstatus_to_string instead of ourstatus.
4816
4817 2015-08-04 Yao Qi <yao.qi@linaro.org>
4818
4819 * linux-aarch64-low.c (aarch64_supports_tracepoints): Return 0
4820 if current_thread is 32 bit.
4821
4822 2015-08-04 Yao Qi <yao.qi@linaro.org>
4823
4824 * linux-aarch64-low.c (aarch64_supports_z_point_type): Return
4825 0 for Z_PACKET_SW_BP if it may be used in multi-arch debugging.
4826 * server.c (extended_protocol): Remove "static".
4827 * server.h (extended_protocol): Declare it.
4828
4829 2015-08-04 Yao Qi <yao.qi@linaro.org>
4830
4831 * linux-aarch64-low.c (aarch64_get_pc): Get PC register on
4832 both aarch64 and aarch32.
4833 (aarch64_set_pc): Likewise.
4834
4835 2015-08-04 Yao Qi <yao.qi@linaro.org>
4836
4837 * configure.srv (case aarch64*-*-linux*): Append arm-with-neon.o
4838 to srv_regobj and append arm-core.xml arm-vfpv3.xml and
4839 arm-with-neon.xml to srv_xmlfiles.
4840 * linux-aarch64-low.c: Include linux-aarch32-low.h.
4841 (is_64bit_tdesc): New function.
4842 (aarch64_linux_read_description): New function.
4843 (aarch64_arch_setup): Call aarch64_linux_read_description.
4844 (regs_info): Rename to regs_info_aarch64.
4845 (aarch64_regs_info): Return right regs_info.
4846 (initialize_low_arch): Call initialize_low_arch_aarch32.
4847
4848 2015-08-04 Yao Qi <yao.qi@linaro.org>
4849
4850 * configure.srv (srv_tgtobj): Add linux-aarch32-low.o.
4851 * linux-aarch32-low.c: New file.
4852 * linux-aarch32-low.h: New file.
4853 * linux-arm-low.c (arm_fill_gregset): Move it to
4854 linux-aarch32-low.c.
4855 (arm_store_gregset): Likewise.
4856 (arm_fill_vfpregset): Call arm_fill_vfpregset_num
4857 (arm_store_vfpregset): Call arm_store_vfpregset_num.
4858 (arm_arch_setup): Check if PTRACE_GETREGSET works.
4859 (regs_info): Rename to regs_info_arm.
4860 (arm_regs_info): Return regs_info_aarch32 if
4861 have_ptrace_getregset is 1 and target description is
4862 arm_with_neon or arm_with_vfpv3.
4863 (initialize_low_arch): Don't call init_registers_arm_with_neon.
4864 Call initialize_low_arch_aarch32 instead.
4865
4866 2015-08-04 Yao Qi <yao.qi@linaro.org>
4867
4868 * linux-x86-low.c (have_ptrace_getregset): Move it to ...
4869 * linux-low.c: ... here.
4870 * linux-low.h (have_ptrace_getregset): Declare it.
4871
4872 2015-08-04 Pedro Alves <palves@redhat.com>
4873
4874 * thread-db.c (struct thread_db): Use new typedefs.
4875 (try_thread_db_load_1): Define local TDB_DLSYM macro and use it in
4876 CHK calls.
4877 (disable_thread_event_reporting): Cast result of dlsym to
4878 destination function pointer type.
4879 (thread_db_mourn): Use td_ta_delete_ftype.
4880
4881 2015-08-03 Sandra Loosemore <sandra@codesourcery.com>
4882
4883 * linux-nios2-low.c (NIOS2_BREAKPOINT): Conditionalize for
4884 arch variant.
4885 (CDX_BREAKPOINT): Define for R2.
4886 (nios2_breakpoint_at): Check for CDX_BREAKPOINT when R2.
4887 (the_low_target): Add comments.
4888
4889 2015-07-30 Yao Qi <yao.qi@linaro.org>
4890
4891 * linux-arm-low.c (arm_hwcap): Remove it.
4892 (arm_read_description): New local variable arm_hwcap. Don't
4893 set arm_hwcap to zero.
4894
4895 2015-07-30 Yao Qi <yao.qi@linaro.org>
4896
4897 * linux-arm-low.c (arm_fill_wmmxregset): Don't use arm_hwcap.
4898 Use regcache->tdesc instead.
4899 (arm_store_wmmxregset): Likewise.
4900 (arm_fill_vfpregset): Likewise.
4901 (arm_store_vfpregset): Likewise.
4902
4903 2015-07-30 Yao Qi <yao.qi@linaro.org>
4904
4905 * linux-arm-low.c: Include arch/arm.h.
4906 (arm_fill_gregset): Don't use arm_num_regs and arm_regmap.
4907 (arm_store_gregset): Likewise.
4908
4909 2015-07-29 Simon Marchi <simon.marchi@ericsson.com>
4910
4911 * linux-mips-low.c (mips_linux_prepare_to_resume): Add NULL as
4912 ptrace's 4th parameter.
4913
4914 2015-07-27 Yao Qi <yao.qi@linaro.org>
4915
4916 * configure.srv (case aarch64*-*-linux*): Don't set
4917 srv_linux_usrregs.
4918
4919 2015-07-24 Pedro Alves <palves@redhat.c: Likewise.om>
4920
4921 * linux-aarch64-low.c: Include nat/gdb_ptrace.h instead of
4922 sys/ptrace.h.
4923 * linux-arm-low.c: Likewise.
4924 * linux-cris-low.c: Likewise.
4925 * linux-crisv32-low.c: Likewise.
4926 * linux-low.c: Likewise.
4927 * linux-m68k-low.c: Likewise.
4928 * linux-mips-low.c: Likewise.
4929 * linux-nios2-low.c: Likewise.
4930 * linux-s390-low.c: Likewise.
4931 * linux-sparc-low.c: Likewise.
4932 * linux-tic6x-low.c: Likewise.
4933 * linux-tile-low.c: Likewise.
4934 * linux-x86-low.c: Likewise.
4935
4936 2015-07-24 Pedro Alves <palves@redhat.com>
4937
4938 * config.in: Regenerate.
4939 * configure: Regenerate.
4940
4941 2015-07-24 Pedro Alves <palves@redhat.com>
4942
4943 * acinclude.m4: Include ../ptrace.m4.
4944 * configure.ac: Call GDB_AC_PTRACE.
4945 * config.in, configure: Regenerate.
4946
4947 2015-07-24 Yao Qi <yao.qi@linaro.org>
4948
4949 * linux-low.c (linux_create_inferior): Remove setting to
4950 proc->priv->new_inferior.
4951 (linux_attach): Likewise.
4952 (linux_low_filter_event): Likewise.
4953 * linux-low.h (struct process_info_private) <new_inferior>: Remove.
4954
4955 2015-07-24 Yao Qi <yao.qi@linaro.org>
4956
4957 * linux-low.c (linux_arch_setup): New function.
4958 (linux_low_filter_event): If proc->tdesc is NULL and
4959 proc->attached is true, call the_low_target.arch_setup.
4960 Otherwise, keep status pending, and return.
4961 (linux_resume_one_lwp_throw): Don't call get_pc if
4962 thread->while_stepping isn't NULL. Don't call
4963 get_thread_regcache if proc->tdesc is NULL.
4964 (need_step_over_p): Return 0 if proc->tdesc is NULL.
4965 (linux_target_ops): Install arch_setup.
4966 * server.c (start_inferior): Call the_target->arch_setup.
4967 * target.h (struct target_ops) <arch_setup>: New field.
4968 (target_arch_setup): New marco.
4969 * lynx-low.c (lynx_target_ops): Update.
4970 * nto-low.c (nto_target_ops): Update.
4971 * spu-low.c (spu_target_ops): Update.
4972 * win32-low.c (win32_target_ops): Update.
4973
4974 2015-07-24 Yao Qi <yao.qi@linaro.org>
4975
4976 * linux-low.c (linux_add_process): Don't set
4977 proc->priv->new_inferior.
4978 (linux_create_inferior): Set proc->priv->new_inferior to 1.
4979 (linux_attach): Likewise.
4980
4981 2015-07-24 Yao Qi <yao.qi@linaro.org>
4982
4983 * server.c (start_inferior): Code refactor.
4984
4985 2015-07-24 Yao Qi <yao.qi@linaro.org>
4986
4987 * server.c (process_serial_event): Set general_thread.
4988
4989 2015-07-21 Yao Qi <yao.qi@linaro.org>
4990
4991 * linux-aarch64-low.c (aarch64_arch_setup): Remove code and call
4992 aarch64_linux_get_debug_reg_capacity.
4993
4994 2015-07-17 Yao Qi <yao.qi@linaro.org>
4995
4996 * Makefile.in (aarch64-linux-hw-point.o): New rule.
4997 * configure.srv (srv_tgtobj): Append aarch64-linux-hw-point.o.
4998 * linux-aarch64-low.c: Include nat/aarch64-linux-hw-point.h.
4999 (AARCH64_HBP_MAX_NUM): Move to nat/aarch64-linux-hw-point.h.
5000 (AARCH64_HWP_MAX_NUM, AARCH64_HBP_ALIGNMENT): Likewise.
5001 (AARCH64_HWP_ALIGNMENT): Likewise.
5002 (AARCH64_HWP_MAX_LEN_PER_REG): Likewise.
5003 (AARCH64_DEBUG_NUM_SLOTS, AARCH64_DEBUG_ARCH): Likewise.
5004 (aarch64_num_bp_regs, aarch64_num_wp_regs): Likewise.
5005 (AARCH64_DEBUG_ARCH_V8, DR_MARK_ALL_CHANGED): Likewise.
5006 (DR_MARK_N_CHANGED, DR_CLEAR_CHANGED): Likewise.
5007 (DR_HAS_CHANGED, DR_N_HAS_CHANGE): Likewise.
5008 (struct aarch64_debug_reg_state): Likewise.
5009 (struct arch_lwp_info): Likewise.
5010 (aarch64_align_watchpoint): Likewise.
5011 (DR_CONTROL_ENABLED, DR_CONTROL_LENGTH): Likewise.
5012 (aarch64_watchpoint_length): Likewise.
5013 (aarch64_point_encode_ctrl_reg): Likewise
5014 (aarch64_point_is_aligned): Likewise.
5015 (aarch64_align_watchpoint): Likewise.
5016 (aarch64_linux_set_debug_regs):
5017 (aarch64_dr_state_insert_one_point): Likewise.
5018 (aarch64_dr_state_remove_one_point): Likewise.
5019 (aarch64_handle_breakpoint): Likewise.
5020 (aarch64_handle_aligned_watchpoint): Likewise.
5021 (aarch64_handle_unaligned_watchpoint): Likewise.
5022 (aarch64_handle_watchpoint): Likewise.
5023
5024 2015-07-17 Yao Qi <yao.qi@linaro.org>
5025
5026 * linux-aarch64-low.c (aarch64_handle_breakpoint): Add argument state
5027 and don't aarch64_get_debug_reg_state. All callers update.
5028 (aarch64_handle_aligned_watchpoint): Likewise.
5029 (aarch64_handle_unaligned_watchpoint): Likewise.
5030 (aarch64_handle_watchpoint): Likewise.
5031 (aarch64_insert_point): Call aarch64_get_debug_reg_state earlier.
5032 (aarch64_remove_point): Likewise.
5033
5034 2015-07-17 Yao Qi <yao.qi@linaro.org>
5035
5036 * linux-aarch64-low.c (aarch64_show_debug_reg_state): Use
5037 debug_printf.
5038 (aarch64_handle_unaligned_watchpoint): Likewise.
5039
5040 2015-07-15 Jan Kratochvil <jan.kratochvil@redhat.com>
5041
5042 Revert the previous 3 commits:
5043 Move gdb_regex* to common/
5044 Move linux_find_memory_regions_full & co.
5045 gdbserver build-id attribute generator
5046
5047 2015-07-15 Aleksandar Ristovski <aristovski@qnx.com
5048 Jan Kratochvil <jan.kratochvil@redhat.com>
5049
5050 gdbserver build-id attribute generator.
5051 * linux-low.c (nat/linux-maps.h, search.h, rsp-low.h): Include.
5052 (ElfXX_Ehdr, ElfXX_Phdr, ElfXX_Nhdr): New.
5053 (ELFXX_FLD, ELFXX_SIZEOF, ELFXX_ROUNDUP, BUILD_ID_INVALID): New.
5054 (find_phdr): New.
5055 (get_dynamic): Use find_pdhr to traverse program headers.
5056 (struct mapping_entry, mapping_entry_s, free_mapping_entry_vec)
5057 (compare_mapping_entry_range, struct find_memory_region_callback_data)
5058 (read_build_id, find_memory_region_callback, lrfind_mapping_entry)
5059 (get_hex_build_id): New.
5060 (linux_qxfer_libraries_svr4): Add optional build-id attribute
5061 to reply XML document.
5062
5063 2015-07-15 Aleksandar Ristovski <aristovski@qnx.com
5064 Jan Kratochvil <jan.kratochvil@redhat.com>
5065
5066 * target.c: Include target/target-utils.h and fcntl.h.
5067 (target_fileio_read_stralloc_1_pread, target_fileio_read_stralloc_1)
5068 (target_fileio_read_stralloc): New functions.
5069
5070 2015-07-15 Jan Kratochvil <jan.kratochvil@redhat.com>
5071
5072 * Makefile.in (OBS): Add gdb_regex.o.
5073 (gdb_regex.o): New.
5074 * config.in: Rebuilt.
5075 * configure: Rebuilt.
5076
5077 2015-07-15 Aleksandar Ristovski <aristovski@qnx.com
5078 Jan Kratochvil <jan.kratochvil@redhat.com>
5079
5080 Create empty nat/linux-maps.[ch] and common/target-utils.[ch].
5081 * Makefile.in (OBS): Add target-utils.o.
5082 (linux-maps.o, target-utils.o): New.
5083 * configure.srv (srv_linux_obj): Add linux-maps.o.
5084
5085 2015-07-15 Pierre Langlois <pierre.langlois@arm.com>
5086
5087 * linux-aarch64-low.c (aarch64_supports_range_stepping): New
5088 function, return 1.
5089 (the_low_target): Install it.
5090
5091 2015-07-14 Pedro Alves <palves@redhat.com>
5092
5093 * linux-low.c (kill_wait_lwp): Don't assert if waitpid fails.
5094 Instead, ignore ECHILD, and throw an error for other errnos.
5095
5096 2015-07-10 Pedro Alves <palves@redhat.com>
5097
5098 * event-loop.c (struct callback_event) <data>: Change type to
5099 gdb_client_data instance instead of gdb_client_data pointer.
5100 (append_callback_event): Adjust.
5101
5102 2015-07-10 Pierre Langlois <pierre.langlois@arm.com>
5103
5104 * linux-aarch64-low.c: Add comments for each linux_target_ops
5105 method. Remove comments already covered in target_ops and
5106 linux_target_ops definitions.
5107 (the_low_target): Add comments for each unimplemented method.
5108
5109 2015-07-09 Yao Qi <yao.qi@linaro.org>
5110
5111 * linux-aarch64-low.c (aarch64_regmap): Remove.
5112 (aarch64_usrregs_info): Remove.
5113 (regs_info): Set field usrregs to NULL.
5114
5115 2015-07-02 Markus Metzger <markus.t.metzger@intel.com>
5116
5117 * linux-low.c: Include "rsp-low.h"
5118 (linux_low_encode_pt_config, linux_low_encode_raw): New.
5119 (linux_low_read_btrace): Support BTRACE_FORMAT_PT.
5120 (linux_low_btrace_conf): Support BTRACE_FORMAT_PT.
5121 (handle_btrace_enable_pt): New.
5122 (handle_btrace_general_set): Support "pt".
5123 (handle_btrace_conf_general_set): Support "pt:size".
5124
5125 2015-06-29 Pierre Langlois <pierre.langlois@arm.com>
5126
5127 * linux-aarch64-low.c (aarch64_supports_z_point_type): Enable for
5128 Z_PACKET_SW_BP.
5129
5130 2015-06-29 Pierre Langlois <pierre.langlois@arm.com>
5131
5132 * linux-aarch64-low.c: Remove comment about endianness.
5133 (aarch64_breakpoint): Change type to gdb_byte[]. Set to "brk #0".
5134 (aarch64_breakpoint_at): Change type of insn to gdb_byte[]. Use
5135 memcmp.
5136
5137 2015-06-24 Gary Benson <gbenson@redhat.com>
5138
5139 * linux-i386-ipa.c (stdint.h): Do not include.
5140 * lynx-i386-low.c (stdint.h): Likewise.
5141 * lynx-ppc-low.c (stdint.h): Likewise.
5142 * mem-break.c (stdint.h): Likewise.
5143 * thread-db.c (stdint.h): Likewise.
5144 * tracepoint.c (stdint.h): Likewise.
5145 * win32-low.c (stdint.h): Likewise.
5146
5147 2015-06-18 Simon Marchi <simon.marchi@ericsson.com>
5148
5149 * server.c (write_qxfer_response): Update call to
5150 remote_escape_output.
5151
5152 2015-06-15 Aleksandar Ristovski <aristovski@qnx.com
5153 Jan Kratochvil <jan.kratochvil@redhat.com>
5154
5155 Merge multiple hex conversions.
5156 * gdbreplay.c (tohex): Rename to 'fromhex'.
5157 (logchar): Use fromhex.
5158
5159 2015-06-10 Jan Kratochvil <jan.kratochvil@redhat.com>
5160
5161 * server.c (handle_qxfer_libraries): Set `version' attribute for
5162 <library-list>.
5163
5164 2015-06-10 Gary Benson <gbenson@redhat.com>
5165
5166 * target.h (struct target_ops) <multifs_open>: New field.
5167 <multifs_unlink>: Likewise.
5168 <multifs_readlink>: Likewise.
5169 * linux-low.c (nat/linux-namespaces.h): New include.
5170 (linux_target_ops): Initialize the_target->multifs_open,
5171 the_target->multifs_unlink and the_target->multifs_readlink.
5172 * hostio.h (hostio_handle_new_gdb_connection): New declaration.
5173 * hostio.c (hostio_fs_pid): New static variable.
5174 (hostio_handle_new_gdb_connection): New function.
5175 (handle_setfs): Likewise.
5176 (handle_open): Use the_target->multifs_open as appropriate.
5177 (handle_unlink): Use the_target->multifs_unlink as appropriate.
5178 (handle_readlink): Use the_target->multifs_readlink as
5179 appropriate.
5180 (handle_vFile): Handle vFile:setfs packets.
5181 * server.c (handle_query): Call hostio_handle_new_gdb_connection
5182 after target_handle_new_gdb_connection.
5183
5184 2015-06-10 Gary Benson <gbenson@redhat.com>
5185
5186 * configure.ac (AC_CHECK_FUNCS): Add setns.
5187 * config.in: Regenerate.
5188 * configure: Likewise.
5189 * Makefile.in (SFILES): Add nat/linux-namespaces.c.
5190 (linux-namespaces.o): New rule.
5191 * configure.srv (srv_linux_obj): Add linux-namespaces.o.
5192
5193 2015-06-09 Gary Benson <gbenson@redhat.com>
5194
5195 * hostio.c (handle_open): Process mode argument with
5196 fileio_to_host_mode.
5197
5198 2015-06-01 Yao Qi <yao.qi@linaro.org>
5199
5200 * linux-s390-low.c (PTRACE_GETREGSET, PTRACE_SETREGSET): Remove.
5201 * linux-x86-low.c: Likewise.
5202
5203 2015-05-28 Don Breazeal <donb@codesourcery.com>
5204
5205 * linux-low.c (handle_extended_wait): Initialize
5206 thread_info.last_resume_kind for new fork children.
5207
5208 2015-05-15 Pedro Alves <palves@redhat.com>
5209
5210 * target.h (target_handle_new_gdb_connection): Rewrite using if
5211 wrapped in do/while.
5212
5213 2015-05-14 Joel Brobecker <brobecker@adacore.com>
5214
5215 * configure.ac: Add prfpregset_t BFD_HAVE_SYS_PROCFS_TYPE check.
5216 * configure, config.in: Regenerate.
5217 * gdb_proc_service.h [HAVE_PRFPREGSET_T] (prfpregset_t):
5218 Declare typedef.
5219
5220 2015-05-12 Don Breazeal <donb@codesourcery.com>
5221
5222 * linux-low.c (handle_extended_wait): Handle PTRACE_EVENT_FORK and
5223 PTRACE_EVENT_VFORK_DONE.
5224 (linux_low_ptrace_options, extended_event_reported): Add vfork
5225 events.
5226 * remote-utils.c (prepare_resume_reply): New stop reasons "vfork"
5227 and "vforkdone" for RSP 'T' Stop Reply Packet.
5228 * server.h (report_vfork_events): Declare
5229 global variable.
5230
5231 2015-05-12 Don Breazeal <donb@codesourcery.com>
5232
5233 * linux-aarch64-low.c (aarch64_linux_new_fork): New function.
5234 (the_low_target) <new_fork>: Initialize new member.
5235 * linux-arm-low.c (arm_new_fork): New function.
5236 (the_low_target) <new_fork>: Initialize new member.
5237 * linux-low.c (handle_extended_wait): Call new target function
5238 new_fork.
5239 * linux-low.h (struct linux_target_ops) <new_fork>: New member.
5240 * linux-mips-low.c (mips_add_watchpoint): New function
5241 extracted from mips_insert_point.
5242 (the_low_target) <new_fork>: Initialize new member.
5243 (mips_linux_new_fork): New function.
5244 (mips_insert_point): Call mips_add_watchpoint.
5245 * linux-x86-low.c (x86_linux_new_fork): New function.
5246 (the_low_target) <new_fork>: Initialize new member.
5247
5248 2015-05-12 Don Breazeal <donb@codesourcery.com>
5249
5250 * linux-low.c (handle_extended_wait): Implement return value,
5251 rename argument 'event_child' to 'event_lwp', handle
5252 PTRACE_EVENT_FORK, call internal_error for unrecognized event.
5253 (linux_low_ptrace_options): New function.
5254 (linux_low_filter_event): Call linux_low_ptrace_options,
5255 use different argument fo linux_enable_event_reporting,
5256 use return value from handle_extended_wait.
5257 (extended_event_reported): New function.
5258 (linux_wait_1): Call extended_event_reported and set
5259 status to report fork events.
5260 (linux_write_memory): Add pid to debug message.
5261 (reset_lwp_ptrace_options_callback): New function.
5262 (linux_handle_new_gdb_connection): New function.
5263 (linux_target_ops): Initialize new structure member.
5264 * linux-low.h (struct lwp_info) <waitstatus>: New member.
5265 * lynx-low.c: Initialize new structure member.
5266 * remote-utils.c (prepare_resume_reply): Implement stop reason
5267 "fork" for "T" stop message.
5268 * server.c (handle_query): Call handle_new_gdb_connection.
5269 * server.h (report_fork_events): Declare global flag.
5270 * target.h (struct target_ops) <handle_new_gdb_connection>:
5271 New member.
5272 (target_handle_new_gdb_connection): New macro.
5273 * win32-low.c: Initialize new structure member.
5274
5275 2015-05-12 Don Breazeal <donb@codesourcery.com>
5276
5277 * mem-break.c (APPEND_TO_LIST): Define macro.
5278 (clone_agent_expr): New function.
5279 (clone_one_breakpoint): New function.
5280 (clone_all_breakpoints): New function.
5281 * mem-break.h: Declare new functions.
5282
5283 2015-05-12 Don Breazeal <donb@codesourcery.com>
5284
5285 * linux-low.c (linux_supports_fork_events): New function.
5286 (linux_supports_vfork_events): New function.
5287 (linux_target_ops): Initialize new structure members.
5288 (initialize_low): Call linux_check_ptrace_features.
5289 * lynx-low.c (lynx_target_ops): Initialize new structure
5290 members.
5291 * server.c (report_fork_events, report_vfork_events):
5292 New global flags.
5293 (handle_query): Add new features to qSupported packet and
5294 response.
5295 (captured_main): Initialize new global variables.
5296 * target.h (struct target_ops) <supports_fork_events>:
5297 New member.
5298 <supports_vfork_events>: New member.
5299 (target_supports_fork_events): New macro.
5300 (target_supports_vfork_events): New macro.
5301 * win32-low.c (win32_target_ops): Initialize new structure
5302 members.
5303
5304 2015-05-12 Gary Benson <gbenson@redhat.com>
5305
5306 * server.c (handle_qxfer_exec_file): Use current process
5307 if annex is empty.
5308
5309 2015-05-08 Sandra Loosemore <sandra@codesourcery.com>
5310
5311 * linux-nios2-low.c: Include elf/common.h. Adjust comments.
5312 Remove HAVE_PTRACE_GETREGS conditionals.
5313 (nios2_regsets): Use PTRACE_GETREGSET and PTRACE_SETREGSET
5314 instead of PTRACE_GETREGS and PTRACE_SETREGS.
5315
5316 2015-05-08 Yao Qi <yao.qi@linaro.org>
5317
5318 * linux-low.c (linux_supports_conditional_breakpoints): New
5319 function.
5320 (linux_target_ops): Install new target method.
5321 * lynx-low.c (lynx_target_ops): Install NULL hook for
5322 supports_conditional_breakpoints.
5323 * nto-low.c (nto_target_ops): Likewise.
5324 * spu-low.c (spu_target_ops): Likewise.
5325 * win32-low.c (win32_target_ops): Likewise.
5326 * server.c (handle_query): Check
5327 target_supports_conditional_breakpoints.
5328 * target.h (struct target_ops) <supports_conditional_breakpoints>:
5329 New field.
5330 (target_supports_conditional_breakpoints): New macro.
5331
5332 2015-05-06 Pedro Alves <palves@redhat.com>
5333
5334 PR server/18081
5335 * server.c (start_inferior): If the process exits, mourn it.
5336
5337 2015-04-21 Gary Benson <gbenson@redhat.com>
5338
5339 * hostio.c (fileio_open_flags_to_host): Factored out to
5340 fileio_to_host_openflags in common/fileio.c. Single use
5341 updated.
5342
5343 2015-04-17 Max Filippov <jcmvbkbc@gmail.com>
5344
5345 * linux-xtensa-low.c (xtensa_fill_gregset)
5346 (xtensa_store_gregset): Check XCHAL_HAVE_LOOPS instead of
5347 XCHAL_HAVE_LOOP.
5348
5349 2015-04-17 Max Filippov <jcmvbkbc@gmail.com>
5350
5351 * linux-xtensa-low.c (xtensa_usrregs_info): Remove.
5352 (regs_info): Replace usrregs pointer with NULL.
5353
5354 2015-04-17 Gary Benson <gbenson@redhat.com>
5355
5356 * target.h (struct target_ops) <pid_to_exec_file>: New field.
5357 * linux-low.c (linux_target_ops): Initialize pid_to_exec_file.
5358 * server.c (handle_qxfer_exec_file): New function.
5359 (qxfer_packets): Add exec-file entry.
5360 (handle_query): Report qXfer:exec-file:read as supported packet.
5361
5362 2015-04-14 Romain Naour <romain.naour@openwide.fr> (tiny change)
5363
5364 * linux-low.c (linux_read_offsets): Remove get_thread_lwp.
5365
5366 2015-04-09 Gary Benson <gbenson@redhat.com>
5367
5368 * hostio-errno.c (errno_to_fileio_error): Remove function.
5369 Update caller to use remote_fileio_to_fio_error.
5370
5371 2015-04-09 Yao Qi <yao.qi@linaro.org>
5372
5373 * linux-low.c (linux_insert_point): Call
5374 insert_memory_breakpoint if TYPE is raw_bkpt_type_sw.
5375 (linux_remove_point): Call remove_memory_breakpoint if type is
5376 raw_bkpt_type_sw.
5377 * linux-x86-low.c (x86_insert_point): Don't call
5378 insert_memory_breakpoint.
5379 (x86_remove_point): Don't call remove_memory_breakpoint.
5380
5381 2015-04-01 Pedro Alves <palves@redhat.com>
5382 Cleber Rosa <crosa@redhat.com>
5383
5384 * server.c (gdbserver_usage): Reorganize and extend the usage
5385 message.
5386
5387 2015-03-24 Pedro Alves <palves@redhat.com>
5388
5389 * linux-low.c (check_stopped_by_breakpoint): Tweak debug log
5390 output. Also dump TRAP_TRACE.
5391 (linux_low_filter_event): In debug output, distinguish a
5392 resume_stop SIGSTOP from a delayed SIGSTOP.
5393
5394 2015-03-24 Gary Benson <gbenson@redhat.com>
5395
5396 * linux-x86-low.c (x86_linux_new_thread): Moved to
5397 nat/x86-linux.c.
5398 (x86_linux_prepare_to_resume): Likewise.
5399
5400 2015-03-24 Gary Benson <gbenson@redhat.com>
5401
5402 * Makefile.in (x86-linux-dregs.o): New rule.
5403 * configure.srv: Add x86-linux-dregs.o to relevant targets.
5404 * linux-x86-low.c: Include nat/x86-linux-dregs.h.
5405 (u_debugreg_offset): Moved to nat/x86-linux-dregs.c.
5406 (x86_linux_dr_get): Likewise.
5407 (x86_linux_dr_set): Likewise.
5408 (update_debug_registers_callback): Likewise.
5409 (x86_linux_dr_set_addr): Likewise.
5410 (x86_linux_dr_get_addr): Likewise.
5411 (x86_linux_dr_set_control): Likewise.
5412 (x86_linux_dr_get_control): Likewise.
5413 (x86_linux_dr_get_status): Likewise.
5414 (x86_linux_update_debug_registers): Likewise.
5415
5416 2015-03-24 Gary Benson <gbenson@redhat.com>
5417
5418 * linux-x86-low.c (x86_linux_update_debug_registers):
5419 New function, factored out from...
5420 (x86_linux_prepare_to_resume): ...this.
5421
5422 2015-03-24 Gary Benson <gbenson@redhat.com>
5423
5424 * linux-x86-low.c (x86_linux_dr_get): Update comments.
5425 (x86_linux_dr_set): Likewise.
5426 (update_debug_registers_callback): Likewise.
5427 (x86_linux_dr_set_addr): Likewise.
5428 (x86_linux_dr_get_addr): Likewise.
5429 (x86_linux_dr_set_control): Likewise.
5430 (x86_linux_dr_get_control): Likewise.
5431 (x86_linux_dr_get_status): Likewise.
5432 (x86_linux_prepare_to_resume): Likewise.
5433
5434 2015-03-24 Gary Benson <gbenson@redhat.com>
5435
5436 * linux-x86-low.c (x86_linux_dr_get): Add assertion.
5437 Use perror_with_name. Pass string through gettext.
5438 (x86_linux_dr_set): Likewise.
5439
5440 2015-03-24 Gary Benson <gbenson@redhat.com>
5441
5442 * linux-x86-low.c (x86_dr_low_set_addr): Rename to...
5443 (x86_linux_dr_set_addr): ...this.
5444 (x86_dr_low_get_addr): Rename to...
5445 (x86_linux_dr_get_addr): ...this.
5446 (x86_dr_low_set_control): Rename to...
5447 (x86_linux_dr_set_control): ...this.
5448 (x86_dr_low_get_control): Rename to...
5449 (x86_linux_dr_get_control): ...this.
5450 (x86_dr_low_get_status): Rename to...
5451 (x86_linux_dr_get_status): ...this.
5452 (x86_dr_low): Update with new function names.
5453
5454 2015-03-24 Gary Benson <gbenson@redhat.com>
5455
5456 * Makefile.in (x86-linux.o): New rule.
5457 * configure.srv: Add x86-linux.o to relevant targets.
5458 * linux-low.c (lwp_set_arch_private_info): New function.
5459 (lwp_arch_private_info): Likewise.
5460 * linux-x86-low.c: Include nat/x86-linux.h.
5461 (arch_lwp_info): Removed structure.
5462 (update_debug_registers_callback):
5463 Use lwp_set_debug_registers_changed.
5464 (x86_linux_prepare_to_resume): Use lwp_debug_registers_changed
5465 and lwp_set_debug_registers_changed.
5466 (x86_linux_new_thread): Use lwp_set_debug_registers_changed.
5467
5468 2015-03-24 Gary Benson <gbenson@redhat.com>
5469
5470 * linux-low.h (linux_target_ops) <new_thread>: Changed signature.
5471 * linux-arm-low.c (arm_new_thread): Likewise.
5472 * linux-aarch64-low.c (aarch64_linux_new_thread): Likewise.
5473 * linux-mips-low.c (mips_linux_new_thread): Likewise.
5474 * linux-x86-low.c (x86_linux_new_thread): Likewise.
5475 * linux-low.c (add_lwp): Update the_low_target.new_thread call.
5476
5477 2015-03-24 Gary Benson <gbenson@redhat.com>
5478
5479 * linux-low.c (ptid_of_lwp): New function.
5480 (lwp_is_stopped): Likewise.
5481 (lwp_stop_reason): Likewise.
5482 * linux-x86-low.c (update_debug_registers_callback):
5483 Use lwp_is_stopped.
5484 (x86_linux_prepare_to_resume): Use ptid_of_lwp and
5485 lwp_stop_reason.
5486
5487 2015-03-24 Gary Benson <gbenson@redhat.com>
5488
5489 * linux-low.h (linux_stop_lwp): Remove declaration.
5490
5491 2015-03-24 Gary Benson <gbenson@redhat.com>
5492
5493 * linux-low.h: Include nat/linux-nat.h.
5494 * linux-low.c (iterate_over_lwps_args): New structure.
5495 (iterate_over_lwps_filter): New function.
5496 (iterate_over_lwps): Likewise.
5497 * linux-x86-low.c (update_debug_registers_callback):
5498 Update signature to what iterate_over_lwps expects.
5499 Remove PID check that iterate_over_lwps now performs.
5500 (x86_dr_low_set_addr): Use iterate_over_lwps.
5501 (x86_dr_low_set_control): Likewise.
5502
5503 2015-03-24 Gary Benson <gbenson@redhat.com>
5504
5505 * linux-x86-low.c (x86_debug_reg_state): New function.
5506 (x86_linux_prepare_to_resume): Use the above.
5507
5508 2015-03-24 Gary Benson <gbenson@redhat.com>
5509
5510 * linux-low.c (current_lwp_ptid): New function.
5511 * linux-x86-low.c: Include nat/linux-nat.h.
5512 (x86_dr_low_get_addr): Use current_lwp_ptid.
5513 (x86_dr_low_get_control): Likewise.
5514 (x86_dr_low_get_status): Likewise.
5515
5516 2015-03-20 Pedro Alves <palves@redhat.com>
5517
5518 * tracepoint.c (cmd_qtstatus): Make "str" const.
5519
5520 2015-03-20 Pedro Alves <palves@redhat.com>
5521
5522 * server.c (handle_general_set): Make "req_str" const.
5523
5524 2015-03-19 Pedro Alves <palves@redhat.com>
5525
5526 * linux-low.c (linux_resume_one_lwp): Rename to ...
5527 (linux_resume_one_lwp_throw): ... this. Don't handle ESRCH here,
5528 instead call perror_with_name.
5529 (check_ptrace_stopped_lwp_gone): New function.
5530 (linux_resume_one_lwp): Reimplement as wrapper around
5531 linux_resume_one_lwp_throw that swallows errors if the LWP is
5532 gone.
5533
5534 2015-03-19 Pedro Alves <palves@redhat.com>
5535
5536 * linux-low.c (count_events_callback, select_event_lwp_callback):
5537 No longer check whether the thread has resume_stop as last resume
5538 kind.
5539
5540 2015-03-19 Pedro Alves <palves@redhat.com>
5541
5542 * linux-low.c (count_events_callback, select_event_lwp_callback):
5543 Use the lwp's status_pending_p field, not the thread's.
5544
5545 2015-03-19 Pedro Alves <palves@redhat.com>
5546
5547 * linux-low.c (select_event_lwp_callback): Update comments to
5548 no longer mention SIGTRAP.
5549
5550 2015-03-18 Gary Benson <gbenson@redhat.com>
5551
5552 * server.c (handle_query): Do not report vFile:fstat as supported.
5553
5554 2015-03-11 Gary Benson <gbenson@redhat.com>
5555
5556 * hostio.c (sys/types.h): New include.
5557 (sys/stat.h): Likewise.
5558 (common-remote-fileio.h): Likewise.
5559 (handle_fstat): New function.
5560 (handle_vFile): Handle vFile:fstat packets.
5561
5562 2015-03-11 Gary Benson <gbenson@redhat.com>
5563
5564 * configure.ac (AC_CHECK_MEMBERS): Add checks for
5565 struct stat.st_blocks and struct stat.st_blksize.
5566 * configure: Regenerate.
5567 * config.in: Likewise.
5568 * Makefile.in (SFILES): Add common/common-remote-fileio.c.
5569 (OBS): Add common-remote-fileio.o.
5570 (common-remote-fileio.o): New rule.
5571
5572 2015-03-09 Pedro Alves <palves@redhat.com>
5573
5574 * tracepoint.c (gdb_agent_helper_thread): Cast '&sockaddr' to
5575 'struct sockaddr' pointer in 'accept' call.
5576
5577 2015-03-09 Pedro Alves <palves@redhat.com>
5578
5579 Revert:
5580 2015-03-07 Pedro Alves <palves@redhat.com>
5581 * gdbreplay.c: No longer include <netinet/in.h>, <sys/socket.h>,
5582 or <winsock2.h> here. Instead include "gdb_socket.h".
5583 (remote_open): Use union gdb_sockaddr_u.
5584 * remote-utils.c: No longer include <netinet/in.h>, <sys/socket.h>
5585 or <winsock2.h> here. Instead include "gdb_socket.h".
5586 (handle_accept_event, remote_prepare): Use union gdb_sockaddr_u.
5587 * tracepoint.c: Include "gdb_socket.h" instead of <sys/socket.h>
5588 or <sys/un.h>.
5589 (init_named_socket, gdb_agent_helper_thread): Use union
5590 gdb_sockaddr_u.
5591
5592 2015-03-07 Pedro Alves <palves@redhat.com>
5593
5594 * configure.ac (build_warnings): Move
5595 -Wdeclaration-after-statement to the C-specific set.
5596 * configure: Regenerate.
5597
5598 2015-03-07 Pedro Alves <palves@redhat.com>
5599
5600 * gdbreplay.c: No longer include <netinet/in.h>, <sys/socket.h>,
5601 or <winsock2.h> here. Instead include "gdb_socket.h".
5602 (remote_open): Use union gdb_sockaddr_u.
5603 * remote-utils.c: No longer include <netinet/in.h>, <sys/socket.h>
5604 or <winsock2.h> here. Instead include "gdb_socket.h".
5605 (handle_accept_event, remote_prepare): Use union gdb_sockaddr_u.
5606 * tracepoint.c: Include "gdb_socket.h" instead of <sys/socket.h>
5607 or <sys/un.h>.
5608 (init_named_socket, gdb_agent_helper_thread): Use union
5609 gdb_sockaddr_u.
5610
5611 2015-03-07 Pedro Alves <palves@redhat.com>
5612
5613 Adjust all callers of TRY_CATCH to use TRY/CATCH/END_CATCH
5614 instead.
5615
5616 2015-03-06 Yao Qi <yao.qi@linaro.org>
5617
5618 * linux-aarch64-low.c (aarch64_insert_point): Use
5619 show_debug_regs as a boolean.
5620 (aarch64_remove_point): Likewise.
5621
5622 2015-03-05 Pedro Alves <palves@redhat.com>
5623
5624 * lynx-low.c (lynx_target_ops): Install NULL hooks for
5625 stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
5626 stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint.
5627 * nto-low.c (nto_target_ops): Likewise.
5628 * spu-low.c (spu_target_ops): Likewise.
5629 * win32-low.c (win32_target_ops): Likewise.
5630
5631 2015-03-04 Pedro Alves <palves@redhat.com>
5632
5633 * linux-low.c (check_stopped_by_breakpoint) [USE_SIGTRAP_SIGINFO]:
5634 Decide whether a breakpoint triggered based on the SIGTRAP's
5635 siginfo.si_code.
5636 (thread_still_has_status_pending_p) [USE_SIGTRAP_SIGINFO]: Don't check whether a
5637 breakpoint is inserted if relying on SIGTRAP's siginfo.si_code.
5638 (linux_low_filter_event): Check for breakpoints before checking
5639 watchpoints.
5640 (linux_wait_1): Don't re-increment the PC if relying on SIGTRAP's
5641 siginfo.si_code.
5642 (linux_stopped_by_sw_breakpoint)
5643 (linux_supports_stopped_by_sw_breakpoint)
5644 (linux_stopped_by_hw_breakpoint)
5645 (linux_supports_stopped_by_hw_breakpoint): New functions.
5646 (linux_target_ops): Install new target methods.
5647
5648 2015-03-04 Pedro Alves <palves@redhat.com>
5649
5650 * remote-utils.c (prepare_resume_reply): Report swbreak/hbreak.
5651 * server.c (swbreak_feature, hwbreak_feature): New globals.
5652 (handle_query) <qSupported>: Handle "swbreak+" and "hwbreak+".
5653 (captured_main): Clear swbreak_feature and hwbreak_feature.
5654 * server.h (swbreak_feature, hwbreak_feature): Declare.
5655 * target.h (struct target_ops) <stopped_by_sw_breakpoint,
5656 supports_stopped_by_sw_breakpoint, stopped_by_hw_breakpoint,
5657 supports_stopped_by_hw_breakpoint>: New fields.
5658 (target_supports_stopped_by_sw_breakpoint)
5659 (target_stopped_by_sw_breakpoint)
5660 (target_supports_stopped_by_hw_breakpoint)
5661 (target_stopped_by_hw_breakpoint): Declare.
5662
5663 2015-03-04 Pedro Alves <palves@redhat.com>
5664
5665 enum lwp_stop_reason -> enum target_stop_reason
5666 * linux-low.c (check_stopped_by_breakpoint): Adjust.
5667 (thread_still_has_status_pending_p, check_stopped_by_watchpoint)
5668 (linux_wait_1, stuck_in_jump_pad_callback)
5669 (move_out_of_jump_pad_callback, linux_resume_one_lwp)
5670 (linux_stopped_by_watchpoint):
5671 * linux-low.h (enum lwp_stop_reason): Delete.
5672 (struct lwp_info) <stop_reason>: Now an enum target_stop_reason.
5673 * linux-x86-low.c (x86_linux_prepare_to_resume): Adjust.
5674
5675 2015-03-04 Yao Qi <yao.qi@linaro.org>
5676
5677 * Makefile.in (SFILES): Add linux-aarch64-low.c.
5678
5679 2015-03-03 Gary Benson <gbenson@redhat.com>
5680
5681 * hostio.c (handle_vFile): Fix prefix lengths.
5682
5683 2015-03-03 Markus Metzger <markus.t.metzger@intel.com>
5684
5685 * linux-low.c (linux_low_enable_btrace): Do not overwrite non-zero
5686 ptr_bits.
5687
5688 2015-03-02 Andreas Arnez <arnez@linux.vnet.ibm.com>
5689
5690 * Makefile.in (s390-vx-linux64.c, s390-tevx-linux64.c)
5691 (s390x-vx-linux64.c, s390x-tevx-linux64.c): New rules.
5692 (clean): Add "rm -f" for above C files.
5693 * configure.srv (srv_regobj): Add s390-vx-linux64.o,
5694 s390-tevx-linux64.o, s390x-vx-linux64.o, and s390x-tevx-linux64.o.
5695 (srv_xmlfiles): Add s390-vx-linux64.xml, s390-tevx-linux64.xml,
5696 s390x-vx-linux64.xml, s390x-tevx-linux64.xml, and s390-vx.xml.
5697 * linux-s390-low.c (HWCAP_S390_VX): New macro.
5698 (init_registers_s390_vx_linux64, init_registers_s390_tevx_linux64)
5699 (init_registers_s390x_vx_linux64)
5700 (init_registers_s390x_tevx_linux64)
5701 (tdesc_s390_vx_linux64, tdesc_s390_tevx_linux64)
5702 (tdesc_s390x_vx_linux64, tdesc_s390x_tevx_linux64): New extern
5703 declarations.
5704 (s390_fill_vxrs_low, s390_store_vxrs_low, s390_fill_vxrs_high)
5705 (s390_store_vxrs_high): New functions.
5706 (s390_regsets): Add entries for NT_S390_VXRS_LOW and
5707 NT_S390_VXRS_HIGH.
5708 (s390_arch_setup): Add logic for selecting one of the new target
5709 descriptions. Activate the new vector regsets if applicable.
5710 (initialize_low_arch): Also invoke init_registers_s390_vx_linux64,
5711 init_registers_s390_tevx_linux64, init_registers_s390x_vx_linux64,
5712 and init_registers_s390x_tevx_linux64.
5713
5714 2015-03-01 Pedro Alves <palves@redhat.com>
5715
5716 * linux-i386-ipa.c (gdb_agent_get_raw_reg): Constify 'raw_regs'
5717 parameter.
5718
5719 2015-02-27 Pedro Alves <palves@redhat.com>
5720
5721 * linux-x86-low.c (u_debugreg_offset): New function.
5722 (x86_linux_dr_get, x86_linux_dr_set): Use it.
5723
5724 2015-02-27 Pedro Alves <palves@redhat.com>
5725
5726 * gdb_proc_service.h: Wrap with EXTERN_C_PUSH/EXTERN_C_POP.
5727 [!HAVE_PROC_SERVICE_H] (struct ps_prochandle): Forward declare.
5728 [!HAVE_PROC_SERVICE_H] (ps_pdread, ps_pdwrite, ps_ptread)
5729 ps_ptwrite, ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5730 (ps_lsetfpregs, ps_getpid)
5731 (ps_get_thread_area, ps_pglobal_lookup, ps_pstop, ps_pcontinue)
5732 (ps_lstop, ps_lcontinue, ps_lgetxregsize, ps_lgetxregs)
5733 (ps_lsetxregs, ps_plog): Declare.
5734
5735 2015-02-27 Pedro Alves <palves@redhat.com>
5736
5737 * linux-amd64-ipa.c (gdb_agent_get_raw_reg): Use
5738 IP_AGENT_EXPORT_FUNC.
5739 * linux-i386-ipa.c (gdb_agent_get_raw_reg): Use
5740 IP_AGENT_EXPORT_FUNC.
5741 * tracepoint.c (ATTR_USED, ATTR_NOINLINE, ATTR_CONSTRUCTOR)
5742 (IP_AGENT_EXPORT): Delete.
5743 (gdb_tp_heap_buffer, gdb_jump_pad_buffer, gdb_jump_pad_buffer_end)
5744 (gdb_trampoline_buffer, gdb_trampoline_buffer_end)
5745 (gdb_trampoline_buffer_error, collecting, gdb_collect)
5746 (stop_tracing, flush_trace_buffer, about_to_request_buffer_space)
5747 (trace_buffer_is_full, stopping_tracepoint, expr_eval_result)
5748 (error_tracepoint, tracepoints, tracing, trace_buffer_ctrl)
5749 (trace_buffer_ctrl_curr, trace_buffer_lo, trace_buffer_hi)
5750 (traceframe_read_count, traceframe_write_count)
5751 (traceframes_created, trace_state_variables, get_raw_reg)
5752 (get_trace_state_variable_value, set_trace_state_variable_value)
5753 (ust_loaded, helper_thread_id, cmd_buf): Use
5754 IPA_SYM_EXPORTED_NAME.
5755 (stop_tracing, flush_trace_buffer): Use IP_AGENT_EXPORT_FUNC.
5756 (tracepoints) Use IP_AGENT_EXPORT_VAR.
5757 (stopping_tracepoint, trace_buffer_is_full, expr_eval_result): Use
5758 IP_AGENT_EXPORT_VAR and wrap in EXTERN_C_PUSH/EXTERN_C_POP.
5759 (last_tracepoint): Move into !IN_PROCESS_AGENT block.
5760 (error_tracepoint): Use IP_AGENT_EXPORT_VAR and wrap in
5761 EXTERN_C_PUSH/EXTERN_C_POP.
5762 (trace_state_variables): Use IP_AGENT_EXPORT_VAR.
5763 (trace_buffer_lo, trace_buffer_hi): Use IP_AGENT_EXPORT_VAR and
5764 wrap in EXTERN_C_PUSH/EXTERN_C_POP.
5765 (trace_buffer_ctrl, trace_buffer_ctrl_curr)
5766 (traceframe_write_count, traceframe_read_count)
5767 (traceframes_created, tracing): Use IP_AGENT_EXPORT_VAR.
5768 (about_to_request_buffer_space, get_trace_state_variable_value)
5769 (set_trace_state_variable_value): Use IP_AGENT_EXPORT_FUNC.
5770 (collecting): Use IP_AGENT_EXPORT_VAR and wrap in
5771 EXTERN_C_PUSH/EXTERN_C_POP.
5772 (gdb_collect): Use IP_AGENT_EXPORT_FUNC.
5773 (ust_loaded, cmd_buf): Use IP_AGENT_EXPORT_VAR.
5774 (helper_thread_id, gdb_agent_capability): Use IP_AGENT_EXPORT_VAR
5775 and wrap in EXTERN_C_PUSH/EXTERN_C_POP.
5776 (gdb_tp_heap_buffer, gdb_jump_pad_buffer, gdb_jump_pad_buffer_end)
5777 (gdb_trampoline_buffer, gdb_trampoline_buffer_end)
5778 (gdb_trampoline_buffer_error): Use IP_AGENT_EXPORT_VAR.
5779 * tracepoint.h (ATTR_USED, ATTR_NOINLINE, EXPORTED_SYMBOL):
5780 Define.
5781 (IP_AGENT_EXPORT_FUNC, IP_AGENT_EXPORT_VAR)
5782 (IP_AGENT_EXPORT_VAR_DECL): Define.
5783 (tracing): Declare.
5784 (gdb_agent_get_raw_reg): Declare.
5785
5786 2015-02-27 Tom Tromey <tromey@redhat.com>
5787 Pedro Alves <palves@redhat.com>
5788
5789 Rename symbols whose names are reserved C++ keywords throughout.
5790
5791 2015-02-27 Pedro Alves <palves@redhat.com>
5792
5793 * Makefile.in (COMPILER): New, get it from autoconf.
5794 (CXX): Get from autoconf instead.
5795 (COMPILE.pre): Use COMPILER.
5796 (CC-LD): Rename to ...
5797 (CC_LD): ... this. Use COMPILER.
5798 (gdbserver$(EXEEXT), gdbreplay$(EXEEXT), $(IPA_LIB)): Adjust.
5799 (CXX_FOR_TARGET): Default to g++ instead of gcc.
5800 * acinclude.m4: Include build-with-cxx.m4.
5801 * configure.ac: Call AC_PROG_CXX and GDB_AC_BUILD_WITH_CXX.
5802 Disable -Werror by default if building in C++ mode.
5803 (build_warnings): Add -Wno-sign-compare, -Wno-write-strings and
5804 -Wno-narrowing in C++ mode. Run supported-warning-flags tests with
5805 the C++ compiler. Save/restore CXXFLAGS too.
5806 * configure: Regenerate.
5807
5808 2015-02-27 Pedro Alves <palves@redhat.com>
5809
5810 * acinclude.m4: Include libiberty.m4.
5811 * configure.ac: Call libiberty_INIT.
5812 * config.in, configure: Regenerate.
5813
5814 2015-02-26 Pedro Alves <palves@redhat.com>
5815
5816 * linux-low.c (linux_wait_1): When incrementing the PC past a
5817 program breakpoint always use the_low_target.breakpoint_len as
5818 increment, rather than the maximum between that and
5819 the_low_target.decr_pc_after_break.
5820
5821 2015-02-23 Pedro Alves <palves@redhat.com>
5822
5823 * linux-low.c (check_stopped_by_breakpoint): Don't check if the
5824 thread was doing a step-over; always adjust the PC if
5825 we stepped over a permanent breakpoint.
5826 (linux_wait_1): If we stepped over breakpoint that was on top of a
5827 permanent breakpoint, manually advance the PC past it.
5828
5829 2015-02-23 Pedro Alves <palves@redhat.com>
5830
5831 * linux-x86-low.c (REGSIZE): Define in both 32-bit and 64-bit
5832 modes.
5833 (x86_fill_gregset, x86_store_gregset): Use it when handling
5834 $orig_eax.
5835
5836 2015-02-20 Pedro Alves <palves@redhat.com>
5837
5838 * thread-db.c: Include "nat/linux-procfs.h".
5839 (thread_db_init): Skip listing new threads if the kernel supports
5840 PTRACE_EVENT_CLONE and /proc/PID/task/ is accessible.
5841
5842 2015-02-20 Pedro Alves <palves@redhat.com>
5843
5844 * linux-low.c (status_pending_p_callback): Use ptid_match.
5845
5846 2015-02-19 Antoine Tremblay <antoine.tremblay@ericsson.com>
5847
5848 PR breakpoints/16812
5849 * linux-low.c (wstatus_maybe_breakpoint): Remove.
5850 (linux_low_filter_event): Update wstatus_maybe_breakpoint name.
5851 (linux_wait_1): Report SIGTRAP,SIGILL,SIGSEGV.
5852
5853 2015-02-10 Antoine Tremblay <antoine.tremblay@ericsson.com>
5854
5855 PR breakpoints/15956
5856 * tracepoint.c (cmd_qtinit): Add check for current_thread.
5857
5858 2015-02-09 Markus Metzger <markus.t.metzger@intel.com>
5859
5860 * linux-low.c (linux_low_btrace_conf): Print size.
5861 * server.c (handle_btrace_conf_general_set): New.
5862 (hanle_general_set): Call handle_btrace_conf_general_set.
5863 (handle_query): Report Qbtrace-conf:bts:size as supported.
5864
5865 2015-02-09 Markus Metzger <markus.t.metzger@intel.com>
5866
5867 * linux-low.c (linux_low_enable_btrace): Update parameters.
5868 (linux_low_btrace_conf): New.
5869 (linux_target_ops)<to_btrace_conf>: Initialize.
5870 * server.c (current_btrace_conf): New.
5871 (handle_btrace_enable): Rename to ...
5872 (handle_btrace_enable_bts): ... this. Pass &current_btrace_conf
5873 to target_enable_btrace. Update comment. Update users.
5874 (handle_qxfer_btrace_conf): New.
5875 (qxfer_packets): Add btrace-conf entry.
5876 (handle_query): Report qXfer:btrace-conf:read as supported packet.
5877 * target.h (target_ops)<enable_btrace>: Update parameters and comment.
5878 (target_ops)<read_btrace_conf>: New.
5879 (target_enable_btrace): Update parameters.
5880 (target_read_btrace_conf): New.
5881
5882 2015-02-09 Markus Metzger <markus.t.metzger@intel.com>
5883
5884 * server.c (handle_btrace_general_set): Remove call to
5885 target_supports_btrace.
5886 (supported_btrace_packets): New.
5887 (handle_query): Call supported_btrace_packets.
5888 * target.h: include btrace-common.h.
5889 (btrace_target_info): Removed.
5890 (supports_btrace, target_supports_btrace): Update parameters.
5891
5892 2015-02-09 Markus Metzger <markus.t.metzger@intel.com>
5893
5894 * Makefile.in (SFILES): Add common/btrace-common.c.
5895 (OBS): Add common/btrace-common.o.
5896 (btrace-common.o): Add build rules.
5897 * linux-low: Include btrace-common.h.
5898 (linux_low_read_btrace): Use struct btrace_data. Call
5899 btrace_data_init and btrace_data_fini.
5900
5901 2015-02-06 Pedro Alves <palves@redhat.com>
5902
5903 * thread-db.c (find_new_threads_callback): Add debug output.
5904
5905 2015-02-04 Pedro Alves <palves@redhat.com>
5906
5907 * linux-low.c (handle_extended_wait): Don't resume LWPs here.
5908 (resume_stopped_resumed_lwps): New function.
5909 (linux_wait_for_event_filtered): Use it.
5910
5911 2015-01-15 Sergio Durigan Junior <sergiodj@redhat.com>
5912
5913 * Makefile.in (SFILES): Add linux-personality.c.
5914 (linux-personality.o): New rule.
5915 * configure.srv (srv_linux_obj): Add linux-personality.o to the
5916 list of objects to be built.
5917 * linux-low.c: Include nat/linux-personality.h.
5918 (linux_create_inferior): Remove code to disable address space
5919 randomization (moved to ../nat/linux-personality.c). Create
5920 cleanup to disable address space randomization.
5921
5922 2015-01-15 Sergio Durigan Junior <sergiodj@redhat.com>
5923
5924 * Makefile.in (posix-strerror.o): New rule.
5925 (mingw-strerror.o): Likewise.
5926 * configure: Regenerated.
5927 * configure.ac: Source file ../common/common.host. Initialize new
5928 variable srv_host_obs. Add srv_host_obs to GDBSERVER_DEPFILES.
5929
5930 2015-01-14 Yao Qi <yao@codesourcery.com>
5931
5932 * Makefile.in (SFILES): Add nat/ppc-linux.c.
5933 (ppc-linux.o): New rule.
5934 * configure.srv (powerpc*-*-linux*): Add ppc-linux.o.
5935 * configure.ac: AC_CHECK_FUNCS(getauxval).
5936 * config.in: Re-generated.
5937 * configure: Re-generated.
5938 * linux-ppc-low.c (ppc_arch_setup) [__powerpc64__]: Call
5939 ppc64_64bit_inferior_p
5940
5941 2015-01-14 Yao Qi <yao@codesourcery.com>
5942
5943 * linux-ppc-low.c: Include "nat/ppc-linux.h".
5944 (PPC_FEATURE_HAS_VSX): Move to nat/ppc-linux.h.
5945 (PPC_FEATURE_HAS_ALTIVEC, PPC_FEATURE_HAS_SPE): Likewise.
5946 (PT_ORIG_R3, PT_TRAP): Likewise.
5947 (PTRACE_GETVSXREGS, PTRACE_SETVSXREGS): Likewise.
5948 (PTRACE_GETVRREGS, PTRACE_SETVRREGS): Likewise.
5949 (PTRACE_GETEVRREGS, PTRACE_SETEVRREGS): Likewise.
5950
5951 2015-01-10 Joel Brobecker <brobecker@adacore.com>
5952
5953 * i387-fp.c (i387_cache_to_xsave): In look over
5954 num_avx512_zmmh_high_registers, replace use of struct i387_xsave
5955 zmmh_low_space field by use of zmmh_high_space.
5956
5957 2015-01-09 Pedro Alves <palves@redhat.com>
5958
5959 * linux-low.c (step_over_bkpt): Move higher up in the file.
5960 (handle_extended_wait): Don't store the stop_pc here.
5961 (get_stop_pc): Adjust comments and rename to ...
5962 (check_stopped_by_breakpoint): ... this. Record whether the LWP
5963 stopped for a software breakpoint or hardware breakpoint.
5964 (thread_still_has_status_pending_p): New function.
5965 (status_pending_p_callback): Use
5966 thread_still_has_status_pending_p. If the event is no longer
5967 interesting, resume the LWP.
5968 (handle_tracepoints): Add assert.
5969 (maybe_move_out_of_jump_pad): Remove cancel_breakpoints call.
5970 (wstatus_maybe_breakpoint): New function.
5971 (cancel_breakpoint): Delete function.
5972 (check_stopped_by_watchpoint): New function, factored out from
5973 linux_low_filter_event.
5974 (lp_status_maybe_breakpoint): Delete function.
5975 (linux_low_filter_event): Remove filter_ptid argument.
5976 Leave thread group exits pending here. Store the LWP's stop PC.
5977 Always leave events pending.
5978 (linux_wait_for_event_filtered): Pull all events out of the
5979 kernel, and leave them all pending.
5980 (count_events_callback, select_event_lwp_callback): Consider all
5981 events.
5982 (cancel_breakpoints_callback, linux_cancel_breakpoints): Delete.
5983 (select_event_lwp): Only give preference to the stepping LWP in
5984 all-stop mode. Adjust comments.
5985 (ignore_event): New function.
5986 (linux_wait_1): Delete 'retry' label. Use ignore_event. Remove
5987 references to cancel_breakpoints. Adjust to renames. Also give
5988 equal priority to all LWPs that have had events in non-stop mode.
5989 If reporting a software breakpoint event, unadjust the LWP's PC.
5990 (linux_wait): If linux_wait_1 returned an ignored event, retry.
5991 (stuck_in_jump_pad_callback, move_out_of_jump_pad_callback):
5992 Adjust.
5993 (linux_resume_one_lwp): Store the LWP's PC. Adjust.
5994 (resume_status_pending_p): Use thread_still_has_status_pending_p.
5995 (linux_stopped_by_watchpoint): Adjust.
5996 (linux_target_ops): Remove reference to linux_cancel_breakpoints.
5997 * linux-low.h (enum lwp_stop_reason): New.
5998 (struct lwp_info) <stop_pc>: Adjust comment.
5999 <stopped_by_watchpoint>: Delete field.
6000 <stop_reason>: New field.
6001 * linux-x86-low.c (x86_linux_prepare_to_resume): Adjust.
6002 * mem-break.c (software_breakpoint_inserted_here)
6003 (hardware_breakpoint_inserted_here): New function.
6004 * mem-break.h (software_breakpoint_inserted_here)
6005 (hardware_breakpoint_inserted_here): Declare.
6006 * target.h (struct target_ops) <cancel_breakpoints>: Remove field.
6007 (cancel_breakpoints): Delete.
6008 * tracepoint.c (clear_installed_tracepoints, stop_tracing)
6009 (upload_fast_traceframes): Remove references to
6010 cancel_breakpoints.
6011
6012 2015-01-09 Pedro Alves <palves@redhat.com>
6013
6014 * thread-db.c (find_new_threads_callback): Ignore thread if the
6015 kernel thread ID is -1.
6016
6017 2015-01-09 Pedro Alves <palves@redhat.com>
6018
6019 * linux-low.c (linux_attach_fail_reason_string): Move to
6020 nat/linux-ptrace.c, and rename.
6021 (linux_attach_lwp): Update comment.
6022 (attach_proc_task_lwp_callback): New function.
6023 (linux_attach): Adjust to rename and use
6024 linux_proc_attach_tgid_threads.
6025 (linux_attach_fail_reason_string): Delete declaration.
6026
6027 2015-01-01 Joel Brobecker <brobecker@adacore.com>
6028
6029 * gdbreplay.c (gdbreplay_version): Update copyright year to 2015.
6030 * server.c (gdbserver_version): Likewise.
6031
6032 2014-12-29 Sergio Durigan Junior <sergiodj@redhat.com>
6033
6034 * remote-utils.c: Include ctype.h.
6035 (input_interrupt): Explicitly handle the case when the char
6036 received is the NUL byte. Improve the printing of non-ASCII
6037 characters.
6038
6039 2014-12-16 Joel Brobecker <brobecker@adacore.com>
6040
6041 * linux-low.c (linux_low_filter_event): Update call to
6042 linux_enable_event_reporting following the addition of
6043 a new parameter to that function.
6044
6045 2014-12-16 Catalin Udma <catalin.udma@freescale.com>
6046
6047 PR server/17457
6048 * linux-aarch64-low.c (AARCH64_FPSR_REGNO): New define.
6049 (AARCH64_FPCR_REGNO): Likewise.
6050 (AARCH64_NUM_REGS): Update to include fpsr/fpcr registers.
6051 (aarch64_fill_fpregset): Add missing fpsr/fpcr registers.
6052 (aarch64_store_fpregset): Likewise.
6053
6054 2014-12-15 Joel Brobecker <brobecker@adacore.com>
6055
6056 * lynx-low.c (lynx_resume): Use PTRACE_SINGLESTEP_ONE if N == 1.
6057 Remove FIXME comment about assumption about N.
6058
6059 2014-12-13 Joel Brobecker <brobecker@adacore.com>
6060
6061 * configure.ac: If large-file support is disabled in GDBserver,
6062 pass --disable-largefile to ACX_CONFIGURE_DIR call for "gnulib".
6063 * configure: Regenerate.
6064
6065 2014-12-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
6066
6067 * linux-low.c (regsets_fetch_inferior_registers): Suppress the
6068 warning upon ENODATA from ptrace.
6069 * linux-s390-low.c (s390_store_tdb): New.
6070 (s390_regsets): Add regset for NT_S390_TDB.
6071
6072 2014-12-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
6073
6074 * linux-low.c (regsets_store_inferior_registers): Skip regsets
6075 without a fill_function.
6076 * linux-s390-low.c (s390_fill_last_break): Remove.
6077 (s390_regsets): Set fill_function to NULL for NT_S390_LAST_BREAK.
6078 (s390_arch_setup): Use regset's size instead of fill_function for
6079 loop end condition.
6080
6081 2014-12-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
6082
6083 * linux-low.c (regsets_fetch_inferior_registers): Do not invoke
6084 the regset's store function when ptrace returned an error.
6085 * regcache.c (get_thread_regcache): Invalidate register cache
6086 before fetching inferior's registers.
6087
6088 2014-12-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
6089
6090 * linux-low.c (regsets_fetch_inferior_registers): Rephrase
6091 while-loop as for-loop.
6092 (regsets_store_inferior_registers): Likewise.
6093
6094 2014-11-28 Yao Qi <yao@codesourcery.com>
6095
6096 * configure.ac(AC_CHECK_FUNCS): Remove readlink.
6097 * config.in, configure: Re-generate.
6098 * hostio.c (handle_unlink): Remove code checking HAVE_READLINK
6099 is defined.
6100
6101 2014-11-21 Yao Qi <yao@codesourcery.com>
6102
6103 * configure.ac: Don't invoke AC_FUNC_ALLOCA.
6104 (AC_CHECK_HEADERS): Remove malloc.h.
6105 * configure: Re-generated.
6106 * config.in: Re-generated.
6107 * server.h: Don't include alloca.h and malloc.h.
6108 * gdbreplay.c: Don't check HAVE_ALLOCA_H is defined.
6109 Don't include malloc.h.
6110
6111 2014-11-17 Joel Brobecker <brobecker@adacore.com>
6112
6113 * lynx-low.c (lynx_write_memory): Put lynx_read_memory and
6114 corresponding ERRNO check in same block.
6115
6116 2014-11-12 Pedro Alves <palves@redhat.com>
6117
6118 * server.c (cont_thread): Update comment.
6119 (start_inferior, attach_inferior): No longer clear cont_thread.
6120 (handle_v_cont): No longer set cont_thread.
6121 (captured_main): Clear cont_thread each time a GDB connects.
6122
6123 2014-11-12 Pedro Alves <palves@redhat.com>
6124
6125 * linux-low.c (linux_wait_1): Don't force a wait for the Hc
6126 thread, and don't resume all threads if the Hc thread has exited.
6127
6128 2014-11-12 Pedro Alves <palves@redhat.com>
6129
6130 * linux-low.c (linux_request_interrupt): Always send a SIGINT to
6131 the process group instead of to a specific LWP.
6132
6133 2014-10-15 Pedro Alves <palves@redhat.com>
6134
6135 PR server/17487
6136 * win32-arm-low.c (arm_set_thread_context): Remove current_event
6137 parameter.
6138 (arm_set_thread_context): Delete.
6139 (the_low_target): Adjust.
6140 * win32-i386-low.c (debug_registers_changed)
6141 (debug_registers_used): Delete.
6142 (update_debug_registers_callback): New function.
6143 (x86_dr_low_set_addr, x86_dr_low_set_control): Mark all threads as
6144 needing to update their debug registers.
6145 (win32_get_current_dr): New function.
6146 (x86_dr_low_get_addr, x86_dr_low_get_control)
6147 (x86_dr_low_get_status): Fetch the debug register from the thread
6148 record's context.
6149 (i386_initial_stuff): Adjust.
6150 (i386_get_thread_context): Remove current_event parameter. Don't
6151 clear debug_registers_changed nor copy DR values to
6152 debug_reg_state.
6153 (i386_set_thread_context): Delete.
6154 (i386_prepare_to_resume): New function.
6155 (i386_thread_added): Mark the thread as needing to update irs
6156 debug registers.
6157 (the_low_target): Remove i386_set_thread_context and install
6158 i386_prepare_to_resume.
6159 * win32-low.c (win32_get_thread_context): Adjust.
6160 (win32_set_thread_context): Use SetThreadContext
6161 directly.
6162 (win32_prepare_to_resume): New function.
6163 (win32_require_context): New function, factored out from ...
6164 (thread_rec): ... this.
6165 (continue_one_thread): Call win32_prepare_to_resume on each thread
6166 we're about to continue.
6167 (win32_resume): Call win32_prepare_to_resume on the event thread.
6168 * win32-low.h (struct win32_thread_info)
6169 <debug_registers_changed>: New field.
6170 (struct win32_target_ops): Change prototype of set_thread_context,
6171 delete set_thread_context and add prepare_to_resume.
6172 (win32_require_context): New declaration.
6173
6174 2014-10-08 Gary Benson <gbenson@redhat.com>
6175
6176 * server.h: Do not include common-exceptions.h.
6177
6178 2014-10-08 Gary Benson <gbenson@redhat.com>
6179
6180 * server.h: Do not include cleanups.h.
6181
6182 2014-09-30 James Hogan <james.hogan@imgtec.com>
6183
6184 * Makefile.in (clean): Add rm -f commands for mips-dsp-linux.c and
6185 mips64-dsp-linux.c.
6186
6187 2014-09-23 Yao Qi <yao@codesourcery.com>
6188
6189 * linux-low.c (lp_status_maybe_breakpoint): New function.
6190 (linux_low_filter_event): Call lp_status_maybe_breakpoint.
6191 (count_events_callback): Likewise.
6192 (select_event_lwp_callback): Likewise.
6193 (cancel_breakpoints_callback): Likewise.
6194
6195 2014-09-19 Don Breazeal <donb@codesourcery.com>
6196
6197 * linux-low.c (handle_extended_wait): Call
6198 linux_ptrace_get_extended_event.
6199 (get_stop_pc, get_detach_signal, linux_low_filter_event): Call
6200 linux_is_extended_waitstatus.
6201
6202 2014-09-16 Joel Brobecker <brobecker@adacore.com>
6203
6204 * Makefile.in (CPPFLAGS): Define.
6205 (INTERNAL_CFLAGS_BASE): Add ${CPPFLAGS}.
6206 (IPAGENT_CFLAGS): Remove ${CPPFLAGS}.
6207
6208 2014-09-16 Gary Benson <gbenson@redhat.com>
6209
6210 * inferiors.h (current_inferior): Renamed as...
6211 (current_thread): New variable. All uses updated.
6212 * linux-low.c (get_pc): Renamed saved_inferior as saved_thread.
6213 (maybe_move_out_of_jump_pad): Likewise.
6214 (cancel_breakpoint): Likewise.
6215 (linux_low_filter_event): Likewise.
6216 (wait_for_sigstop): Likewise.
6217 (linux_resume_one_lwp): Likewise.
6218 (need_step_over_p): Likewise.
6219 (start_step_over): Likewise.
6220 (linux_stabilize_threads): Renamed save_inferior as saved_thread.
6221 * linux-x86-low.c (x86_linux_update_xmltarget): Likewise.
6222 * proc-service.c (ps_lgetregs): Renamed reg_inferior as reg_thread
6223 and save_inferior as saved_thread.
6224 * regcache.c (get_thread_regcache): Renamed saved_inferior as
6225 saved_thread.
6226 (regcache_invalidate_thread): Likewise.
6227 * remote-utils.c (prepare_resume_reply): Likewise.
6228 * thread-db.c (thread_db_get_tls_address): Likewise.
6229 (disable_thread_event_reporting): Likewise.
6230 (remove_thread_event_breakpoints): Likewise.
6231 * tracepoint.c (gdb_agent_about_to_close): Renamed save_inferior
6232 as saved_thread.
6233 * target.h (set_desired_inferior): Renamed as...
6234 (set_desired_thread): New declaration. All uses updated.
6235 * server.c (myresume): Updated comment to reference thread instead
6236 of inferior.
6237 (handle_serial_event): Likewise.
6238 (handle_target_event): Likewise.
6239
6240 2014-09-12 Tom Tromey <tromey@redhat.com>
6241 Gary Benson <gbenson@redhat.com>
6242
6243 * regcache.h: Include common-regcache.h.
6244 (regcache_read_pc): Don't declare.
6245 * regcache.c (get_thread_regcache_for_ptid): New function.
6246
6247 2014-09-11 Tom Tromey <tromey@redhat.com>
6248 Gary Benson <gbenson@redhat.com>
6249
6250 * symbol.c: New file.
6251 * Makefile.in (SFILES): Add symbol.c.
6252 (OBS): Add symbol.o.
6253
6254 2014-09-11 Gary Benson <gbenson@redhat.com>
6255
6256 * target.c (target_stop_ptid, target_continue_ptid): New
6257 functions.
6258
6259 2014-09-11 Tom Tromey <tromey@redhat.com>
6260 Gary Benson <gbenson@redhat.com>
6261
6262 * target.h: Include target/target.h.
6263 * target.c (target_read_memory, target_read_uint32)
6264 (target_write_memory): New functions.
6265
6266 2014-09-11 Gary Benson <gbenson@redhat.com>
6267
6268 * server.h (debug_hw_points): Don't declare.
6269 * server.c (debug_hw_points): Don't define. Replace all uses
6270 with show_debug_regs.
6271 * linux-aarch64-low.c (debug_hw_points): Don't define. Replace
6272 all uses with show_debug_regs.
6273
6274 2014-09-08 Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
6275
6276 * linux-ppc-low.c (ppc_collect_ptrace_register): Adjust routine to take
6277 endianness into account.
6278 (ppc_supply_ptrace_register): Likewise.
6279
6280 2014-09-03 James Hogan <james.hogan@imgtec.com>
6281
6282 * linux-mips-low.c (mips_read_description): Reset errno to 0 prior
6283 to reading DSP_CONTROL with PTRACE_PEEKUSER ptrace call.
6284
6285 2014-09-03 Gary Benson <gbenson@redhat.com>
6286
6287 * linux-x86-low.c (x86_linux_prepare_to_resume): Use
6288 ALL_DEBUG_ADDRESS_REGISTERS.
6289
6290 2014-09-02 Gary Benson <gbenson@redhat.com>
6291
6292 * i386-low.h: Renamed as...
6293 * x86-low.h: New file. All type, function and variable name
6294 prefixes changed from "i386_" to "x86_". All references updated.
6295 * i386-low.c: Renamed as...
6296 * x86-low.c: New file. All type, function and variable name
6297 prefixes changed from "i386_" to "x86_". All references updated.
6298
6299 2014-09-02 Gary Benson <gbenson@redhat.com>
6300
6301 * linux-x86-low.c (x86_linux_new_process): Use XCNEW.
6302 (x86_linux_new_thread): Likewise.
6303
6304 2014-08-29 Gary Benson <gbenson@redhat.com>
6305
6306 * server.h (setjmp.h): Do not include.
6307 (toplevel): Do not declare.
6308 (common-exceptions.h): Include.
6309 (cleanups.h): Likewise.
6310 * server.c (toplevel): Do not define.
6311 (exit_code): New static global.
6312 (detach_or_kill_for_exit_cleanup): New function.
6313 (main): New function. Original main renamed to...
6314 (captured_main): New function.
6315 * utils.c (verror) [!IN_PROCESS_AGENT]: Use throw_verror.
6316
6317 2014-08-29 Gary Benson <gbenson@redhat.com>
6318
6319 * Makefile.in (SFILES): Add common/common-exceptions.c.
6320 (OBS): Add common-exceptions.o.
6321 (common-exceptions.o): New rule.
6322 * utils.c (prepare_to_throw_exception): New function.
6323
6324 2014-08-29 Gary Benson <gbenson@redhat.com>
6325
6326 * config.in: Regenerate.
6327 * configure: Likewise.
6328
6329 2014-08-29 Gary Benson <gbenson@redhat.com>
6330
6331 * Makefile.in (SFILES): Add common/cleanups.c.
6332 (OBS): cleanups.o.
6333 (cleanups.o): New rule.
6334
6335 2014-08-29 Gary Benson <gbenson@redhat.com>
6336
6337 * utils.c (internal_vwarning): New function.
6338
6339 2014-08-28 Gary Benson <gbenson@redhat.com>
6340
6341 * utils.h (fatal): Remove declaration.
6342 * utils.c (fatal): Remove function.
6343
6344 2014-08-28 Gary Benson <gbenson@redhat.com>
6345
6346 * tracepoint.c (gdb_agent_init): Replace fatal with
6347 perror_with_name.
6348 (initialize_tracepoint): Likewise.
6349
6350 2014-08-28 Gary Benson <gbenson@redhat.com>
6351
6352 * remote-utils.c (remote_prepare): Replace fatal with error.
6353
6354 2014-08-28 Gary Benson <gbenson@redhat.com>
6355
6356 * linux-low.c (linux_async): Replace fatal with warning.
6357 Tidy up and return.
6358 (linux_start_non_stop): Return -1 if linux_async failed.
6359
6360 2014-08-28 Gary Benson <gbenson@redhat.com>
6361
6362 * linux-x86-low.c (i386_dr_low_set_addr): Replace check with
6363 gdb_assert.
6364 (i386_dr_low_get_addr): Remove vague comment.
6365 * win32-i386-low.c (i386_dr_low_set_addr): Replace check with
6366 gdb_assert.
6367
6368 2014-08-28 Gary Benson <gbenson@redhat.com>
6369
6370 * inferiors.c (get_thread_process): Replace check with gdb_assert.
6371 * linux-low.c (linux_wait_for_event_filtered): Replace fatal with
6372 internal_error.
6373 (linux_resume_one_lwp): Likewise.
6374 * linux-x86-low.c (x86_siginfo_fixup): Replace checks with
6375 gdb_assert.
6376 * mem-break.c (raw_bkpt_type_to_target_hw_bp_type): Replace fatal
6377 with internal_error.
6378 * regcache.c (get_thread_regcache): Replace check with gdb_assert.
6379 (init_register_cache): Replace fatal with gdb_assert_not_reached.
6380 (find_register_by_name): Replace fatal with internal_error.
6381 (find_regno): Likewise.
6382 * tdesc.c (init_target_desc): Replace check with gdb_assert.
6383 * thread-db.c (thread_db_create_event): Likewise.
6384 (thread_db_load_search): Likewise.
6385 (try_thread_db_load_1): Likewise.
6386 * tracepoint.c (get_jump_space_head): Replace fatal with
6387 internal_error.
6388 (claim_trampoline_space): Likewise.
6389 (have_fast_tracepoint_trampoline_buffer): Likewise.
6390 (cmd_qtstart): Likewise.
6391 (stop_tracing): Likewise.
6392 (fast_tracepoint_collecting): Likewise.
6393 (target_malloc): Likewise.
6394 (download_tracepoint): Likewise.
6395 (download_trace_state_variables): Replace check with gdb_assert.
6396 (upload_fast_traceframes): Replace fatal with internal_error.
6397
6398 2014-08-19 Tom Tromey <tromey@redhat.com>
6399 Gary Benson <gbenson@redhat.com>
6400
6401 * Makefile.in (SFILES): Add common/common-debug.c.
6402 (OBS): Add common-debug.o.
6403 (common-debug.o): New rule.
6404 * debug.h (debug_printf): Don't declare.
6405 * debug.c (debug_printf): Renamed and rewritten as...
6406 (debug_vprintf): New function.
6407
6408 2014-08-19 Gary Benson <gbenson@redhat.com>
6409
6410 * utils.h: Do not include print-utils.h.
6411
6412 2014-08-19 Tom Tromey <tromey@redhat.com>
6413 Gary Benson <gbenson@redhat.com>
6414
6415 * server.h: Add static assertion.
6416 (gdb_byte, CORE_ADDR, LONGEST, ULONGEST): Remove.
6417
6418 2014-08-19 Tom Tromey <tromey@redhat.com>
6419 Gary Benson <gbenson@redhat.com>
6420
6421 * Makefile.in (SFILES): Add common/errors.c.
6422 (OBS): Add errors.o.
6423 (IPA_OBS): Add errors-ipa.o.
6424 (errors.o): New rule.
6425 (errors-ipa.o): Likewise.
6426 * utils.h (perror_with_name, error, warning): Don't declare.
6427 * utils.c (warning): Renamed and rewritten as...
6428 (vwarning): New function.
6429 (error): Renamed and rewritten as...
6430 (verror): New function.
6431 (internal_error): Renamed and rewritten as...
6432 (internal_verror): New function.
6433
6434 2014-08-07 Gary Benson <gbenson@redhat.com>
6435
6436 * configure.ac (AC_CHECK_HEADERS): Remove errno.h.
6437 * configure: Regenerate.
6438 * config.in: Likewise.
6439 * server.h: Do not include errno.h.
6440 * event-loop.c: Likewise.
6441 * hostio-errno.c: Likewise.
6442 * linux-low.c: Likewise.
6443 * remote-utils.c: Likewise.
6444 * spu-low.c: Likewise.
6445 * utils.c: Likewise.
6446 * gdbreplay.c: Unconditionally include errno.h.
6447
6448 2014-08-07 Gary Benson <gbenson@redhat.com>
6449
6450 * server.h: Do not include string.h.
6451 * event-loop.c: Likewise.
6452 * linux-low.c: Likewise.
6453 * regcache.c: Likewise.
6454 * remote-utils.c: Likewise.
6455 * spu-low.c: Likewise.
6456 * utils.c: Likewise.
6457
6458 2014-08-07 Gary Benson <gbenson@redhat.com>
6459
6460 * server.h: Do not include gdb_assert.h.
6461
6462 2014-08-07 Gary Benson <gbenson@redhat.com>
6463
6464 * server.h: Do not include common-utils.h.
6465
6466 2014-08-07 Gary Benson <gbenson@redhat.com>
6467
6468 * server.h: Do not include ptid.h.
6469 * notif.h: Likewise.
6470
6471 2014-08-07 Gary Benson <gbenson@redhat.com>
6472
6473 * server.h: Do not include gdb_locale.h.
6474
6475 2014-08-07 Gary Benson <gbenson@redhat.com>
6476
6477 * server.h: Do not include gdb/signals.h.
6478 * win32-low.c: Likewise.
6479
6480 2014-08-07 Gary Benson <gbenson@redhat.com>
6481
6482 * server.h: Do not include pathmax.h.
6483
6484 2014-08-07 Gary Benson <gbenson@redhat.com>
6485
6486 * server.h: Do not include libiberty.h.
6487 * linux-bfin-low.c: Likewise.
6488
6489 2014-08-07 Gary Benson <gbenson@redhat.com>
6490
6491 * server.h: Do not include ansidecl.h.
6492
6493 2014-08-07 Gary Benson <gbenson@redhat.com>
6494
6495 * linux-x86-low.c: Do not include stddef.h.
6496 * lynx-ppc-low.c: Likewise.
6497 * tracepoint.c: Likewise.
6498
6499 2014-08-07 Gary Benson <gbenson@redhat.com>
6500
6501 * server.h: Do not include stdarg.h.
6502 * nto-low.c: Likewise.
6503
6504 2014-08-07 Gary Benson <gbenson@redhat.com>
6505
6506 * server.h: Do not include stdlib.h.
6507 * inferiors.c: Likewise.
6508 * linux-low.c: Likewise.
6509 * regcache.c: Likewise.
6510 * spu-low.c: Likewise.
6511 * tracepoint.c: Likewise.
6512 * utils.c: Likewise.
6513
6514 2014-08-07 Gary Benson <gbenson@redhat.com>
6515
6516 * server.h: Do not include stdio.h.
6517 * linux-low.c: Likewise.
6518 * remote-utils.c: Likewise.
6519 * spu-low.c: Likewise.
6520 * utils.c: Likewise.
6521 * wincecompat.c: Likewise.
6522
6523 2014-08-06 Gary Benson <gbenson@redhat.com>
6524
6525 * regcache.c (init_register_cache): Move conditionals inside if.
6526
6527 2014-08-06 Gary Benson <gbenson@redhat.com>
6528
6529 * linux-low.c (linux_supports_non_stop): Use target_is_async_p.
6530
6531 2014-07-31 Gary Benson <gbenson@redhat.com>
6532
6533 * ax.h: Do not include server.h.
6534 * gdbthread.h: Likewise.
6535 * lynx-low.h: Likewise.
6536 * notif.h: Likewise.
6537
6538 2014-07-30 Gary Benson <gbenson@redhat.com>
6539
6540 * server.h: Include common-defs.h.
6541 Do not include config.h or build-gnulib-gdbserver/config.h.
6542
6543 2014-07-30 Gary Benson <gbenson@redhat.com>
6544
6545 * hostio-errno.c: Move server.h to top of includes list.
6546 * inferiors.c: Likewise.
6547 * linux-x86-low.c: Likewise.
6548 * notif.c: Include server.h.
6549
6550 2014-07-24 Tom Tromey <tromey@redhat.com>
6551 Gary Benson <gbenson@redhat.com>
6552
6553 * server.h (CORE_ADDR): Now unsigned.
6554
6555 2014-07-16 Pedro Alves <palves@redhat.com>
6556
6557 * linux-low.c (linux_kill_one_lwp): Use kill_lwp, not kill.
6558
6559 2014-07-15 Pedro Alves <palves@redhat.com>
6560
6561 * linux-low.c (linux_kill_one_lwp): Save errno and work with saved
6562 copy.
6563
6564 2014-07-11 Pedro Alves <palves@redhat.com>
6565
6566 * linux-low.c (kill_wait_lwp): New function, based on
6567 kill_one_lwp_callback, but use my_waitpid directly.
6568 (kill_one_lwp_callback, linux_kill): Use it.
6569
6570 2014-06-23 Pedro Alves <palves@redhat.com>
6571
6572 * linux-x86-low.c (x86_linux_prepare_to_resume): Clear DR_CONTROL
6573 before setting DR0..DR3.
6574
6575 2014-06-20 Gary Benson <gbenson@redhat.com>
6576
6577 * configure.ac (AC_REPLACE_FUNCS) <vasprintf, vsnprintf>: Removed.
6578 * configure: Regenerated.
6579 * config.in: Likewise.
6580
6581 2014-06-20 Gary Benson <gbenson@redhat.com>
6582
6583 * Makefile.in (SFILES): Update locations for files moved
6584 from common to nat.
6585 (object file files): Reordered.
6586
6587 2014-06-20 Gary Benson <gbenson@redhat.com>
6588
6589 * i386-low.h (i386_dr_low_can_set_addr): Removed.
6590 (i386_dr_low_set_addr): Likewise.
6591 (i386_dr_low_get_addr): Likewise.
6592 (i386_dr_low_can_set_control): Likewise.
6593 (i386_dr_low_set_control): Likewise.
6594 (i386_dr_low_get_control): Likewise.
6595 (i386_dr_low_get_status): Likewise.
6596 (i386_get_debug_register_length): Likewise.
6597 * linux-x86-low.c (i386_dr_low_set_addr):
6598 Changed signature. Made static.
6599 (i386_dr_low_get_addr): Likewise.
6600 (i386_dr_low_set_control): Likewise.
6601 (i386_dr_low_get_control): Likewise.
6602 (i386_dr_low_get_status): Likewise.
6603 (i386_dr_low): New global variable.
6604 * win32-i386-low.c (i386_dr_low_set_addr):
6605 Changed signature. Made static.
6606 (i386_dr_low_get_addr): Likewise.
6607 (i386_dr_low_set_control): Likewise.
6608 (i386_dr_low_get_control): Likewise.
6609 (i386_dr_low_get_status): Likewise.
6610 (i386_dr_low): New global variable.
6611
6612 2014-06-20 Marcus Shawcroft <marcus.shawcroft@arm.com>
6613
6614 * configure.ac: Invoke. AC_CHECK_TOOL(AR, ar).
6615 * Makefile.in (AR, AR_FLAGS): Define.
6616 * configure: Regenerate.
6617
6618 2014-06-19 Gary Benson <gbenson@redhat.com>
6619
6620 * Makefile.in (i386-dregs.o): New rule.
6621 * configure.srv: Add i386-dregs.o to all targets using i386-low.o.
6622 * i386-low.c (target.h): Remove include.
6623 (TARGET_HAS_DR_LEN_8): Now in i386-dregs.c.
6624 (DR_CONTROL_SHIFT): Likewise.
6625 (DR_CONTROL_SIZE): Likewise.
6626 (DR_RW_EXECUTE): Likewise.
6627 (DR_RW_WRITE): Likewise.
6628 (DR_RW_READ): Likewise.
6629 (DR_RW_IORW): Likewise.
6630 (DR_LEN_1): Likewise.
6631 (DR_LEN_2): Likewise.
6632 (DR_LEN_4): Likewise.
6633 (DR_LEN_8): Likewise.
6634 (DR_LOCAL_ENABLE_SHIFT): Likewise.
6635 (DR_GLOBAL_ENABLE_SHIFT): Likewise.
6636 (DR_ENABLE_SIZE): Likewise.
6637 (DR_LOCAL_SLOWDOWN): Likewise.
6638 (DR_GLOBAL_SLOWDOWN): Likewise.
6639 (DR_CONTROL_RESERVED): Likewise.
6640 (I386_DR_CONTROL_MASK): Likewise.
6641 (I386_DR_VACANT): Likewise.
6642 (I386_DR_LOCAL_ENABLE): Likewise.
6643 (I386_DR_GLOBAL_ENABLE): Likewise.
6644 (I386_DR_DISABLE): Likewise.
6645 (I386_DR_SET_RW_LEN): Likewise.
6646 (I386_DR_GET_RW_LEN): Likewise.
6647 (I386_DR_WATCH_HIT): Likewise.
6648 (i386_wp_op_t): Likewise.
6649 (i386_show_dr): Likewise.
6650 (i386_length_and_rw_bits): Likewise.
6651 (i386_insert_aligned_watchpoint): Likewise.
6652 (i386_remove_aligned_watchpoint): Likewise.
6653 (i386_handle_nonaligned_watchpoint): Likewise.
6654 i386_update_inferior_debug_regs(): Likewise.
6655 (i386_dr_insert_watchpoint): Likewise.
6656 (i386_dr_remove_watchpoint): Likewise.
6657 (i386_dr_region_ok_for_watchpoint): Likewise.
6658 (i386_dr_stopped_data_address): Likewise.
6659 (i386_dr_stopped_by_watchpoint): Likewise.
6660
6661 2014-06-19 Gary Benson <gbenson@redhat.com>
6662
6663 * i386-low.c (i386_dr_show): Renamed to
6664 i386_show_dr and made static. All uses updated.
6665 (i386_dr_length_and_rw_bits): Renamed to
6666 i386_length_and_rw_bits and made static.
6667 All uses updated.
6668 (i386_dr_insert_aligned_watchpoint): Renamed to
6669 i386_insert_aligned_watchpoint and made static.
6670 All uses updated.
6671 (i386_dr_remove_aligned_watchpoint): Renamed to
6672 i386_remove_aligned_watchpoint and made static.
6673 All uses updated.
6674 (i386_dr_update_inferior_debug_regs): Renamed to
6675 i386_update_inferior_debug_regs and made static.
6676 All uses updated.
6677
6678 2014-06-18 Gary Benson <gbenson@redhat.com>
6679
6680 * i386-low.h (i386_dr_low_can_set_addr): New macro.
6681 (i386_dr_low_can_set_control): Likewise.
6682 (i386_get_debug_register_length): Likewise.
6683 * i386-low.c (i386_dr_low_can_set_addr): Now in i386-low.h.
6684 (i386_dr_low_can_set_control): Likewise.
6685 (i386_get_debug_register_length): Likewise.
6686
6687 2014-06-17 Gary Benson <gbenson@redhat.com>
6688
6689 * i386-low.h (i386-dregs.h): New include.
6690 (DR_FIRSTADDR): Now in i386-dregs.h.
6691 (DR_LASTADDR): Likewise.
6692 (DR_NADDR): Likewise.
6693 (DR_STATUS): Likewise.
6694 (DR_CONTROL): Likewise.
6695 (i386_debug_reg_state): Likewise.
6696 (i386_dr_insert_watchpoint): Likewise.
6697 (i386_dr_remove_watchpoint): Likewise.
6698 (i386_dr_region_ok_for_watchpoint): Likewise.
6699 (i386_dr_stopped_data_address): Likewise.
6700 (i386_dr_stopped_by_watchpoint): Likewise.
6701 * i386-low.c (ALL_DEBUG_REGISTERS): Likewise.
6702
6703 2014-06-18 Gary Benson <gbenson@redhat.com>
6704
6705 * i386-low.h (i386_low_insert_watchpoint): Renamed to
6706 i386_dr_insert_watchpoint.
6707 (i386_low_remove_watchpoint): Renamed to
6708 i386_dr_remove_watchpoint.
6709 (i386_low_region_ok_for_watchpoint): Renamed to
6710 i386_dr_region_ok_for_watchpoint.
6711 (i386_low_stopped_data_address): Renamed to
6712 i386_dr_stopped_data_address.
6713 (i386_low_stopped_by_watchpoint): Renamed to
6714 i386_dr_stopped_by_watchpoint.
6715 * i386-low.c (i386_show_dr): Renamed to
6716 i386_dr_show and made nonstatic. All uses updated.
6717 (i386_length_and_rw_bits): Renamed to
6718 i386_dr_length_and_rw_bits and made nonstatic.
6719 All uses updated.
6720 (i386_insert_aligned_watchpoint): Renamed to
6721 i386_dr_insert_aligned_watchpoint and made nonstatic.
6722 All uses updated.
6723 (i386_remove_aligned_watchpoint): Renamed to
6724 i386_dr_remove_aligned_watchpoint and made nonstatic.
6725 All uses updated.
6726 (i386_update_inferior_debug_regs): Renamed to
6727 i386_dr_update_inferior_debug_regs and made nonstatic.
6728 All uses updated.
6729 (i386_low_insert_watchpoint): Renamed to
6730 i386_dr_insert_watchpoint. All uses updated.
6731 (i386_low_remove_watchpoint): Renamed to
6732 i386_dr_remove_watchpoint. All uses updated.
6733 (i386_low_region_ok_for_watchpoint): Renamed to
6734 i386_dr_region_ok_for_watchpoint. All uses updated.
6735 (i386_low_stopped_data_address): Renamed to
6736 i386_dr_stopped_data_address. All uses updated.
6737 (i386_low_stopped_by_watchpoint): Renamed to
6738 i386_dr_stopped_by_watchpoint. All uses updated.
6739
6740 2014-06-18 Gary Benson <gbenson@redhat.com>
6741
6742 * i386-low.c (i386_dr_low_can_set_addr): New macro.
6743 (i386_dr_low_can_set_control): Likewise.
6744 (i386_insert_aligned_watchpoint): New check.
6745
6746 2014-06-18 Gary Benson <gbenson@redhat.com>
6747
6748 * i386-low.c (i386_update_inferior_debug_regs) <inf_state>:
6749 Renamed to state.
6750
6751 2014-06-18 Gary Benson <gbenson@redhat.com>
6752
6753 * i386-low.c (i386_length_and_rw_bits): Use internal_error
6754 instead of fatal and error.
6755 (i386_handle_nonaligned_watchpoint): Likewise.
6756
6757 2014-06-18 Gary Benson <gbenson@redhat.com>
6758
6759 * i386-low.c (i386_get_debug_register_length): New macro.
6760 (TARGET_HAS_DR_LEN_8): Remove conditional. Use above macro.
6761 (i386_show_dr): Use debug_printf instead of fprintf. Use
6762 phex to format values.
6763
6764 2014-06-18 Gary Benson <gbenson@redhat.com>
6765
6766 * i386-low.h: Comment changes.
6767 * i386-low.c: Likewise.
6768
6769 2014-06-18 Gary Benson <gbenson@redhat.com>
6770
6771 * i386-low.c: Whitespace changes.
6772
6773 2014-06-12 Tom Tromey <tromey@redhat.com>
6774
6775 * utils.c (freeargv): Remove.
6776
6777 2014-06-12 Tom Tromey <tromey@redhat.com>
6778
6779 * debug.c (debug_printf): Remove HAVE_GETTIMEOFDAY checks.
6780 * server.c (monitor_show_help): Remove HAVE_GETTIMEOFDAY check.
6781 (parse_debug_format_options): Likewise.
6782 (gdbserver_usage): Likewise.
6783 * Makefile.in (LIBIBERTY_BUILDDIR, LIBIBERTY): New variables.
6784 (SUBDIRS, REQUIRED_SUBDIRS): Add libiberty.
6785 (gdbserver$(EXEEXT), gdbreplay$(EXEEXT)): Depend on and link
6786 against libiberty.
6787 ($(LIBGNU)): Depend on libiberty.
6788 (all-lib): Recurse into all subdirs.
6789 (install-only): Invoke "install" target in subdirs.
6790 (vasprintf.o, vsnprintf.o, safe-ctype.o, lbasename.o): Remove
6791 targets.
6792 * configure: Rebuild.
6793 * configure.ac: Add ACX_CONFIGURE_DIR for libiberty. Don't check
6794 for vasprintf, vsnprintf, or gettimeofday.
6795 * configure.srv: Don't add safe-ctype.o or lbasename.o to
6796 srv_tgtobj.
6797
6798 2014-06-05 Joel Brobecker <brobecker@adacore.com>
6799
6800 * development.sh: Delete.
6801 * Makefile.in (config.status): Adjust dependency on development.sh.
6802 * configure.ac: Adjust development.sh source call.
6803 * configure: Regenerate.
6804
6805 2014-06-02 Pedro Alves <palves@redhat.com>
6806
6807 * ax.c (gdb_free_agent_expr): New function.
6808 * ax.h (gdb_free_agent_expr): New declaration.
6809 * mem-break.c (delete_gdb_breakpoint_1): Also clear the commands
6810 list.
6811 (clear_breakpoint_conditions, clear_breakpoint_commands): Make
6812 static.
6813 (clear_breakpoint_conditions_and_commands): New function.
6814 * mem-break.h (clear_breakpoint_conditions): Delete declaration.
6815 (clear_breakpoint_conditions_and_commands): New declaration.
6816
6817 2014-05-23 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
6818
6819 * linux-aarch64-low.c (asm/ptrace.h): Include.
6820
6821 2014-05-21 Jan Kratochvil <jan.kratochvil@redhat.com>
6822
6823 Fix TLS access for -static -pthread.
6824 * gdbserver/thread-db.c (struct thread_db): Add td_thr_tlsbase_p.
6825 (thread_db_get_tls_address): Call it if LOAD_MODULE is zero.
6826 (thread_db_load_search, try_thread_db_load_1): Initialize it.
6827
6828 2014-05-20 Pedro Alves <palves@redhat.com>
6829
6830 * linux-aarch64-low.c (aarch64_insert_point)
6831 (aarch64_remove_point): No longer check whether the type is
6832 supported here. Adjust to new interface.
6833 (the_low_target): Install aarch64_supports_z_point_type as
6834 supports_z_point_type method.
6835 * linux-arm-low.c (raw_bkpt_type_to_arm_hwbp_type): New function.
6836 (arm_linux_hw_point_initialize): Take an enum raw_bkpt_type
6837 instead of a Z packet char. Adjust.
6838 (arm_supports_z_point_type): New function.
6839 (arm_insert_point, arm_remove_point): Adjust to new interface.
6840 (the_low_target): Install arm_supports_z_point_type.
6841 * linux-crisv32-low.c (cris_supports_z_point_type): New function.
6842 (cris_insert_point, cris_remove_point): Adjust to new interface.
6843 Don't check whether the type is supported here.
6844 (the_low_target): Install cris_supports_z_point_type.
6845 * linux-low.c (linux_supports_z_point_type): New function.
6846 (linux_insert_point, linux_remove_point): Adjust to new interface.
6847 * linux-low.h (struct linux_target_ops) <insert_point,
6848 remove_point>: Take an enum raw_bkpt_type instead of a char. Add
6849 raw_breakpoint pointer parameter.
6850 <supports_z_point_type>: New method.
6851 * linux-mips-low.c (mips_supports_z_point_type): New function.
6852 (mips_insert_point, mips_remove_point): Adjust to new interface.
6853 Use mips_supports_z_point_type.
6854 (the_low_target): Install mips_supports_z_point_type.
6855 * linux-ppc-low.c (the_low_target): Install NULL as
6856 supports_z_point_type method.
6857 * linux-s390-low.c (the_low_target): Install NULL as
6858 supports_z_point_type method.
6859 * linux-sparc-low.c (the_low_target): Install NULL as
6860 supports_z_point_type method.
6861 * linux-x86-low.c (x86_supports_z_point_type): New function.
6862 (x86_insert_point): Adjust to new insert_point interface. Use
6863 insert_memory_breakpoint. Adjust to new
6864 i386_low_insert_watchpoint interface.
6865 (x86_remove_point): Adjust to remove_point interface. Use
6866 remove_memory_breakpoint. Adjust to new
6867 i386_low_remove_watchpoint interface.
6868 (the_low_target): Install x86_supports_z_point_type.
6869 * lynx-low.c (lynx_target_ops): Install NULL as
6870 supports_z_point_type callback.
6871 * nto-low.c (nto_supports_z_point_type): New.
6872 (nto_insert_point, nto_remove_point): Adjust to new interface.
6873 (nto_target_ops): Install nto_supports_z_point_type.
6874 * mem-break.c: Adjust intro comment.
6875 (struct raw_breakpoint) <raw_type, size>: New fields.
6876 <inserted>: Update comment.
6877 <shlib_disabled>: Delete field.
6878 (enum bkpt_type) <gdb_breakpoint>: Delete value.
6879 <gdb_breakpoint_Z0, gdb_breakpoint_Z1, gdb_breakpoint_Z2,
6880 gdb_breakpoint_Z3, gdb_breakpoint_Z4>: New values.
6881 (raw_bkpt_type_to_target_hw_bp_type): New function.
6882 (find_enabled_raw_code_breakpoint_at): New function.
6883 (find_raw_breakpoint_at): New type and size parameters. Use them.
6884 (insert_memory_breakpoint): New function, based off
6885 set_raw_breakpoint_at.
6886 (remove_memory_breakpoint): New function.
6887 (set_raw_breakpoint_at): Reimplement.
6888 (set_breakpoint): New, based on set_breakpoint_at.
6889 (set_breakpoint_at): Reimplement.
6890 (delete_raw_breakpoint): Go through the_target->remove_point
6891 instead of assuming memory breakpoints.
6892 (find_gdb_breakpoint_at): Delete.
6893 (Z_packet_to_bkpt_type, Z_packet_to_raw_bkpt_type): New functions.
6894 (find_gdb_breakpoint): New function.
6895 (set_gdb_breakpoint_at): Delete.
6896 (z_type_supported): New function.
6897 (set_gdb_breakpoint_1): New function, loosely based off
6898 set_gdb_breakpoint_at.
6899 (check_gdb_bp_preconditions, set_gdb_breakpoint): New functions.
6900 (delete_gdb_breakpoint_at): Delete.
6901 (delete_gdb_breakpoint_1): New function, loosely based off
6902 delete_gdb_breakpoint_at.
6903 (delete_gdb_breakpoint): New function.
6904 (clear_gdb_breakpoint_conditions): Rename to ...
6905 (clear_breakpoint_conditions): ... this. Don't handle a NULL
6906 breakpoint.
6907 (add_condition_to_breakpoint): Make static.
6908 (add_breakpoint_condition): Take a struct breakpoint pointer
6909 instead of an address. Adjust.
6910 (gdb_condition_true_at_breakpoint): Rename to ...
6911 (gdb_condition_true_at_breakpoint_z_type): ... this, and add
6912 z_type parameter.
6913 (gdb_condition_true_at_breakpoint): Reimplement.
6914 (add_breakpoint_commands): Take a struct breakpoint pointer
6915 instead of an address. Adjust.
6916 (gdb_no_commands_at_breakpoint): Rename to ...
6917 (gdb_no_commands_at_breakpoint_z_type): ... this. Add z_type
6918 parameter. Return true if no breakpoint was found. Change debug
6919 output.
6920 (gdb_no_commands_at_breakpoint): Reimplement.
6921 (run_breakpoint_commands): Rename to ...
6922 (run_breakpoint_commands_z_type): ... this. Add z_type parameter,
6923 and change return type to boolean.
6924 (run_breakpoint_commands): New function.
6925 (gdb_breakpoint_here): Also check for Z1 breakpoints.
6926 (uninsert_raw_breakpoint): Don't try to reinsert a disabled
6927 breakpoint. Go through the_target->remove_point instead of
6928 assuming memory breakpoint.
6929 (uninsert_breakpoints_at, uninsert_all_breakpoints): Uninsert
6930 software and hardware breakpoints.
6931 (reinsert_raw_breakpoint): Go through the_target->insert_point
6932 instead of assuming memory breakpoint.
6933 (reinsert_breakpoints_at, reinsert_all_breakpoints): Reinsert
6934 software and hardware breakpoints.
6935 (check_breakpoints, breakpoint_here, breakpoint_inserted_here):
6936 Check both software and hardware breakpoints.
6937 (validate_inserted_breakpoint): Assert the breakpoint is a
6938 software breakpoint. Set the inserted flag to -1 instead of
6939 setting shlib_disabled.
6940 (delete_disabled_breakpoints): Adjust.
6941 (validate_breakpoints): Only validate software breakpoints.
6942 Adjust to inserted flag change.
6943 (check_mem_read, check_mem_write): Skip breakpoint types other
6944 than software breakpoints. Adjust to inserted flag change.
6945 * mem-break.h (enum raw_bkpt_type): New enum.
6946 (raw_breakpoint, struct process_info): Forward declare.
6947 (Z_packet_to_target_hw_bp_type): Delete declaration.
6948 (raw_bkpt_type_to_target_hw_bp_type, Z_packet_to_raw_bkpt_type)
6949 (set_gdb_breakpoint, delete_gdb_breakpoint)
6950 (clear_breakpoint_conditions): New declarations.
6951 (set_gdb_breakpoint_at, clear_gdb_breakpoint_conditions): Delete.
6952 (breakpoint_inserted_here): Update comment.
6953 (add_breakpoint_condition, add_breakpoint_commands): Replace
6954 address parameter with a breakpoint pointer parameter.
6955 (gdb_breakpoint_here): Update comment.
6956 (delete_gdb_breakpoint_at): Delete.
6957 (insert_memory_breakpoint, remove_memory_breakpoint): Declare.
6958 * server.c (process_point_options): Take a struct breakpoint
6959 pointer instead of an address. Adjust.
6960 (process_serial_event) <Z/z packets>: Use set_gdb_breakpoint and
6961 delete_gdb_breakpoint.
6962 * spu-low.c (spu_target_ops): Install NULL as
6963 supports_z_point_type method.
6964 * target.h: Include mem-break.h.
6965 (struct target_ops) <prepare_to_access_memory>: Update comment.
6966 <supports_z_point_type>: New field.
6967 <insert_point, remove_point>: Take an enum raw_bkpt_type argument
6968 instead of a char. Also take a raw breakpoint pointer.
6969 * win32-arm-low.c (the_low_target): Install NULL as
6970 supports_z_point_type.
6971 * win32-i386-low.c (i386_supports_z_point_type): New function.
6972 (i386_insert_point, i386_remove_point): Adjust to new interface.
6973 (the_low_target): Install i386_supports_z_point_type.
6974 * win32-low.c (win32_supports_z_point_type): New function.
6975 (win32_insert_point, win32_remove_point): Adjust to new interface.
6976 (win32_target_ops): Install win32_supports_z_point_type.
6977 * win32-low.h (struct win32_target_ops):
6978 <supports_z_point_type>: New method.
6979 <insert_point, remove_point>: Take an enum raw_bkpt_type argument
6980 instead of a char. Also take a raw breakpoint pointer.
6981
6982 2014-05-20 Pedro Alves <palves@redhat.com>
6983
6984 * mem-break.h: Include break-common.h.
6985 (Z_PACKET_SW_BP, Z_PACKET_HW_BP, Z_PACKET_WRITE_WP)
6986 (Z_PACKET_READ_WP, Z_PACKET_ACCESS_WP): New defines.
6987 (Z_packet_to_target_hw_bp_type): New declaration.
6988 * mem-break.c (Z_packet_to_target_hw_bp_type): New function.
6989 * i386-low.c (Z_PACKET_HW_BP, Z_PACKET_WRITE_WP, Z_PACKET_READ_WP)
6990 (Z_PACKET_ACCESS_WP): Delete macros.
6991 (Z_packet_to_hw_type): Delete function.
6992 * i386-low.h: Don't include break-common.h here.
6993 (Z_packet_to_hw_type): Delete declaration.
6994 * linux-x86-low.c (x86_insert_point, x86_insert_point): Call
6995 Z_packet_to_target_hw_bp_type instead of Z_packet_to_hw_type.
6996 * win32-i386-low.c (i386_insert_point, i386_remove_point): Call
6997 Z_packet_to_target_hw_bp_type instead of Z_packet_to_hw_type.
6998 * linux-aarch64-low.c: Don't include break-common.h here.
6999 (Z_PACKET_SW_BP, Z_PACKET_HW_BP, Z_PACKET_WRITE_WP)
7000 (Z_PACKET_READ_WP, Z_PACKET_ACCESS_WP): Delete macros.
7001 (Z_packet_to_target_hw_bp_type): Delete function.
7002 * linux-mips-low.c (rsp_bp_type_to_target_hw_bp_type): Delete
7003 function.
7004 (mips_insert_point, mips_remove_point): Use
7005 Z_packet_to_target_hw_bp_type.
7006
7007 2014-05-20 Pedro Alves <palves@redhat.com>
7008
7009 * linux-aarch64-low.c: Include break-common.h.
7010 (enum target_point_type): Delete.
7011 (Z_packet_to_point_type): Rename to ...
7012 (Z_packet_to_target_hw_bp_type): ... this, and return a
7013 target_hw_bp_type instead.
7014 (aarch64_show_debug_reg_state): Take an enum target_hw_bp_type
7015 instead of an enum target_point_type.
7016 (aarch64_point_encode_ctrl_reg): Likewise. Compute type mask from
7017 breakpoint type.
7018 (aarch64_dr_state_insert_one_point)
7019 (aarch64_dr_state_remove_one_point, aarch64_handle_breakpoint)
7020 (aarch64_handle_aligned_watchpoint)
7021 (aarch64_handle_unaligned_watchpoint, aarch64_handle_watchpoint):
7022 Take an enum target_hw_bp_type instead of an enum
7023 target_point_type.
7024 (aarch64_supports_z_point_type): New function.
7025 (aarch64_insert_point, aarch64_remove_point): Use it. Adjust to
7026 use Z_packet_to_target_hw_bp_type.
7027
7028 2014-05-20 Joel Brobecker <brobecker@adacore.com>
7029
7030 * configure.ac: Only use -Werror by default when DEVELOPMENT
7031 is true.
7032 * configure: Regenerate.
7033
7034 2014-05-19 Jan Kratochvil <jan.kratochvil@redhat.com>
7035
7036 Fix gdbserver qGetTLSAddr for x86_64 -m32.
7037 * linux-x86-low.c (X86_64_USER_REGS): New.
7038 (x86_fill_gregset): Call memset for BUF first in x86_64 -m32 case.
7039
7040 2014-04-28 Yao Qi <yao@codesourcery.com>
7041
7042 * Makefile.in (i386-avx512.c): Fix the typo of generated file
7043 name.
7044
7045 2014-04-25 Pedro Alves <palves@redhat.com>
7046
7047 PR server/16255
7048 * linux-low.c (linux_attach_fail_reason_string): New function.
7049 (linux_attach_lwp): Delete.
7050 (linux_attach_lwp_1): Rename to ...
7051 (linux_attach_lwp): ... this. Take a ptid instead of a pid as
7052 argument. Remove "initial" parameter. Return int instead of
7053 void. Don't error or warn here.
7054 (linux_attach): Adjust to call linux_attach_lwp. Call error on
7055 failure to attach to the tgid. Call warning when failing to
7056 attach to an lwp.
7057 * linux-low.h (linux_attach_lwp): Take a ptid instead of a pid as
7058 argument. Remove "initial" parameter. Return int instead of
7059 void. Don't error or warn here.
7060 (linux_attach_fail_reason_string): New declaration.
7061 * thread-db.c (attach_thread): Adjust to linux_attach_lwp's
7062 interface change. Use linux_attach_fail_reason_string.
7063
7064 2014-04-24 Michael Sturm <michael.sturm@mintel.com>
7065 Walfred Tedeschi <walfred.tedeschi@intel.com>
7066
7067 * Makefile.in: Added rules to handle new files
7068 i386-avx512.c i386-avx512-linux.c amd64-avx512.c
7069 amd64-avx512-linux.c x32-avx512.c x32-avx512-linux.c.
7070 * configure.srv (srv_i386_regobj): Add i386-avx512.o.
7071 (srv_i386_linux_regobj): Add i386-avx512-linux.o.
7072 (srv_amd64_regobj): Add amd64-avx512.o and x32-avx512.o.
7073 (srv_amd64_linux_regobj): Add amd64-avx512-linux.o and
7074 x32-avx512-linux.o.
7075 (srv_i386_32bit_xmlfiles): Add i386/32bit-avx512.xml.
7076 (srv_i386_64bit_xmlfiles): Add i386/64bit-avx512.xml.
7077 (srv_amd64_xmlfiles): Add i386/amd64-avx512.xml and
7078 i386/x32-avx512.xml.
7079 (srv_i386_linux_xmlfiles): Add i386/i386-avx512-linux.xml.
7080 (srv_amd64_linux_xmlfiles): Add i386/amd64-avx512-linux.xml and
7081 i386/x32-avx512-linux.xml.
7082 * i387-fp.c (num_avx512_k_registers): New constant for number
7083 of K registers.
7084 (num_avx512_zmmh_low_registers): New constant for number of
7085 lower ZMM registers (0-15).
7086 (num_avx512_zmmh_high_registers): New constant for number of
7087 higher ZMM registers (16-31).
7088 (num_avx512_ymmh_registers): New contant for number of higher
7089 YMM registers (ymm16-31 added by avx521 on x86_64).
7090 (num_avx512_xmm_registers): New constant for number of higher
7091 XMM registers (xmm16-31 added by AVX512 on x86_64).
7092 (struct i387_xsave): Add space for AVX512 registers.
7093 (i387_cache_to_xsave): Change raw buffer size to 64 characters.
7094 Add code to handle AVX512 registers.
7095 (i387_xsave_to_cache): Add code to handle AVX512 registers.
7096 * linux-x86-low.c (init_registers_amd64_avx512_linux): New
7097 prototypei from generated file.
7098 (tdesc_amd64_avx512_linux): Likewise.
7099 (init_registers_x32_avx512_linux): Likewise.
7100 (tdesc_x32_avx512_linux): Likewise.
7101 (init_registers_i386_avx512_linux): Likewise.
7102 (tdesc_i386_avx512_linux): Likewise.
7103 (x86_64_regmap): Add AVX512 registers.
7104 (x86_linux_read_description): Add code to handle AVX512 XSTATE
7105 mask.
7106 (initialize_low_arch): Add code to initialize AVX512 registers.
7107
7108 2014-04-23 Pedro Alves <palves@redhat.com>
7109
7110 * mem-break.c (find_gdb_breakpoint_at): Make static.
7111 * mem-break.h (find_gdb_breakpoint_at): Delete declaration.
7112
7113 2014-04-23 Pedro Alves <palves@redhat.com>
7114
7115 * i386-low.c: Don't include break-common.h here.
7116 (i386_low_insert_watchpoint, i386_low_remove_watchpoint): Change
7117 prototype to take target_hw_bp_type as argument instead of a Z
7118 packet char.
7119 * i386-low.h: Include break-common.h here.
7120 (Z_packet_to_hw_type): Declare.
7121 (i386_low_insert_watchpoint, i386_low_remove_watchpoint): Change
7122 prototypes.
7123 * linux-x86-low.c (x86_insert_point): Convert the packet number to
7124 a target_hw_bp_type before calling i386_low_insert_watchpoint.
7125 (x86_remove_point): Convert the packet number to a
7126 target_hw_bp_type before calling i386_low_remove_watchpoint.
7127 * win32-i386-low.c (i386_insert_point): Convert the packet number
7128 to a target_hw_bp_type before calling i386_low_insert_watchpoint.
7129 (i386_remove_point): Convert the packet number to a
7130 target_hw_bp_type before calling i386_low_remove_watchpoint.
7131
7132 2014-04-23 Pedro Alves <palves@redhat.com>
7133
7134 * utils.h (perror_with_name): Add ATTRIBUTE_NORETURN.
7135
7136 2014-04-10 Pedro Alves <palves@redhat.com>
7137
7138 * mem-break.c (add_breakpoint_condition, add_breakpoint_commands):
7139 Check if the condition or command is NULL before checking if the
7140 breakpoint is known. On success, return true.
7141 * mem-break.h (add_breakpoint_condition): Document return.
7142 (add_breakpoint_commands): Add describing comment.
7143 * server.c (skip_to_semicolon): New function.
7144 (process_point_options): Use it.
7145
7146 2014-04-09 Pedro Alves <palves@redhat.com>
7147
7148 * linux-low.c (linux_read_loadmap): Pass current_inferior directly
7149 to lwpid_of.
7150
7151 2014-02-27 Pedro Alves <palves@redhat.com>
7152
7153 PR 12702
7154 * inferiors.h (A_I_NEXT, ALL_INFERIORS_TYPE, ALL_PROCESSES): New
7155 macros.
7156 * linux-low.c (delete_lwp, handle_extended_wait): Add debug
7157 output.
7158 (last_thread_of_process_p): Take a PID argument instead of a
7159 thread pointer.
7160 (linux_wait_for_lwp): Delete.
7161 (num_lwps, check_zombie_leaders, not_stopped_callback): New
7162 functions.
7163 (linux_low_filter_event): New function, party factored out from
7164 linux_wait_for_event.
7165 (linux_wait_for_event): Rename to ...
7166 (linux_wait_for_event_filtered): ... this. Add new filter ptid
7167 argument. Partly rewrite. Always use waitpid(-1, WNOHANG) and
7168 sigsuspend. Check for zombie leaders.
7169 (linux_wait_for_event): Reimplement as wrapper around
7170 linux_wait_for_event_filtered.
7171 (linux_wait_1): Handle TARGET_WAITKIND_NO_RESUMED. Assume that if
7172 a normal or signal exit is seen, it's the whole process exiting.
7173 (wait_for_sigstop): No longer a for_each_inferior callback.
7174 Rewrite on top of linux_wait_for_event_filtered.
7175 (stop_all_lwps): Call wait_for_sigstop directly.
7176 * server.c (resume, handle_target_event): Handle
7177 TARGET_WAITKIND_NO_RESUMED.
7178
7179 2014-02-26 Joel Brobecker <brobecker@adacore.com>
7180
7181 * win32-low.c (psapi_get_dll_name,
7182 * win32_CreateToolhelp32Snapshot): Delete.
7183 (win32_CreateToolhelp32Snapshot, win32_Module32First)
7184 (win32_Module32Next, load_toolhelp, toolhelp_get_dll_name):
7185 Delete.
7186 (handle_load_dll): Add function description.
7187 Remove code using psapi_get_dll_name and toolhelp_get_dll_name.
7188
7189 2014-02-26 Joel Brobecker <brobecker@adacore.com>
7190
7191 * win32-low.c (win32_add_one_solib): Add 0x1000 to load_addr.
7192 Add comment.
7193 (win32_add_all_dlls): Remove 0x1000 offset applied to DLL
7194 base address when calling win32_add_one_solib.
7195 (handle_load_dll): Delete local variable load_addr.
7196 Remove 0x1000 offset applied to DLL base address when calling
7197 win32_add_one_solib.
7198 (handle_unload_dll): Add comment.
7199
7200 2014-02-26 Joel Brobecker <brobecker@adacore.com>
7201
7202 * win32-low.c (win32_add_all_dlls): Renames
7203 win32_ensure_ntdll_loaded. Rewrite function documentation.
7204 Adjust implementation to always load all DLLs.
7205 Add 0x1000 offset to DLL base address when calling
7206 win32_add_one_solib.
7207 (child_initialization_done): New static global.
7208 (do_initial_child_stuff): Set child_initialization_done to
7209 zero during child initialization, and 1 after. Replace call
7210 to win32_ensure_ntdll_loaded by call to win32_add_all_dlls.
7211 Add comment.
7212 (match_dll_by_basename, dll_is_loaded_by_basename): Delete.
7213 (handle_unload_dll): Add function documentation.
7214 (get_child_debug_event): Ignore load and unload DLL events
7215 during child initialization.
7216
7217 2014-02-20 Doug Evans <dje@google.com>
7218
7219 Remove global all_lwps.
7220 * inferiors.h (ptid_of): Move here from linux-low.h.
7221 (pid_of, lwpid_of): Ditto.
7222 * linux-aarch64-low.c (debug_reg_change_callback): Update, "entry"
7223 parameter is a struct thread_info * now.
7224 (aarch64_notify_debug_reg_change): Fetch pid from current_inferior
7225 directly. Pass &all_threads to find_inferior instead of &all_lwps.
7226 (aarch64_stopped_data_address): Fetch lwpid from current_inferior
7227 directly.
7228 (aarch64_linux_prepare_to_resume): Fetch ptid from thread.
7229 (aarch64_arch_setup): Fetch lwpid from current_inferior directly.
7230 * linux-arm-low.c (update_registers_callback): Update, "entry"
7231 parameter is a struct thread_info * now.
7232 Fetch lwpid from current_inferior directly.
7233 (arm_insert_point): Pass &all_threads to find_inferior instead of
7234 &all_lwps.
7235 (arm_remove_point): Ditto.
7236 (arm_stopped_by_watchpoint): Fetch lwp from current_inferior.
7237 (arm_prepare_to_resume): Fetch pid from thread.
7238 (arm_read_description): Fetch lwpid from current_inferior directly.
7239 * linux-low.c (all_lwps): Delete.
7240 (delete_lwp): Delete call to remove_inferior.
7241 (handle_extended_wait): Fetch lwpid from thread.
7242 (add_lwp): Don't set lwp->entry.id. Remove call to
7243 add_inferior_to_list.
7244 (linux_attach_lwp_1): Fetch pid from current_inferior directly.
7245 (linux_kill_one_lwp): Fetch ptid,lwpid from thread.
7246 (kill_one_lwp_callback): Ditto.
7247 (linux_kill): Don't dereference NULL pointer.
7248 Fetch ptid,lwpid from thread.
7249 (get_detach_signal): Fetch ptid from thread.
7250 (linux_detach_one_lwp): Fetch ptid,lwpid from thread.
7251 Simplify call to regcache_invalidate_thread.
7252 (delete_lwp_callback): Update, "entry" parameter is a
7253 struct thread_info * now. Fetch pid from thread.
7254 (linux_mourn): Pass &all_threads to find_inferior instead of &all_lwps.
7255 (status_pending_p_callback): Update, "entry" parameter is a
7256 struct thread_info * now. Fetch ptid from thread.
7257 (find_lwp_pid): Update, "entry" parameter is a
7258 struct thread_info * now.
7259 (linux_wait_for_lwp): Fetch pid from thread.
7260 (linux_fast_tracepoint_collecting): Fetch lwpid from thread.
7261 (maybe_move_out_of_jump_pad): Fetch lwpid from current_inferior.
7262 (enqueue_one_deferred_signal): Fetch lwpid from thread.
7263 (dequeue_one_deferred_signal): Ditto.
7264 (cancel_breakpoint): Fetch ptid from current_inferior.
7265 (linux_wait_for_event): Pass &all_threads to find_inferior,
7266 not &all_lwps. Fetch ptid, lwpid from thread.
7267 (count_events_callback): Update, "entry" parameter is a
7268 struct thread_info * now.
7269 (select_singlestep_lwp_callback): Ditto.
7270 (select_event_lwp_callback): Ditto.
7271 (cancel_breakpoints_callback): Ditto.
7272 (linux_cancel_breakpoints): Pass &all_threads to find_inferior,
7273 not &all_lwps.
7274 (select_event_lwp): Ditto. Fetch ptid from event_thread.
7275 (unsuspend_one_lwp): Update, "entry" parameter is a
7276 struct thread_info * now.
7277 (unsuspend_all_lwps): Pass &all_threads to find_inferior,
7278 not &all_lwps.
7279 (linux_stabilize_threads): Ditto. And for for_each_inferior.
7280 Fetch lwpid from thread, not lwp.
7281 (linux_wait_1): Fetch ptid, lwpid from current_inferior.
7282 Pass &all_threads to find_inferior, not &all_lwps.
7283 (send_sigstop): Fetch lwpid from thread, not lwp.
7284 (send_sigstop_callback): Update, "entry" parameter is a
7285 struct thread_info * now.
7286 (suspend_and_send_sigstop_callback): Ditto.
7287 (wait_for_sigstop): Ditto. Fetch ptid, lwpid from thread, lwp.
7288 (stuck_in_jump_pad_callback): Update, "entry" parameter is a
7289 struct thread_info * now.
7290 (move_out_of_jump_pad_callback): Ditto. Fetch ptid, lwpid
7291 from thread, lwp.
7292 (lwp_running): Update, "entry" parameter is a
7293 struct thread_info * now.
7294 (stop_all_lwps): Fetch ptid from thread.
7295 Pass &all_threads to find_inferior, for_each_inferior, not &all_lwps.
7296 (linux_resume_one_lwp): Fetch lwpid from thread.
7297 (linux_set_resume_request): Update, "entry" parameter is a
7298 struct thread_info * now. Fetch pid, lwpid from thread.
7299 (resume_status_pending_p): Update, "entry" parameter is a
7300 struct thread_info * now.
7301 (need_step_over_p): Ditto. Fetch lwpid from thread.
7302 (start_step_over): Fetch lwpid from thread.
7303 (linux_resume_one_thread): Update, "entry" parameter is a
7304 struct thread_info * now. Fetch lwpid from thread.
7305 (linux_resume): Pass &all_threads to find_inferior, not &all_lwps.
7306 (proceed_one_lwp): Update, "entry" parameter is a
7307 struct thread_info * now. Fetch lwpid from thread.
7308 (unsuspend_and_proceed_one_lwp): Update, "entry" parameter is a
7309 struct thread_info * now.
7310 (proceed_all_lwps): Pass &all_threads to find_inferior, not &all_lwps.
7311 (unstop_all_lwps): Ditto. Fetch lwpid from thread.
7312 (regsets_fetch_inferior_registers): Fetch lwpid from current_inferior
7313 directly.
7314 (regsets_store_inferior_registers): Ditto.
7315 (fetch_register, store_register): Ditto.
7316 (linux_read_memory, linux_write_memory): Ditto.
7317 (linux_request_interrupt): Ditto.
7318 (linux_read_auxv): Ditto.
7319 (linux_xfer_siginfo): Ditto.
7320 (linux_qxfer_spu): Ditto.
7321 (linux_qxfer_libraries_svr4): Ditto.
7322 * linux-low.h (ptid_of, pid_of, lwpid_of): Delete,
7323 moved to inferiors.h.
7324 (get_lwp): Delete.
7325 (get_thread_lwp): Update.
7326 (struct lwp_info): Delete member "entry". Simplify comment for
7327 member "thread".
7328 (all_lwps): Delete.
7329 * linux-mips-low.c (mips_read_description): Fetch lwpid from
7330 current_inferior directly.
7331 (update_watch_registers_callback): Update, "entry" parameter is a
7332 struct thread_info * now. Fetch pid from thread.
7333 (mips_linux_prepare_to_resume): Fetch ptid from thread.
7334 (mips_insert_point): Fetch lwpid from current_inferior.
7335 Pass &all_threads to find_inferior, not &all_lwps.
7336 (mips_remove_point): Pass &all_threads to find_inferior, not &all_lwps.
7337 (mips_stopped_by_watchpoint): Fetch lwpid from current_inferior
7338 directly.
7339 (mips_stopped_data_address): Ditto.
7340 * linux-s390-low.c (s390_arch_setup): Fetch pid from current_inferior
7341 directly.
7342 * linux-tile-low.c (tile_arch_setup): Ditto.
7343 * linux-x86-low.c (x86_get_thread_area): Fetch lwpid from thread.
7344 (update_debug_registers_callback): Update, "entry" parameter is a
7345 struct thread_info * now. Fetch pid from thread.
7346 (i386_dr_low_set_addr): Fetch pid from current_inferior directly.
7347 Pass &all_threads to find_inferior, not &all_lwps.
7348 (i386_dr_low_get_addr): Fetch ptid from current_inferior directly.
7349 (i386_dr_low_set_control): Fetch pid from current_inferior directly.
7350 Pass &all_threads to find_inferior, not &all_lwps.
7351 (i386_dr_low_get_control): Fetch ptid from current_inferior directly.
7352 (i386_dr_low_get_status): Ditto.
7353 (x86_linux_prepare_to_resume): Fetch ptid from thread.
7354 (x86_siginfo_fixup): Fetch lwpid from current_inferior directly.
7355 (x86_linux_read_description): Ditto.
7356 * proc-service.c (ps_getpid): Fetch pid from current_inferior directly.
7357
7358 2014-02-20 Doug Evans <dje@google.com>
7359
7360 * inferiors.c (get_first_inferior): Fix buglet.
7361
7362 2014-02-19 Doug Evans <dje@google.com>
7363
7364 * gdbthread.h (add_thread): Change result type to struct thread_info *.
7365 * inferiors.c (add_thread): Change result type to struct thread_info *.
7366 All callers updated.
7367 (add_lwp): Call add_thread here instead of in callers.
7368 All callers updated.
7369 * linux-low.h (get_lwp_thread): Rewrite.
7370 (struct lwp_info): New member "thread".
7371
7372 2014-02-19 Doug Evans <dje@google.com>
7373
7374 * linux-low.c (add_lwp): Change result to struct lwp_info *.
7375 All callers updated.
7376
7377 2014-02-19 Doug Evans <dje@google.com>
7378
7379 * inferiors.c (add_thread): Fix whitespace.
7380
7381 2014-02-19 Doug Evans <dje@google.com>
7382
7383 * dll.c (clear_dlls): Replace accessing list implemention details
7384 with API function.
7385 * gdbthread.h (get_first_thread): Declare.
7386 * inferiors.c (for_each_inferior_with_data): New function.
7387 (get_first_thread): New function.
7388 (find_thread_ptid): Simplify.
7389 (get_first_inferior): New function.
7390 (clear_list): Delete.
7391 (one_inferior_p): New function.
7392 (clear_inferior_list): New function.
7393 (clear_inferiors): Update.
7394 * inferiors.h (for_each_inferior_with_data): Declare.
7395 (clear_inferior_list): Declare.
7396 (one_inferior_p): Declare.
7397 (get_first_inferior): Declare.
7398 * linux-low.c (linux_wait_for_event): Replace accessing list
7399 implemention details with API function.
7400 * server.c (target_running): Ditto.
7401 (accumulate_file_name_length): New function.
7402 (emit_dll_description): New function.
7403 (handle_qxfer_libraries): Replace accessing list implemention
7404 details with API function.
7405 (handle_qxfer_threads_worker): New function.
7406 (handle_qxfer_threads_proper): Replace accessing list implemention
7407 details with API function.
7408 (handle_query): Ditto.
7409 (visit_actioned_threads_callback_ftype): New typedef.
7410 (visit_actioned_threads_data): New struct.
7411 (visit_actioned_threads): Rewrite to be find_inferior callback.
7412 (resume): Call find_inferior.
7413 (handle_status): Replace accessing list implemention
7414 details with API function.
7415 (process_serial_event): Replace accessing list implemention details
7416 with API function.
7417 * target.c (set_desired_inferior): Replace accessing list implemention
7418 details with API function.
7419 * tracepoint.c (same_process_p): New function.
7420 (gdb_agent_about_to_close): Replace accessing list implemention
7421 details with API function.
7422 * win32-low.c (child_delete_thread): Replace accessing list
7423 implemention details with API function.
7424 (match_dll_by_basename): New function.
7425 (dll_is_loaded_by_basename): New function.
7426 (win32_ensure_ntdll_loaded): Replace accessing list implemention
7427 details call to dll_is_loaded_by_basename.
7428
7429 2014-02-19 Doug Evans <dje@google.com>
7430
7431 * dll.h (struct dll_info): Add comment.
7432 * gdbthread.h (struct thread_info): Add comment.
7433 (current_ptid): Simplify.
7434 * inferiors.c (add_process): Update.
7435 (remove_process): Update.
7436 * inferiors.h (struct process_info): Rename member "head" to "entry".
7437 * linux-low.c (delete_lwp): Update.
7438 (add_lwp): Update.
7439 (last_thread_of_process_p): Update.
7440 (kill_one_lwp_callback, linux_kill): Update.
7441 (status_pending_p_callback): Update.
7442 (wait_for_sigstop): Update. Simplify read of ptid.
7443 (start_step_over): Update.
7444 * linux-low.h (ptid_of, pid_of, lwpid_of): Update.
7445 (get_lwp_thread): Update.
7446 (struct lwp_info): Rename member "head" to "entry".
7447 * regcache.h (inferior_list_entry): Delete.
7448 * server.c (kill_inferior_callback): Update.
7449 (detach_or_kill_inferior_callback): Update.
7450 (print_started_pid): Update.
7451 (print_attached_pid): Update.
7452 (process_serial_event): Simplify read of ptid.
7453 * thread-db.c (thread_db_create_event): Update.
7454 (thread_db_get_tls_address): Update.
7455 * win32-low.c (current_inferior_ptid): Simplify.
7456
7457 2014-02-19 Tom Tromey <tromey@redhat.com>
7458
7459 * target.h (struct target_ops) <supports_btrace>: Add target_ops
7460 argument.
7461 (target_supports_btrace): Update.
7462
7463 2014-02-14 Yao Qi <yao@codesourcery.com>
7464
7465 * Makefile.in (IPA_OBJS): Append rsp-low-ipa.o.
7466 (rsp-low-ipa.o): New target.
7467
7468 2014-02-12 Tom Tromey <tromey@redhat.com>
7469
7470 * ax.c (gdb_parse_agent_expr): Use hex2bin, not
7471 convert_ascii_to_int.
7472 * regcache.c (registers_to_string): Likewise.
7473 * remote-utils.c (decode_M_packet): Likewise.
7474 * server.c (process_serial_event): Likewise.
7475
7476 2014-02-12 Tom Tromey <tromey@redhat.com>
7477
7478 * server.c (handle_query, handle_v_run): Use hex2bin, not
7479 unhexify.
7480 * tracepoint.c (cmd_qtdpsrc, cmd_qtdv, cmd_qtnotes): Likewise.
7481
7482 2014-02-12 Tom Tromey <tromey@redhat.com>
7483
7484 * ax.c (gdb_unparse_agent_expr): Use bin2hex, not
7485 convert_int_to_ascii.
7486 * regcache.c (registers_to_string, collect_register_as_string):
7487 Likewise.
7488 * remote-utils.c (look_up_one_symbol, relocate_instruction):
7489 Likewise.
7490 * server.c (process_serial_event): Likewise.
7491 * tracepoint.c (cmd_qtstatus, response_source, response_tsv)
7492 (cmd_qtbuffer, cstr_to_hexstr): Likewise.
7493
7494 2014-02-12 Tom Tromey <tromey@redhat.com>
7495
7496 * remote-utils.c (look_up_one_symbol, monitor_output): Use
7497 bin2hex, not hexify.
7498 * tracepoint.c (cmd_qtstatus): Likewise.
7499
7500 2014-02-12 Tom Tromey <tromey@redhat.com>
7501
7502 * remote-utils.c (monitor_output): Pass explicit length to
7503 hexify.
7504
7505 2014-02-12 Tom Tromey <tromey@redhat.com>
7506
7507 * tracepoint.c: Include rsp-low.h.
7508 * server.c: Include rsp-low.h.
7509 * remote-utils.h (convert_ascii_to_int, convert_int_to_ascii)
7510 (unhexify, hexify, remote_escape_output, unpack_varlen_hex): Don't
7511 declare.
7512 * remote-utils.c: Include rsp-low.h.
7513 (fromhex, hexchars, ishex, unhexify, tohex, hexify)
7514 (remote_escape_output, remote_unescape_input, unpack_varlen_hex)
7515 (convert_int_to_ascii, convert_ascii_to_int): Move to
7516 common/rsp-low.c.
7517 * regcache.c: Include rsp-low.h.
7518 * ax.c: Include rsp-low.h.
7519 * Makefile.in (SFILES): Add common/rsp-low.c.
7520 (OBS): Add rsp-low.o.
7521 (rsp-low.o): New target.
7522
7523 2014-02-12 Tom Tromey <tromey@redhat.com>
7524
7525 * utils.h (pulongest, plongest, phex_nz): Don't declare.
7526 Include print-utils.h.
7527 * utils.c (NUMCELLS, CELLSIZE, get_cell, decimal2str, pulongest)
7528 (plongest, thirty_two, phex_nz): Remove.
7529 * Makefile.in (SFILES): Add common/print-utils.c.
7530 (OBS): Add print-utils.o.
7531 (print-utils-ipa.o): New target.
7532 (print-utils.o): New target.
7533 (IPA_OBJS): Add print-utils-ipa.o.
7534
7535 2014-02-06 Tom Tromey <tromey@redhat.com>
7536
7537 * Makefile.in (SFILES): Fix indentation.
7538
7539 2014-02-05 Doug Evans <dje@google.com>
7540
7541 * linux-low.c (linux_wait_for_event): Improve comment.
7542 (linux_wait_1): Keep current_inferior in sync with event_child.
7543
7544 2014-01-22 Doug Evans <dje@google.com>
7545
7546 * gdbthread.h (gdb_id_to_thread): Delete, unused.
7547
7548 2014-01-22 Doug Evans <dje@google.com>
7549
7550 * configure.ac (AC_CHECK_FUNCS): Add test for gettimeofday.
7551 * configure: Regenerate.
7552 * config.in: Regenerate.
7553 * Makefile.in (SFILES): Add debug.c.
7554 (OBS): Add debug.o.
7555 * debug.c: New file.
7556 * debug.h: New file.
7557 * linux-aarch64-low.c (*): Update all debugging printfs to use
7558 debug_printf instead of fprintf.
7559 * linux-arm-low.c (*): Ditto.
7560 * linux-cris-low.c (*): Ditto.
7561 * linux-crisv32-low.c (*): Ditto.
7562 * linux-m32r-low.c (*): Ditto.
7563 * linux-sparc-low.c (*): Ditto.
7564 * linux-x86.c (*): Ditto.
7565 * linux-low.c (*): Ditto.
7566 (linux_wait_1): Add calls to debug_enter, debug_exit.
7567 (linux_wait): Remove redundant debugging printf.
7568 (stop_all_lwps): Add calls to debug_enter, debug_exit.
7569 (linux_resume, unstop_all_lwps): Ditto.
7570 * mem-break.c (*): Update all debugging printfs to use
7571 debug_printf instead of fprintf.
7572 * remote-utils.c (*): Ditto.
7573 * thread-db.c (*): Ditto.
7574 * server.c #include <ctype.h>, "gdb_vecs.h".
7575 (debug_threads): Moved to debug.c.
7576 (*): Update all debugging printfs to use debug_printf instead of
7577 fprintf.
7578 (start_inferior): Replace call to fflush with call to debug_flush.
7579 (monitor_show_help): Mention set debug-format.
7580 (parse_debug_format_options): New function.
7581 (handle_monitor_command): Handle "monitor set debug-format".
7582 (gdbserver_usage): Mention --debug-format.
7583 (main): Parse --debug-format.
7584 * server.h (debug_threads): Declaration moved to debug.h.
7585 #include "debug.h".
7586 * tracepoint.c (trace_debug_1) [!IN_PROCESS_AGENT]: Add version of
7587 trace_debug_1 that uses debug_printf.
7588 (tracepoint_look_up_symbols): Update all debugging printfs to use
7589 debug_printf instead of fprintf.
7590
7591 2014-01-20 Baruch Siach <baruch@tkos.co.il>
7592
7593 * linux-xtensa-low.c: Include asm/ptrace.h instead of
7594 sys/ptrace.h.
7595
7596 2014-01-17 Pedro Alves <palves@redhat.com>
7597
7598 PR build/16445
7599 * linux-x86-low.c: Don't include elf/common.h if ELFMAG0 is
7600 defined after including gdb_proc_service.h.
7601
7602 2014-01-16 Doug Evans <dje@google.com>
7603
7604 * dll.c (UNSPECIFIED_CORE_ADDR): New macro.
7605 (match_dll): Use it.
7606
7607 2014-01-16 Markus Metzger <markus.t.metzger@intel.com>
7608
7609 * target.h (target_ops) <read_btrace>: Change parameters and
7610 return type to allow error reporting.
7611 * server.c (handle_qxfer_btrace): Support delta reads. Pass
7612 trace reading errors on.
7613 * linux-low.c (linux_low_read_btrace): Pass trace reading
7614 errors on.
7615 (linux_low_disable_btrace): New.
7616
7617 2014-01-15 Doug Evans <dje@google.com>
7618
7619 * inferiors.c (thread_id_to_gdb_id): Delete.
7620 * inferiors.h (thread_id_to_gdb_id): Delete.
7621
7622 2014-01-13 Eli Zaretskii <eliz@gnu.org>
7623
7624 * Makefile.in (INCLUDE_CFLAGS): Remove trailing slash from
7625 "-I$(srcdir)/../". Fixes MinGW compilation errors with old GCC
7626 versions.
7627
7628 2014-01-08 Pedro Alves <palves@redhat.com>
7629
7630 * server.c (handle_status): Don't discard previous queued stop
7631 replies or thread's pending status here.
7632 (main) <disconnection>: Do it here instead.
7633
7634 2014-01-08 Pedro Alves <palves@redhat.com>
7635
7636 * gdbthread.h (struct thread_info) <status_pending_p>: New field.
7637 * server.c (visit_actioned_threads, handle_pending_status): New
7638 function.
7639 (handle_v_cont): Factor out parts to ...
7640 (resume): ... this new function. If in all-stop, and a thread
7641 being resumed has a pending status, report it without actually
7642 resuming.
7643 (myresume): Adjust to use the new 'resume' function.
7644 (clear_pending_status_callback, set_pending_status_callback)
7645 (find_status_pending_thread_callback): New functions.
7646 (handle_status): Handle the case of multiple threads having
7647 interesting statuses to report. Report threads' real last signal
7648 instead of always reporting GDB_SIGNAL_TRAP. Look for a thread
7649 with an interesting thread to report the status for, instead of
7650 always reporting the status of the first thread.
7651
7652 2014-01-01 Joel Brobecker <brobecker@adacore.com>
7653
7654 * gdbserver.c (gdbserver_version): Set copyright year to 2014.
7655 * gdbreplay.c (gdbreplay_version): Likewise.
7656
7657 2013-12-18 Yufeng Zhang <yufeng.zhang@arm.com>
7658
7659 * linux-aarch64-low.c (aarch64_linux_set_debug_regs): Set
7660 iov.iov_len with the real length in use.
7661
7662 2013-12-13 Joel Brobecker <brobecker@adacore.com>
7663
7664 * Makefile.in (safe-ctype.o, lbasename.o): New rules.
7665 * configure.srv: Add safe-ctype.o and lbasename.o to srv_tgtobj
7666 for all targets that use win32-low.c.
7667 * win32-low.c (win32_ensure_ntdll_loaded): New function.
7668 (do_initial_child_stuff): Add call to win32_ensure_ntdll_loaded.
7669
7670 2013-12-13 Pedro Alves <palves@redhat.com>
7671
7672 * target.c (mywait): Set OURSTATUS->KIND to TARGET_WAITKIND_STOPPED
7673 if equal to TARGET_WAITKIND_LOADED.
7674 * win32-low.c (cached_status): New static global.
7675 (win32_wait): Add declaration.
7676 (do_initial_child_stuff): Flush all initial pending debug events
7677 up to the initial breakpoint.
7678 (win32_wait): If CACHED_STATUS was set, return that instead
7679 of doing a real wait. Remove the code resuming the execution
7680 of the inferior after receiving a TARGET_WAITKIND_LOADED event
7681 during the initial phase. Also remove the code changing
7682 OURSTATUS->KIND from TARGET_WAITKIND_LOADED to
7683 TARGET_WAITKIND_STOPPED.
7684
7685 2013-12-11 Yao Qi <yao@codesourcery.com>
7686
7687 * notif.c (handle_notif_ack): Return 0 if no notification
7688 matches.
7689
7690 2013-11-20 Doug Evans <dje@google.com>
7691
7692 * linux-low.c (linux_set_resume_request): Fix comment.
7693
7694 2013-11-20 Doug Evans <dje@google.com>
7695
7696 * linux-low.c (resume_status_pending_p): Tweak comment.
7697
7698 2013-11-20 Walfred Tedeschi <walfred.tedeschi@intel.com>
7699
7700 * Makefile.in: Add i386-mpx.c, i386-mpx-linux.c, amd64-mpx.c,
7701 amd64-mpx-linux.c, x32-mpx.c and x32-mpx-linux.c generation.
7702 * configure.srv (srv_i386_regobj): Add i386-mpx.o.
7703 (srv_i386_linux_regobj): Add i386-mpx-linux.o.
7704 (srv_amd64_regobj): Add amd64-mpx.o.
7705 (srv_amd64_linux_regobj): Add amd64-mpx-linux.o.
7706 (srv_i386_32bit_xmlfiles): Add i386/32bit-mpx.xml.
7707 (srv_i386_64bit_xmlfiles): Add i386/64bit-mpx.xml.
7708 * i387-fp.c (num_pl_bnd_register) Added constant.
7709 (num_pl_bnd_cfg_registers) Added constant.
7710 (struct i387_xsave) Added reserved area and MPX fields.
7711 (i387_cache_to_xsave, i387_xsave_to_cache) Add MPX.
7712 * linux-x86-low.c (init_registers_i386_mpx_linux): Declare new
7713 function.
7714 (tdesc_i386_mpx_linux): Add MPX amd64 target.
7715 (init_registers_amd64_mpx_linux): Declare new function.
7716 (tdesc_amd64_mpx_linux): Add MPX amd64 target.
7717 (x86_64_regmap): Add MPX registers.
7718 (x86_linux_read_description): Add MPX case.
7719 (initialize_low_arch): Initialize MPX targets.
7720
7721 2013-11-18 Tom Tromey <tromey@redhat.com>
7722
7723 * configure: Rebuild.
7724 * configure.ac: Don't check for stdlib.h.
7725 * gdbreplay.c: Unconditionally include stdlib.h.
7726
7727 2013-11-18 Tom Tromey <tromey@redhat.com>
7728
7729 * config.in: Rebuild.
7730 * configure: Rebuild.
7731 * configure.ac: Don't use AC_HEADER_DIRENT.
7732
7733 2013-11-18 Tom Tromey <tromey@redhat.com>
7734
7735 * server.h: Don't check HAVE_STRING_H.
7736 * gdbreplay.c: Don't check HAVE_STRING_H.
7737 * configure: Rebuild.
7738
7739 2013-11-18 Tom Tromey <tromey@redhat.com>
7740
7741 * Makefile.in (gdbreplay$(EXEEXT)): Depend on and link against
7742 LIBGNU.
7743
7744 2013-11-08 Tom Tromey <tromey@redhat.com>
7745
7746 * configure, config.in: Rebuild.
7747 * configure.ac: Remove unused configury.
7748
7749 2013-11-08 Tom Tromey <tromey@redhat.com>
7750
7751 * acinclude.m4: Include common.m4, codeset.m4.
7752 * configure, config.in: Rebuild.
7753 * configure.ac: Use GDB_AC_COMMON.
7754
7755 2013-11-06 Andreas Arnez <arnez@linux.vnet.ibm.com>
7756
7757 * linux-s390-low.c (HWCAP_S390_TE): New define.
7758 (s390_arch_setup): Consider the TE field in the HWCAP for
7759 determining 'have_regset_tdb'.
7760
7761 2013-10-16 Sergio Durigan Junior <sergiodj@redhat.com>
7762
7763 PR gdb/16014
7764 * tracepoint.c (download_tracepoint_1): Remove unnecessary double
7765 call to sizeof.
7766
7767 2013-10-02 Pedro Alves <palves@redhat.com>
7768
7769 * server.c (process_serial_event): Don't output "GDBserver
7770 exiting" if GDB is connected through stdio.
7771 * target.c (mywait): Likewise, be silent if GDB is connected
7772 through stdio.
7773
7774 2013-10-01 Joel Brobecker <brobecker@adacore.com>
7775
7776 * lynx-low.c (lynx_add_threads_after_attach): New function.
7777 (lynx_attach): Remove call to add_thread. Add call to
7778 lynx_add_threads_after_attach instead.
7779
7780 2013-09-28 Mike Frysinger <vapier@gentoo.org>
7781
7782 * configure.ac (AC_CHECK_HEADERS): Add sys/syscall.h
7783 * config.in, configure: Regenerated.
7784
7785 2013-09-18 Yao Qi <yao@codesourcery.com>
7786
7787 PR server/15959
7788 * server.c (start_inferior): Clear 'resume_info'.
7789
7790 2013-09-16 Jiong Wang <jiwang@tilera.com>
7791
7792 * linux-tile-low.c (tile_regsets): Modify the size field to 64-bit
7793 for each register.
7794
7795 2013-09-16 Jiong Wang <jiwang@tilera.com>
7796
7797 * configure.srv <tilegx*-*-linux*>: Remove linux-osdata.o from and add
7798 linux-tile-low.o to srv_tgtobj.
7799
7800 2013-09-16 Will Newton <will.newton@linaro.org>
7801
7802 * linux-aarch64-low.c (aarch64_linux_set_debug_regs): Zero
7803 out regs.
7804
7805 2013-09-06 Pedro Alves <palves@redhat.com>
7806
7807 * Makefile.in (gdb_proc_service_h, regdef_h, regcache_h)
7808 (signals_def, signals_h, ptid_h, ax_h, agent_h, linux_btrace_h)
7809 (linux_osdata_h, vec_h, gdb_vecs_h, host_defs_h, libiberty_h)
7810 (server_h, gdbthread_h, linux_low_h, linux_ptrace_h)
7811 (gdb_thread_db_h, linux_procfs_h, lynx_low_h, nto_low_h)
7812 (mips_linux_watch_h, i386_low_h, win32_low_h): Delete.
7813
7814 2013-09-06 Pedro Alves <palves@redhat.com>
7815
7816 * Makefile.in (linux-btrace.o, mips-linux-watch.o): Remove
7817 explicit header dependencies and use $COMPILE/$POSTCOMPILE.
7818
7819 2013-09-06 Pedro Alves <palves@redhat.com>
7820
7821 * linux-amd64-ipa.c: Include tracepoint.h.
7822 * linux-i386-ipa.c: Include tracepoint.h.
7823
7824 2013-09-06 Ricard Wanderlof <ricardw@axis.com>
7825
7826 * linux-crisv32-low.c (PTRACE_GET_THREAD_AREA): New macro.
7827 (ps_get_thread_area): New function.
7828
7829 2013-09-06 Ricard Wanderlof <ricardw@axis.com>
7830
7831 * linux-crisv32-low.c (elf_gregset_t): Delete typedef.
7832 (initialize_low_arch): Call init_registers_crisv32 rather than
7833 init_register_crisv32.
7834
7835 2013-09-05 Pedro Alves <palves@redhat.com>
7836
7837 * server.h (handle_vFile, hostio_last_error_from_errno): Move
7838 to ...
7839 * hostio.h: ... this new file.
7840 * hostio.c, server.c, linux-low.c, nto-low.c, spu-low,
7841 win32-low.c: Include hostio.h.
7842
7843 2013-09-05 Pedro Alves <palves@redhat.com>
7844
7845 * server.h (gdb_client_data, handler_func, callback_handler_func)
7846 (delete_file_handler, add_file_handler, append_callback_event)
7847 (delete_callback_event, start_event_loop, initialize_event_loop):
7848 Move to event-loop.h and include it.
7849 * event-loop.h: New file.
7850
7851 2013-09-05 Pedro Alves <palves@redhat.com>
7852
7853 * dll.c, inferiors.c, remote-utils.c, server.c: Include "dll.h".
7854 * server.h (struct dll_info, all_dlls, dlls_changed, clear_dlls)
7855 (loaded_dll, unloaded_dll): Move to ...
7856 * dll.h: ... this new file.
7857 * inferiors.c, remote-utils.c, win32-low.c: Include "dll.h".
7858
7859 2013-09-05 Pedro Alves <palves@redhat.com>
7860
7861 * server.h (current_process, get_thread_process, all_processes)
7862 (add_inferior_to_list, for_each_inferior, current_inferior)
7863 (remove_inferior, add_process, remove_process, find_process_pid)
7864 (have_started_inferiors_p, have_attached_inferiors_p)
7865 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id)
7866 (clear_inferiors, find_inferior, find_inferior_id)
7867 (inferior_target_data, set_inferior_target_data)
7868 (inferior_regcache_data, set_inferior_regcache_data): Move to
7869 inferiors.h, and include it.
7870 * inferiors.h: New file.
7871
7872 2013-09-05 Pedro Alves <palves@redhat.com>
7873
7874 * server.h (struct emit_ops, current_insn_ptr, emit_error):
7875 Move ...
7876 * ax.h: ... here.
7877
7878 2013-09-05 Pedro Alves <palves@redhat.com>
7879
7880 * ax.c, linux-low.c, linux-x86-low.c, server.c: Include
7881 tracepoint.h.
7882 * server.h (IPA_BUFSIZ, initialize_tracepoint, tracing)
7883 (disconnected_tracing, tracepoint_look_up_symbols, stop_tracing
7884 (handle_tracepoint_general_set, handle_tracepoint_query)
7885 (tracepoint_finished_step, tracepoint_was_hit)
7886 (release_while_stepping_state_list, current_traceframe)
7887 (in_readonly_region, traceframe_read_mem)
7888 (fetch_traceframe_registers, traceframe_read_sdata)
7889 (traceframe_read_info, struct fast_tpoint_collect_status)
7890 (fast_tracepoint_collecting, force_unlock_trace_buffer)
7891 (handle_tracepoit_bkpts, initialize_low_tracepoint)
7892 (supply_fast_tracepoint_registers)
7893 (supply_static_tracepoint_registers, set_trampoline_buffer_space)
7894 (ipa_tdesc, claim_trampoline_space)
7895 (have_fast_tracepoint_trampoline_buffer, gdb_agent_about_to_close)
7896 (agent_mem_read, agent_get_trace_state_variable_value)
7897 (agent_set_trace_state_variable_value, agent_tsv_read)
7898 (agent_mem_read_string, get_raw_reg_func_addr)
7899 (get_get_tsv_func_addr, get_set_tsv_func_addr): Move to ...
7900 * tracepoint.h: ... this new file.
7901
7902 2013-09-05 Pedro Alves <palves@redhat.com>
7903
7904 * server.h (perror_with_name, error, fatal, warning, paddress)
7905 (pulongest, plongest, phex_nz, pfildes): Move to utils.h, and
7906 include it.
7907 * utils.h: New file.
7908
7909 2013-09-05 Pedro Alves <palves@redhat.com>
7910
7911 * server.h (remote_debug, noack_mode, transport_is_reliable)
7912 (gdb_connected, STDIO_CONNECTION_NAME, remote_connection_is_stdio)
7913 (read_ptid, write_ptid, putpkt, putpkt_binary, putpkt_notif)
7914 (getpkt, remote_prepare, remote_open, remote_close, write_ok)
7915 (write_enn, initialize_async_io, enable_async_io)
7916 (disable_async_io, check_remote_input_interrupt_request)
7917 (convert_ascii_to_int, convert_int_to_ascii, new_thread_notify)
7918 (dead_thread_notify, prepare_resume_reply)
7919 (decode_address_to_semicolon, decode_address, decode_m_packet)
7920 (decode_M_packet, decode_X_packet, decode_xfer_write)
7921 (decode_search_memory_packet, unhexify, hexify)
7922 (remote_escape_output, unpack_varlen_hex, clear_symbol_cache)
7923 (look_up_one_symbol, relocate_instruction)
7924 (monitor_output): Move to remote-utils.h, and include it.
7925 * remote-utils.h: New file.
7926
7927 2013-09-05 Pedro Alves <palves@redhat.com>
7928
7929 * server.h (_): Delete.
7930
7931 2013-09-02 Pedro Alves <palves@redhat.com>
7932
7933 * tracepoint.c (TRACEFRAME_EOB_MARKER_SIZE): New macro.
7934 (init_trace_buffer): Ensure at least TRACEFRAME_EOB_MARKER_SIZE is
7935 allocated.
7936 (trace_buffer_alloc): Use TRACEFRAME_EOB_MARKER_SIZE.
7937
7938 2013-09-02 Pierre Muller <muller@sourceware.org>
7939
7940 * win32-low.c (child_xfer_memory): Check if ReadProcessMemory
7941 or WriteProcessMemory complete successfully and handle
7942 ERROR_PARTIAL_COPY error.
7943
7944 2013-09-02 Pedro Alves <palves@redhat.com>
7945
7946 * server.c (gdb_read_memory): Return -1 on traceframe memory read
7947 error instead of EIO.
7948
7949 2013-08-28 Jan Kratochvil <jan.kratochvil@redhat.com>
7950
7951 PR server/15604
7952 * linux-low.c: Include filestuff.h.
7953 (linux_create_inferior) <pid == 0>: Call close_most_fds.
7954 * lynx-low.c: Include filestuff.h.
7955 (lynx_create_inferior) <pid == 0>: Call close_most_fds.
7956 * server.c: Include filestuff.h.
7957 (main): Call notice_open_fds.
7958 * spu-low.c: Include filestuff.h.
7959 (spu_create_inferior) <pid == 0>: Call close_most_fds.
7960
7961 2013-08-22 Luis Machado <lgustavo@codesourcery.com>
7962
7963 * Makefile.in: Explain why ../target and ../nat are not
7964 listed as include file search paths.
7965 (linux-waitpid.o): New object file rule.
7966 * configure.srv (srv_native_linux_obj): New variable.
7967 Replace all occurrences of linux native object files with
7968 $srv_native_linux_obj.
7969 * linux-low.c: Include nat/linux-nat.h and nat/linux-waitpid.h.
7970 (HAS_NOMMU): Move defining logic to common/linux-ptrace.c.
7971 (linux_enable_event_reporting): Remove declaration.
7972 (my_waitpid): Moved to common/linux-waitpid.c.
7973 (linux_wait_for_event): Pass ptid when calling
7974 linux_enable_event_reporting.
7975 (linux_supports_tracefork_flag): Remove.
7976 (linux_enable_event_reporting): Likewise.
7977 (linux_tracefork_grandchild): Remove.
7978 (STACK_SIZE): Moved to common/linux-ptrace.c.
7979 (linux_tracefork_child): Remove.
7980 (linux_test_for_tracefork): Remove.
7981 (linux_look_up_symbols): Call linux_supports_traceclone.
7982 (initialize_low): Remove call to linux_test_for_tracefork.
7983 * linux-low.h (PTRACE_TYPE_ARG3): Move to
7984 common/linux-ptrace.h.
7985 (PTRACE_TYPE_ARG4): Likewise.
7986 Include linux-ptrace.h.
7987
7988 2013-08-21 Pedro Alves <palves@redhat.com>
7989
7990 * config.in: Renegerate.
7991
7992 2013-08-19 Luis Machado <lgustavo@codesourcery.com>
7993
7994 * Makefile.in (INCLUDE_CFLAGS): Include -I$(srcdir)/../.
7995 (SFILES): Remove $(srcdir)/common/target-common.c and
7996 add $(srcdir)/target/waitstatus.c.
7997 (OBS): Remove target-common.o and add waitstatus.o.
7998 (server_h): Remove $(srcdir)/../common/target-common.h and
7999 add $(srcdir)/../target/resume.h, $(srcdir)/../target/wait.h
8000 and $(srcdir)/../target/waitstatus.h.
8001 (target-common.o): Remove.
8002 (waitstatus.o): New target object file.
8003 * target.h: Do not include target-common.h and
8004 include target/resume.h, target/wait.h and
8005 target/waitstatus.h.
8006
8007 2013-08-13 Luis Machado <lgustavo@codesourcery.com>
8008
8009 * linux-arm-low.c: Rename all occurrences of PTRACE_ARG3_TYPE
8010 to PTRACE_TYPE_ARG3.
8011 * linux-low.c: Rename all occurrences of PTRACE_ARG3_TYPE
8012 to PTRACE_TYPE_ARG3 and PTRACE_ARG4_TYPE to
8013 PTRACE_TYPE_ARG4.
8014 * linux-low.h (PTRACE_ARG3_TYPE): Rename to PTRACE_TYPE_ARG3.
8015 (PTRACE_ARG4_TYPE): Rename to PTRACE_TYPE_ARG4.
8016
8017 2013-07-27 Jie Zhang <jie@codesourcery.com>
8018 Daniel Jacobowitz <dan@codesourcery.com>
8019 Yao Qi <yao@codesourcery.com>
8020
8021 * Makefile.in (SFILES): Add common/mips-linux-watch.c.
8022 (mips-linux-watch.o): New rule.
8023 (mips_linux_watch_h): New variable.
8024 * configure.srv <mips*-*-linux*>: Add mips-linux-watch.o to
8025 srv_tgtobj.
8026 * linux-mips-low.c: Include mips-linux-watch.h.
8027 (struct arch_process_info, struct arch_lwp_info): New.
8028 (update_watch_registers_callback): New function.
8029 (mips_linux_new_process, mips_linux_new_thread) New functions.
8030 (mips_linux_prepare_to_resume, mips_insert_point): New
8031 functions.
8032 (mips_remove_point, mips_stopped_by_watchpoint): New
8033 functions.
8034 (rsp_bp_type_to_target_hw_bp_type): New function.
8035 (mips_stopped_data_address): New function.
8036 (the_low_target): Add watchpoint support functions.
8037
8038 2013-07-27 Yao Qi <yao@codesourcery.com>
8039
8040 * i386-low.c: Include break-common.h.
8041 (enum target_hw_bp_type): Remove.
8042
8043 2013-07-24 Luis Machado <lgustavo@codesourcery.com>
8044
8045 * Makefile.in (SFILES): /common/target-common.c.
8046 (OBS): Add target-common.o.
8047 (server_h): Add $(srcdir)/../common/target-common.h.
8048 (target-common.o): New target.
8049 * server.c (queue_stop_reply_callback): Free
8050 status string after use.
8051 * target.c (target_waitstatus_to_string): Remove.
8052 * target.h: Include target-common.h.
8053 (resume_kind): Likewise.
8054 (target_waitkind): Likewise.
8055 (target_waitstatus): Likewise.
8056 (TARGET_WNOHANG): Likewise.
8057
8058 2013-07-04 Yao Qi <yao@codesourcery.com>
8059
8060 * Makefile.in (host_alias): Use @host_noncanonical@.
8061 (target_alias): Use @target_noncanonical@.
8062 * configure.ac: Use ACX_NONCANONICAL_TARGET and
8063 ACX_NONCANONICAL_HOST.
8064 * configure: Regenerated.
8065
8066 Revert:
8067 2013-06-28 Mircea Gherzan <mircea.gherzan@intel.com>
8068
8069 * configure.ac (version_host, version_target): Set and AC_SUBST them.
8070 * configure: Rebuild.
8071 * Makefile.in (version_host, version_target): Get from configure.
8072 (version.c): Use $(version_host) and $(version_target).
8073
8074 2013-07-03 Pedro Alves <palves@redhat.com>
8075
8076 * Makefile.in (config.status): Depend on development.sh.
8077 * acinclude.m4: Include libmcheck.m4.
8078 * configure: Regenerate.
8079
8080 2013-07-02 Mircea Gherzan <mircea.gherzan@intel.com>
8081
8082 * win32-low.c (winapi_DebugActiveProcessStop): Move the WINAPI
8083 attribute inside the parentheses.
8084 (winapi_DebugSetProcessKillOnExit): Ditto.
8085 (winapi_DebugBreakProcess): Ditto.
8086 (winapi_GenerateConsoleCtrlEvent): Ditto.
8087
8088 2013-07-02 Mircea Gherzan <mircea.gherzan@intel.com>
8089
8090 * notif.h (notif_event): Add a dummy member to avoid compiler
8091 errors.
8092
8093 2013-07-01 Pedro Alves <palves@redhat.com>
8094
8095 * hostio.c (HOSTIO_PATH_MAX): Define.
8096 (require_filename, handle_open, handle_unlink, handle_readlink):
8097 Use it.
8098
8099 2013-07-01 Pedro Alves <palves@redhat.com>
8100
8101 * server.h: Include "pathmax.h".
8102 * linux-low.c: Don't include sys/param.h.
8103 (linux_pid_exe_is_elf_64_file): Use PATH_MAX instead of
8104 MAXPATHLEN.
8105 * win32-low.c: Don't include sys/param.h.
8106 (win32_create_inferior): Use PATH_MAX instead of MAXPATHLEN.
8107
8108 2013-07-01 Pedro Alves <palves@redhat.com>
8109
8110 * event-loop.c: Don't check HAVE_UNISTD_H before including
8111 <unistd.h>.
8112 * gdbreplay.c: Likewise.
8113 * remote-utils.c: Likewise.
8114 * server.c: Likewise.
8115 * configure.ac: Don't check for unistd.h.
8116 * configure: Regenerate.
8117
8118 2013-06-28 Tom Tromey <tromey@redhat.com>
8119
8120 * Makefile.in (version.c): Use version.in, not
8121 common/version.in.
8122
8123 2013-06-28 Mircea Gherzan <mircea.gherzan@intel.com>
8124
8125 * configure.ac (version_host, version_target): Set and AC_SUBST them.
8126 * configure: Rebuild.
8127 * Makefile.in (version_host, version_target): Get from configure.
8128 (version.c): Use $(version_host) and $(version_target).
8129
8130 2013-06-10 Dmitry Kozlov <ddk@codesourcery.com>
8131
8132 Fix trace-status to output user name without trailing colon.
8133 * tracepoint.c (cmd_qtstatus): Remove unnecessary colon from user name.
8134
8135 2013-06-10 Dmitry Kozlov <ddk@codesourcery.com>
8136
8137 Fix trace-status to output proper start-time and stop-time.
8138 * tracepoint.c (cmd_qtstatus): Modify trace-status output to
8139 output start time and stop time in hex as gdb expects.
8140
8141 2013-06-26 Pedro Alves <pedro@codesourcery.com>
8142
8143 * tracepoint.c (build_traceframe_info_xml): Output trace state
8144 variables present in the trace buffer.
8145
8146 2013-06-24 Tom Tromey <tromey@redhat.com>
8147
8148 * Makefile.in (version.c): Use bfd/version.h, common/version.in,
8149 create-version.sh.
8150 (version.o): Remove.
8151 * gdbreplay.c: Include version.h.
8152 (version, host_name): Don't declare.
8153 * server.h: Include version.h.
8154 (version, host_name): Don't declare.
8155
8156 2013-06-12 Pedro Alves <palves@redhat.com>
8157
8158 * linux-x86-low.c (linux_is_elf64): Delete global.
8159 (x86_siginfo_fixup): Replace reference to `linux_is_elf64' global
8160 with local linux_pid_exe_is_elf_64_file use.
8161
8162 2013-06-11 Pedro Alves <palves@redhat.com>
8163
8164 * linux-low.c (regset_disabled, disable_regset): New functions.
8165 (regsets_fetch_inferior_registers)
8166 (regsets_store_inferior_registers): Use them.
8167 (initialize_regsets_info); Don't allocate the disabled_regsets
8168 array here.
8169 * linux-low.h (struct regsets_info) <disabled_regsets>: Extend
8170 comment.
8171
8172 2013-06-11 Pedro Alves <palves@redhat.com>
8173
8174 * linux-low.c (initialize_regsets_info): Use xcalloc instead of
8175 xmalloc.
8176
8177 2013-06-11 Pedro Alves <palves@redhat.com>
8178
8179 * linux-x86-low.c (initialize_low_arch): Call
8180 init_registers_x32_avx_linux.
8181
8182 2013-06-09 Jan Kratochvil <jan.kratochvil@redhat.com>
8183
8184 Fix compatibility with Android Bionic.
8185 * linux-low.c (linux_qxfer_libraries_svr4): Ignore first entry even if
8186 it is not empty.
8187
8188 2013-06-07 Pedro Alves <palves@redhat.com>
8189
8190 PR server/14823
8191 * Makefile.in (OBS): Add tdesc.o.
8192 (IPA_OBJS): Add tdesc-ipa.o.
8193 (tdesc-ipa.o): New rule.
8194 * ax.c (gdb_eval_agent_expr): Adjust register_size call to new
8195 interface.
8196 * linux-low.c (new_inferior): Delete.
8197 (disabled_regsets, num_regsets): Delete.
8198 (linux_add_process): Adjust to set the new per-process
8199 new_inferior flag.
8200 (linux_detach_one_lwp): Adjust to call regcache_invalidate_thread.
8201 (linux_wait_for_lwp): Adjust. Only call arch_setup if the event
8202 was a stop. When calling arch_setup, switch the current inferior
8203 to the thread that got an event.
8204 (linux_resume_one_lwp): Adjust to call regcache_invalidate_thread.
8205 (regsets_fetch_inferior_registers)
8206 (regsets_store_inferior_registers): New regsets_info parameter.
8207 Adjust to use it.
8208 (linux_register_in_regsets): New regs_info parameter. Adjust to
8209 use it.
8210 (register_addr, fetch_register, store_register): New usrregs_info
8211 parameter. Adjust to use it.
8212 (usr_fetch_inferior_registers, usr_store_inferior_registers): New
8213 parameter regs_info. Adjust to use it.
8214 (linux_fetch_registers): Get the current inferior's regs_info, and
8215 adjust to use it.
8216 (linux_store_registers): Ditto.
8217 [HAVE_LINUX_REGSETS] (initialize_regsets_info): New.
8218 (initialize_low): Don't initialize the target_regsets here. Call
8219 initialize_low_arch.
8220 * linux-low.h (target_regsets): Delete declaration.
8221 (struct regsets_info): New.
8222 (struct usrregs_info): New.
8223 (struct regs_info): New.
8224 (struct process_info_private) <new_inferior>: New field.
8225 (struct linux_target_ops): Delete the num_regs, regmap, and
8226 regset_bitmap fields. New field regs_info.
8227 [HAVE_LINUX_REGSETS] (initialize_regsets_info): Declare.
8228 * i387-fp.c (num_xmm_registers): Delete.
8229 (i387_cache_to_fsave, i387_fsave_to_cache): Adjust find_regno
8230 calls to new interface.
8231 (i387_cache_to_fxsave, i387_cache_to_xsave, i387_fxsave_to_cache)
8232 (i387_xsave_to_cache): Adjust find_regno calls to new interface.
8233 Infer the number of xmm registers from the regcache's target
8234 description.
8235 * i387-fp.h (num_xmm_registers): Delete.
8236 * inferiors.c (add_thread): Don't install the thread's regcache
8237 here.
8238 * proc-service.c (gregset_info): Fetch the current inferior's
8239 regs_info. Adjust to use it.
8240 * regcache.c: Include tdesc.h.
8241 (register_bytes, reg_defs, num_registers)
8242 (gdbserver_expedite_regs): Delete.
8243 (get_thread_regcache): If the thread doesn't have a regcache yet,
8244 create one, instead of aborting gdbserver.
8245 (regcache_invalidate_one): Rename to ...
8246 (regcache_invalidate_thread): ... this.
8247 (regcache_invalidate_one): New.
8248 (regcache_invalidate): Only invalidate registers of the current
8249 process.
8250 (init_register_cache): Add target_desc parameter, and use it.
8251 (new_register_cache): Ditto. Assert the target description has a
8252 non zero registers_size.
8253 (regcache_cpy): Add assertions. Adjust.
8254 (realloc_register_cache, set_register_cache): Delete.
8255 (registers_to_string, registers_from_string): Adjust.
8256 (find_register_by_name, find_regno, find_register_by_number)
8257 (register_cache_size): Add target_desc parameter, and use it.
8258 (free_register_cache_thread, free_register_cache_thread_one)
8259 (regcache_release, register_cache_size): New.
8260 (register_size): Add target_desc parameter, and use it.
8261 (register_data, supply_register, supply_register_zeroed)
8262 (supply_regblock, supply_register_by_name, collect_register)
8263 (collect_register_as_string, collect_register_by_name): Adjust.
8264 * regcache.h (struct target_desc): Forward declare.
8265 (struct regcache) <tdesc>: New field.
8266 (init_register_cache, new_register_cache): Add target_desc
8267 parameter.
8268 (regcache_invalidate_thread): Declare.
8269 (regcache_invalidate_one): Delete declaration.
8270 (regcache_release): Declare.
8271 (find_register_by_number, register_cache_size, register_size)
8272 (find_regno): Add target_desc parameter.
8273 (gdbserver_expedite_regs, gdbserver_xmltarget): Delete
8274 declarations.
8275 * remote-utils.c: Include tdesc.h.
8276 (outreg, prepare_resume_reply): Adjust.
8277 * server.c: Include tdesc.h.
8278 (gdbserver_xmltarget): Delete declaration.
8279 (get_features_xml, process_serial_event): Adjust.
8280 * server.h [IN_PROCESS_AGENT] (struct target_desc): Forward
8281 declare.
8282 (struct process_info) <tdesc>: New field.
8283 (ipa_tdesc): Declare.
8284 * tdesc.c: New file.
8285 * tdesc.h: New file.
8286 * tracepoint.c: Include tdesc.h.
8287 [IN_PROCESS_AGENT] (ipa_tdesc): Define.
8288 (get_context_regcache): Adjust to pass ipa_tdesc down.
8289 (do_action_at_tracepoint): Adjust to get the register cache size
8290 from the context regcache's description.
8291 (traceframe_walk_blocks): Adjust to get the register cache size
8292 from the current trace frame's description.
8293 (traceframe_get_pc): Adjust to get current trace frame's
8294 description and pass it down.
8295 (gdb_collect): Adjust to get the register cache size from the
8296 IPA's description.
8297 * linux-amd64-ipa.c (tdesc_amd64_linux): Declare.
8298 (gdbserver_xmltarget): Delete.
8299 (initialize_low_tracepoint): Set the ipa's target description.
8300 * linux-i386-ipa.c (tdesc_i386_linux): Declare.
8301 (initialize_low_tracepoint): Set the ipa's target description.
8302 * linux-x86-low.c: Include tdesc.h.
8303 [__x86_64__] (is_64bit_tdesc): New.
8304 (ps_get_thread_area, x86_get_thread_area): Use it.
8305 (i386_cannot_store_register): Rename to ...
8306 (x86_cannot_store_register): ... this. Use is_64bit_tdesc.
8307 (i386_cannot_fetch_register): Rename to ...
8308 (x86_cannot_fetch_register): ... this. Use is_64bit_tdesc.
8309 (x86_fill_gregset, x86_store_gregset): Adjust register_size calls
8310 to new interface.
8311 (target_regsets): Rename to ...
8312 (x86_regsets): ... this.
8313 (x86_get_pc, x86_set_pc): Adjust register_size calls to new
8314 interface.
8315 (x86_siginfo_fixup): Use is_64bit_tdesc.
8316 [__x86_64__] (tdesc_amd64_linux, tdesc_amd64_avx_linux)
8317 (tdesc_x32_avx_linux, tdesc_x32_linux)
8318 (tdesc_i386_linux, tdesc_i386_mmx_linux, tdesc_i386_avx_linux):
8319 Declare.
8320 (x86_linux_update_xmltarget): Delete.
8321 (I386_LINUX_XSAVE_XCR0_OFFSET): Define.
8322 (have_ptrace_getfpxregs, have_ptrace_getregset): New.
8323 (AMD64_LINUX_USER64_CS): New.
8324 (x86_linux_read_description): New, based on
8325 x86_linux_update_xmltarget.
8326 (same_process_callback): New.
8327 (x86_arch_setup_process_callback): New.
8328 (x86_linux_update_xmltarget): New.
8329 (x86_regsets_info): New.
8330 (amd64_linux_regs_info): New.
8331 (i386_linux_usrregs_info): New.
8332 (i386_linux_regs_info): New.
8333 (x86_linux_regs_info): New.
8334 (x86_arch_setup): Reimplement.
8335 (x86_install_fast_tracepoint_jump_pad): Use is_64bit_tdesc.
8336 (x86_emit_ops): Ditto.
8337 (the_low_target): Adjust. Install x86_linux_regs_info,
8338 x86_cannot_fetch_register, and x86_cannot_store_register.
8339 (initialize_low_arch): New.
8340 * linux-ia64-low.c (tdesc_ia64): Declare.
8341 (ia64_fetch_register): Adjust.
8342 (ia64_usrregs_info, regs_info): New globals.
8343 (ia64_regs_info): New function.
8344 (the_low_target): Adjust.
8345 (initialize_low_arch): New function.
8346 * linux-sparc-low.c (tdesc_sparc64): Declare.
8347 (sparc_fill_gregset_to_stack, sparc_store_gregset_from_stack):
8348 Adjust.
8349 (sparc_arch_setup): New function.
8350 (sparc_regsets_info, sparc_usrregs_info, regs_info): New globals.
8351 (the_low_target): Adjust.
8352 (initialize_low_arch): New function.
8353 * linux-ppc-low.c (tdesc_powerpc_32l, tdesc_powerpc_altivec32l)
8354 (tdesc_powerpc_cell32l, tdesc_powerpc_vsx32l)
8355 (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_altivec32l)
8356 (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_e500l)
8357 (tdesc_powerpc_64l, tdesc_powerpc_altivec64l)
8358 (tdesc_powerpc_cell64l, tdesc_powerpc_vsx64l)
8359 (tdesc_powerpc_isa205_64l, tdesc_powerpc_isa205_altivec64l)
8360 (tdesc_powerpc_isa205_vsx64l): Declare.
8361 (ppc_cannot_store_register, ppc_collect_ptrace_register)
8362 (ppc_supply_ptrace_register, parse_spufs_run, ppc_get_pc)
8363 (ppc_set_pc, ppc_get_hwcap): Adjust.
8364 (ppc_usrregs_info): Forward declare.
8365 (!__powerpc64__) ppc_regmap_adjusted: New global.
8366 (ppc_arch_setup): Adjust to the current process'es target
8367 description.
8368 (ppc_fill_vsxregset, ppc_store_vsxregset, ppc_fill_vrregset)
8369 (ppc_store_vrregset, ppc_fill_evrregset, ppc_store_evrregse)
8370 (ppc_store_evrregset): Adjust.
8371 (target_regsets): Rename to ...
8372 (ppc_regsets): ... this, and make static.
8373 (ppc_usrregs_info, ppc_regsets_info, regs_info): New globals.
8374 (ppc_regs_info): New function.
8375 (the_low_target): Adjust.
8376 (initialize_low_arch): New function.
8377 * linux-s390-low.c (tdesc_s390_linux32, tdesc_s390_linux32v1)
8378 (tdesc_s390_linux32v2, tdesc_s390_linux64, tdesc_s390_linux64v1)
8379 (tdesc_s390_linux64v2, tdesc_s390x_linux64, tdesc_s390x_linux64v1)
8380 (tdesc_s390x_linux64v2): Declare.
8381 (s390_collect_ptrace_register, s390_supply_ptrace_register)
8382 (s390_fill_gregset, s390_store_last_break): Adjust.
8383 (target_regsets): Rename to ...
8384 (s390_regsets): ... this, and make static.
8385 (s390_get_pc, s390_set_pc): Adjust.
8386 (s390_get_hwcap): New target_desc parameter, and use it.
8387 [__s390x__] (have_hwcap_s390_high_gprs): New global.
8388 (s390_arch_setup): Adjust to set the current process'es target
8389 description. Don't adjust the regmap.
8390 (s390_usrregs_info, s390_regsets_info, regs_info): New globals.
8391 [__s390x__] (s390_usrregs_info_3264, s390_regsets_info_3264)
8392 (regs_info_3264): New globals.
8393 (s390_regs_info): New function.
8394 (the_low_target): Adjust.
8395 (initialize_low_arch): New function.
8396 * linux-mips-low.c (tdesc_mips_linux, tdesc_mips_dsp_linux)
8397 (tdesc_mips64_linux, tdesc_mips64_dsp_linux): Declare.
8398 [__mips64] (init_registers_mips_linux)
8399 (init_registers_mips_dsp_linux): Delete defines.
8400 [__mips64] (tdesc_mips_linux, tdesc_mips_dsp_linux): New defines.
8401 (have_dsp): New global.
8402 (mips_read_description): New, based on mips_arch_setup.
8403 (mips_arch_setup): Reimplement.
8404 (get_usrregs_info): New function.
8405 (mips_cannot_fetch_register, mips_cannot_store_register)
8406 (mips_get_pc, mips_set_pc, mips_fill_gregset, mips_store_gregset)
8407 (mips_fill_fpregset, mips_store_fpregset): Adjust.
8408 (target_regsets): Rename to ...
8409 (mips_regsets): ... this, and make static.
8410 (mips_regsets_info, mips_dsp_usrregs_info, mips_usrregs_info)
8411 (dsp_regs_info, regs_info): New globals.
8412 (mips_regs_info): New function.
8413 (the_low_target): Adjust.
8414 (initialize_low_arch): New function.
8415 * linux-arm-low.c (tdesc_arm, tdesc_arm_with_iwmmxt)
8416 (tdesc_arm_with_vfpv2, tdesc_arm_with_vfpv3, tdesc_arm_with_neon):
8417 Declare.
8418 (arm_fill_vfpregset, arm_store_vfpregset): Adjust.
8419 (arm_read_description): New, with bits factored from
8420 arm_arch_setup.
8421 (arm_arch_setup): Reimplement.
8422 (target_regsets): Rename to ...
8423 (arm_regsets): ... this, and make static.
8424 (arm_regsets_info, arm_usrregs_info, regs_info): New globals.
8425 (arm_regs_info): New function.
8426 (the_low_target): Adjust.
8427 (initialize_low_arch): New function.
8428 * linux-m68k-low.c (tdesc_m68k): Declare.
8429 (target_regsets): Rename to ...
8430 (m68k_regsets): ... this, and make static.
8431 (m68k_regsets_info, m68k_usrregs_info, regs_info): New globals.
8432 (m68k_regs_info): New function.
8433 (m68k_arch_setup): New function.
8434 (the_low_target): Adjust.
8435 (initialize_low_arch): New function.
8436 * linux-sh-low.c (tdesc_sharch): Declare.
8437 (target_regsets): Rename to ...
8438 (sh_regsets): ... this, and make static.
8439 (sh_regsets_info, sh_usrregs_info, regs_info): New globals.
8440 (sh_regs_info, sh_arch_setup): New functions.
8441 (the_low_target): Adjust.
8442 (initialize_low_arch): New function.
8443 * linux-bfin-low.c (tdesc_bfin): Declare.
8444 (bfin_arch_setup): New function.
8445 (bfin_usrregs_info, regs_info): New globals.
8446 (bfin_regs_info): New function.
8447 (the_low_target): Adjust.
8448 (initialize_low_arch): New function.
8449 * linux-cris-low.c (tdesc_cris): Declare.
8450 (cris_arch_setup): New function.
8451 (cris_usrregs_info, regs_info): New globals.
8452 (cris_regs_info): New function.
8453 (the_low_target): Adjust.
8454 (initialize_low_arch): New function.
8455 * linux-cris-low.c (tdesc_crisv32): Declare.
8456 (cris_arch_setup): New function.
8457 (cris_regsets_info, cris_usrregs_info, regs_info): New globals.
8458 (cris_regs_info): New function.
8459 (the_low_target): Adjust.
8460 (initialize_low_arch): New function.
8461 * linux-m32r-low.c (tdesc_m32r): Declare.
8462 (m32r_arch_setup): New function.
8463 (m32r_usrregs_info, regs_info): New globals.
8464 (m32r_regs_info): Adjust.
8465 (initialize_low_arch): New function.
8466 * linux-tic6x-low.c (tdesc_tic6x_c64xp_linux)
8467 (tdesc_tic6x_c64x_linux, tdesc_tic6x_c62x_linux): Declare.
8468 (tic6x_usrregs_info): Forward declare.
8469 (tic6x_read_description): New function, based on ...
8470 (tic6x_arch_setup): ... this. Reimplement.
8471 (target_regsets): Rename to ...
8472 (tic6x_regsets): ... this, and make static.
8473 (tic6x_regsets_info, tic6x_usrregs_info, regs_info): New globals.
8474 (tic6x_regs_info): New function.
8475 (the_low_target): Adjust.
8476 (initialize_low_arch): New function.
8477 * linux-xtensa-low.c (tdesc_xtensa): Declare.
8478 (xtensa_fill_gregset, xtensa_store_gregset): Adjust.
8479 (target_regsets): Rename to ...
8480 (xtensa_regsets): ... this, and make static.
8481 (xtensa_regsets_info, xtensa_usrregs_info, regs_info): New
8482 globals.
8483 (xtensa_arch_setup, xtensa_regs_info): New functions.
8484 (the_low_target): Adjust.
8485 (initialize_low_arch): New function.
8486 * linux-nios2-low.c (tdesc_nios2_linux): Declare.
8487 (nios2_arch_setup): Set the current process'es tdesc.
8488 (target_regsets): Rename to ...
8489 (nios2_regsets): ... this.
8490 (nios2_regsets_info, nios2_usrregs_info, regs_info): New globals.
8491 (nios2_regs_info): New function.
8492 (the_low_target): Adjust.
8493 (initialize_low_arch): New function.
8494 * linux-aarch64-low.c (tdesc_aarch64): Declare.
8495 (aarch64_arch_setup): Set the current process'es tdesc.
8496 (target_regsets): Rename to ...
8497 (aarch64_regsets): ... this.
8498 (aarch64_regsets_info, aarch64_usrregs_info, regs_info): New globals.
8499 (aarch64_regs_info): New function.
8500 (the_low_target): Adjust.
8501 (initialize_low_arch): New function.
8502 * linux-tile-low.c (tdesc_tilegx, tdesc_tilegx32): Declare
8503 globals.
8504 (target_regsets): Rename to ...
8505 (tile_regsets): ... this.
8506 (tile_regsets_info, tile_usrregs_info, regs_info): New globals.
8507 (tile_regs_info): New function.
8508 (tile_arch_setup): Set the current process'es tdesc.
8509 (the_low_target): Adjust.
8510 (initialize_low_arch): New function.
8511 * spu-low.c (tdesc_spu): Declare.
8512 (spu_create_inferior, spu_attach): Set the new process'es tdesc.
8513 * win32-arm-low.c (tdesc_arm): Declare.
8514 (arm_arch_setup): New function.
8515 (the_low_target): Install arm_arch_setup instead of
8516 init_registers_arm.
8517 * win32-i386-low.c (tdesc_i386, tdesc_amd64): Declare.
8518 (init_windows_x86): Rename to ...
8519 (i386_arch_setup): ... this. Set `win32_tdesc'.
8520 (the_low_target): Adjust.
8521 * win32-low.c (win32_tdesc): New global.
8522 (child_add_thread): Don't create the thread cache here.
8523 (do_initial_child_stuff): Set the new process'es tdesc.
8524 * win32-low.h (struct target_desc): Forward declare.
8525 (win32_tdesc): Declare.
8526 * lynx-i386-low.c (tdesc_i386): Declare global.
8527 (lynx_i386_arch_setup): Set `lynx_tdesc'.
8528 * lynx-low.c (lynx_tdesc): New global.
8529 (lynx_add_process): Set the new process'es tdesc.
8530 * lynx-low.h (struct target_desc): Forward declare.
8531 (lynx_tdesc): Declare global.
8532 * lynx-ppc-low.c (tdesc_powerpc_32): Declare global.
8533 (lynx_ppc_arch_setup): Set `lynx_tdesc'.
8534 * nto-low.c (nto_tdesc): New global.
8535 (do_attach): Set the new process'es tdesc.
8536 * nto-low.h (struct target_desc): Forward declare.
8537 (nto_tdesc): Declare.
8538 * nto-x86-low.c (tdesc_i386): Declare.
8539 (nto_x86_arch_setup): Set `nto_tdesc'.
8540
8541 2013-06-04 Gary Benson <gbenson@redhat.com>
8542
8543 * server.c (handle_query): Add "augmented-libraries-svr4-read+"
8544 to qSupported response when appropriate.
8545 (handle_qxfer_libraries_svr4): Allow qXfer:libraries-svr4:read
8546 with nonzero-length annex.
8547 * linux-low.c (linux_qxfer_libraries_svr4): Parse and handle
8548 arguments supplied in annex.
8549
8550 2013-05-31 Doug Evans <dje@google.com>
8551
8552 PR server/15594
8553 * linux-x86-low.c (ps_get_thread_area): Properly extend address to
8554 64 bits in 64-cross-32 environment.
8555
8556 2013-05-28 Pedro Alves <palves@redhat.com>
8557
8558 * Makefile.in (clean): Remove reference to aarch64-without-fpu.c.
8559 (aarch64-without-fpu.c): Delete rule.
8560 * configure.srv (aarch64*-*-linux*): Remove references to
8561 aarch64-without-fpu.o and aarch64-without-fpu.xml.
8562 * linux-aarch64-low.c (init_registers_aarch64_without_fpu): Remove
8563 declaration.
8564
8565 2013-05-24 Pedro Alves <palves@redhat.com>
8566
8567 * server.c (handle_v_cont) <vCont;r>: Use unpack_varlen_hex
8568 instead of strchr/decode_address. Error if the range isn't split
8569 with a ','. Don't assume there's be a ':' in the action.
8570
8571 2013-05-23 Yao Qi <yao@codesourcery.com>
8572 Pedro Alves <palves@redhat.com>
8573
8574 * linux-low.c (lwp_in_step_range): New function.
8575 (linux_wait_1): If the thread was range stepping and stopped
8576 outside the stepping range, report the stop to GDB. Otherwise,
8577 continue stepping. Add range stepping debug output.
8578 (linux_set_resume_request): Copy the step range from the resume
8579 request to the lwp.
8580 (linux_supports_range_stepping): New.
8581 (linux_target_ops) <supports_range_stepping>: Set to
8582 linux_supports_range_stepping.
8583 * linux-low.h (struct linux_target_ops)
8584 <supports_range_stepping>: New field.
8585 (struct lwp_info) <step_range_start, step_range_end>: New fields.
8586 * linux-x86-low.c (x86_supports_range_stepping): New.
8587 (the_low_target) <supports_range_stepping>: Set to
8588 x86_supports_range_stepping.
8589 * server.c (handle_v_cont): Handle 'r' action.
8590 (handle_v_requests): Append ";r" if the target supports range
8591 stepping.
8592 * target.h (struct thread_resume) <step_range_start,
8593 step_range_end>: New fields.
8594 (struct target_ops) <supports_range_stepping>:
8595 New field.
8596 (target_supports_range_stepping): New macro.
8597
8598 2013-05-17 Joel Brobecker <brobecker@adacore.com>
8599
8600 * lynx-low.c (lynx_resume): Fix null_ptid/minus_one_ptid
8601 confusion in comment.
8602
8603 2013-05-17 Joel Brobecker <brobecker@adacore.com>
8604
8605 * lynx-low.c (struct process_info_private): New type.
8606 (lynx_add_process): New function.
8607 (lynx_create_inferior, lynx_attach): Replace calls to
8608 add_process by calls to lynx_add_process.
8609 (lynx_resume): If PTID is null, then try using
8610 current_process()->private->last_wait_event_ptid.
8611 Add comments.
8612 (lynx_clear_inferiors): Delete. The contents of that function
8613 has been inlined in lynx_mourn;
8614 (lynx_wait_1): Save the ptid in the process's private data.
8615 (lynx_mourn): Free the process' private data. Replace call
8616 to lynx_clear_inferiors by call to clear_inferiors.
8617
8618 2013-05-17 Yao Qi <yao@codesourcery.com>
8619
8620 * i386-low.c (i386_length_and_rw_bits): Move the comment to
8621 the right place.
8622
8623 2013-05-16 Luis Machado <lgustavo@codesourcery.com>
8624
8625 * linux-low.c: Move definition checks upwards for PT_TEXT_ADDR,
8626 PT_DATA_ADDR and PT_TEXT_END_ADDR. Update comments.
8627 (linux_read_offsets): Remove PT_TEXT_ADDR, PT_DATA_ADDR and
8628 PT_TEXT_END_ADDR guards. Update comments.
8629 (linux_target_op) <read_offsets>: Conditionally define to
8630 linux_read_offsets if the target is UCLIBC and if it defines
8631 PT_TEXT_ADDR, PT_DATA_ADDR and PT_TEXT_END_ADDR.
8632
8633 2013-05-06 Sandra Loosemore <sandra@codesourcery.com>
8634 Andrew Jenner <andrew@codesourcery.com>
8635
8636 * Makefile.in (SFILES): Add linux-nios2-low.c.
8637 (clean): Add action to delete nios2-linux.c.
8638 (nios2-linux.c): New rule.
8639 * configure.srv: Add nios2*-*-linux*.
8640 * linux-nios2-low.c: New.
8641
8642 2013-05-03 Hafiz Abid Qadeer <abidh@codesourcery.com>
8643
8644 * tracepoint.c (cmd_qtinit): Call 'stop_tracing'.
8645
8646 2013-04-25 Hui Zhu <hui@codesourcery.com>
8647
8648 PR gdb/15186
8649 * ax.c (ax_printf): Add fflush.
8650
8651 2013-04-22 Tom Tromey <tromey@redhat.com>
8652
8653 * Makefile.in (SFILES): Add filestuff.c.
8654 (OBS): Add filestuff.o.
8655 (filestuff.o): New target.
8656 * config.in, configure: Rebuild.
8657 * configure.ac: Check for fdwalk, pipe2.
8658
8659 2013-04-17 Pedro Alves <palves@redhat.com>
8660
8661 * configure.ac (USE_THREAD_DB): Delete variable.
8662 (if test "$srv_linux_thread_db" = "yes"): AC_DEFINE USE_THREAD_DB.
8663 Don't AC_SUBST USE_THREAD_DB.
8664 * Makefile.in (INTERNAL_CFLAGS): Remove @USE_THREAD_DB@.
8665 * config.in, configure: Regenerate.
8666
8667 2013-04-16 Pedro Alves <palves@redhat.com>
8668
8669 * linux-low.h (struct lwp_info) <thread_known>: Move under
8670 the USE_THREAD_DB #ifdef.
8671
8672 2013-04-16 Pedro Alves <palves@redhat.com>
8673
8674 * Makefile.in (INTERNAL_CFLAGS): Add @USE_THREAD_DB@.
8675 (linux-low.o): Delete rule.
8676 * linux-low.h: Always include "gdb_thread_db.h" instead of
8677 conditionally including thread_db.h.
8678 (struct lwp_info) <th>: Guard with #ifdef USE_THREAD_DB instead of
8679 HAVE_THREAD_DB_H.
8680
8681 2013-04-07 Jan Kratochvil <jan.kratochvil@redhat.com>
8682
8683 * Makefile.in (install-only): Fix make install regression.
8684
8685 2013-04-05 Jan Kratochvil <jan.kratochvil@redhat.com>
8686
8687 Convert man pages to texinfo, new gdbinit.5 texinfo page.
8688 * Makefile.in (install-only): Remove $(man1dir) and gdbserver.1
8689 installation.
8690 * gdbserver.1: Remove.
8691
8692 2013-03-22 Pedro Alves <palves@redhat.com>
8693
8694 * linux-low.c (handle_extended_wait): Don't call
8695 linux_enable_event_reporting.
8696
8697 2013-03-15 Tony Theodore <tonyt@logyst.com>
8698
8699 PR build/9098:
8700 * Makefile.in (SHELL): Use @SHELL@.
8701
8702 2013-03-14 Sergio Durigan Junior <sergiodj@redhat.com>
8703
8704 * tracepoint.c (cmd_qtv): Initialize `val' with zero, silencing
8705 compiler warning.
8706
8707 2013-03-13 Joel Brobecker <brobecker@adacore.com>
8708
8709 * linux-low.c (linux_target_ops) [!HAVE_LINUX_BTRACE]:
8710 Remove extraneous NULL element.
8711
8712 2013-03-13 Yao Qi <yao@codesourcery.com>
8713
8714 * tracepoint.c (traceframe_read_tsv): Look for the last matched
8715 'V' block in trace frame.
8716
8717 2013-03-11 Markus Metzger <markus.t.metzger@intel.com>
8718
8719 * target.h (struct target_ops): Add btrace ops.
8720 (target_supports_btrace): New macro.
8721 (target_enable_btrace): New macro.
8722 (target_disable_btrace): New macro.
8723 (target_read_btrace): New macro.
8724 * gdbthread.h (struct thread_info): Add btrace field.
8725 * server.c: Include btrace-common.h.
8726 (handle_btrace_general_set): New function.
8727 (handle_btrace_enable): New function.
8728 (handle_btrace_disable): New function.
8729 (handle_general_set): Call handle_btrace_general_set.
8730 (handle_qxfer_btrace): New function.
8731 (struct qxfer qxfer_packets[]): Add btrace entry.
8732 * inferiors.c (remove_thread): Disable btrace.
8733 * linux-low: Include linux-btrace.h.
8734 (linux_low_enable_btrace): New function.
8735 (linux_low_read_btrace): New function.
8736 (linux_target_ops): Add btrace ops.
8737 * configure.srv (i[34567]86-*-linux*): Add linux-btrace.o.
8738 Add srv_linux_btrace=yes.
8739 (x86_64-*-linux*): Add linux-btrace.o.
8740 Add srv_linux_btrace=yes.
8741 * configure.ac: Define HAVE_LINUX_BTRACE.
8742 * config.in: Regenerated.
8743 * configure: Regenerated.
8744
8745 2013-03-11 Markus Metzger <markus.t.metzger@intel.com>
8746
8747 * server.c (handle_qxfer): Preserve error message if -3 is
8748 returned.
8749 (qxfer): Document the -3 return value.
8750
8751 2013-03-11 Markus Metzger <markus.t.metzger@intel.com>
8752
8753 * Makefile.in (SFILES): Add $(srcdir)/common/linux-btrace.c.
8754 (linux_btrace_h): New variable.
8755 (linux-btrace.o): New rule.
8756
8757 2013-03-08 Stan Shebs <stan@codesourcery.com>
8758 Hafiz Abid Qadeer <abidh@codesourcery.com>
8759
8760 * tracepoint.c (trace_buffer_size): New global.
8761 (DEFAULT_TRACE_BUFFER_SIZE): New define.
8762 (init_trace_buffer): Change to one-argument function. Allocate
8763 trace buffer memory.
8764 (handle_tracepoint_general_set): Call cmd_bigqtbuffer_size to
8765 handle QTBuffer:size packet.
8766 (cmd_bigqtbuffer_size): New function.
8767 (initialize_tracepoint): Call init_trace_buffer with
8768 DEFAULT_TRACE_BUFFER_SIZE.
8769 * server.c (handle_query): Add QTBuffer:size in the
8770 supported packets.
8771
8772 2013-03-07 Yao Qi <yao@codesourcery.com>
8773
8774 * tracepoint.c (cur_action, cur_step_action): Make them unsigned.
8775 (cmd_qtfp): Initialize cur_action and cur_step_action 0 instead
8776 of -1.
8777 (cmd_qtsp): Adjust condition. Do post increment.
8778 Set cur_action and cur_step_action back to 0.
8779
8780 2013-03-07 Jeremy Bennett <jeremy.bennett@embecosm.com>
8781
8782 PR server/15236
8783 * linux-low.c (linux_write_memory): Return early success if LEN is
8784 zero.
8785
8786 2013-03-05 Corinna Vinschen <vinschen@redhat.de>
8787
8788 * configure.srv: Add x86_64-*-cygwin* as target.
8789
8790 2013-02-28 Tom Tromey <tromey@redhat.com>
8791
8792 * configure.ac: Invoke AC_SYS_LARGEFILE.
8793 * configure, config.in: Rebuild.
8794
8795 2013-02-28 Corinna Vinschen <vinschen@redhat.com>
8796
8797 * win32-low.c: Throughout, fix format strings and casts of
8798 printf-like functions to avoid type related warnings on all
8799 platforms.
8800 (get_child_debug_event): Print dwDebugEventCode as hex since
8801 that's how it's usually documented.
8802
8803 2013-02-28 Yao Qi <yao@codesourcery.com>
8804
8805 * tracepoint.c (cmd_qtbuffer): Call phex_nz instead of
8806 pulongest.
8807
8808 2013-02-27 Jiong Wang <jiwang@tilera.com>
8809
8810 * Makefile.in (clean): Remove reg-tilegx.c, reg-tilegx32.c.
8811 (reg-tilegx32.c): New rule.
8812 * configure.srv (tilegx-*-linux*): Add reg-tilegx32.o to srv_regobj.
8813 * linux-tile-low.c (tile_arch_setup): New function. Invoke
8814 different register info initializer according to elf class.
8815 (init_registers_tilgx32): New function. The tilegx32 register info
8816 initializer.
8817 (tile_fill_gregset): Use "uint_reg_t" to represent register size.
8818 (tile_store_gregset): Likewise.
8819
8820 2013-02-27 Yao Qi <yao@codesourcery.com>
8821
8822 * server.c (process_point_options): Print debug message when
8823 debug_threads is true.
8824
8825 2013-02-26 Yao Qi <yao@codesourcery.com>
8826
8827 * tracepoint.c (cmd_qtbuffer): Don't set '\0' in OWN_BUF.
8828
8829 2013-02-19 Pedro Alves <palves@redhat.com>
8830 Kai Tietz <ktietz@redhat.com>
8831
8832 PR gdb/15161
8833
8834 * server.c (handle_query) <CRC check>: Use unpack_varlen_hex
8835 instead of strtoul to extract address from packet.
8836 (process_serial_event) <'z'>: Likewise.
8837
8838 2013-02-18 Yao Qi <yao@codesourcery.com>
8839
8840 * linux-bfin-low.c (the_low_target): Use NULL instead of 0.
8841
8842 2013-02-14 Pedro Alves <palves@redhat.com>
8843
8844 Plug memory leak.
8845
8846 * tracepoint.c (cmd_qtnotes): Free TRACING_USER_NAME,
8847 TRACING_NOTES and TRACING_STOP_NOTE before clobbering.
8848
8849 2013-02-14 Pedro Alves <palves@redhat.com>
8850
8851 * tracepoint.c (cmd_qtdpsrc): Use savestring.
8852
8853 2013-02-14 Pedro Alves <palves@redhat.com>
8854
8855 * tracepoint.c (save_string): Delete.
8856 (add_tracepoint_action): Use savestring instead of save_string.
8857
8858 2013-02-12 Pedro Alves <palves@redhat.com>
8859
8860 * linux-xtensa-low.c: Ditto.
8861 * xtensa-xtregs.c: Ditto.
8862
8863 2013-02-12 Sanimir Agovic <sanimir.agovic@intel.com>
8864
8865 * thread-db.c (thread_db_get_tls_address): NULL pointer check
8866 thread_db.
8867
8868 2013-02-07 Marcus Shawcroft <marcus.shawcroft@arm.com>
8869
8870 * linux-aarch64-low.c (aarch64_arch_setup): Clamp
8871 aarch64_num_wp_regs and aarch64_num_bp_regs to
8872 AARCH64_HWP_MAX_NUM and AARCH64_HBP_MAX_NUM respectively.
8873
8874 2013-02-07 Marcus Shawcroft <marcus.shawcroft@arm.com>
8875
8876 * linux-aarch64-low.c (ps_get_thread_area): Replace
8877 PTRACE_GET_THREAD_AREA with PTRACE_GETREGSET.
8878
8879 2013-02-04 Jim MacArthur <jim.macarthur@arm.com>
8880 Marcus Shawcroft <marcus.shawcroft@arm.com>
8881 Nigel Stephens <nigel.stephens@arm.com>
8882 Yufeng Zhang <yufeng.zhang@arm.com>
8883
8884 * Makefile.in (clean): Remove aarch64.c and aarch64-without-fpu.c.
8885 (aarch64.c, aarch64-without-fpu.c): New targets.
8886 * configure.srv (aarch64*-*-linux*): New.
8887 * linux-aarch64-low.c: New file.
8888
8889 2013-02-04 Marcus Shawcroft <marcus.shawcroft@arm.com>
8890
8891 * linux-low.c (handle_extended_wait, linux_create_inferior)
8892 (linux_attach_lwp_1, linux_kill_one_lwp, linux_attach_one_lwp)
8893 (dequeue_one_deferred_signal, linux_resume_one_thread)
8894 (fetch_register, linux_write_memory, linux_enable_event_reporting)
8895 (linux_tracefork_grandchild, linux_test_for_tracefork)
8896 (linux_read_offsets, linux_xfer_siginfo, linux_xfer_siginfo): Add
8897 PTRACE_ARG3_TYPE and PTRACE_ARG4_TYPE cast to ptrace arguments
8898 where the argument is 0.
8899
8900 2013-01-25 Yao Qi <yao@codesourcery.com>
8901
8902 * event-loop.c: Include "queue.h".
8903 (gdb_event_p): New typedef.
8904 (struct gdb_event) <next_event>: Remove.
8905 (event_queue): Change to QUEUE(gdb_event_p).
8906 (async_queue_event): Remove.
8907 (gdb_event_xfree): New.
8908 (initialize_event_loop): New.
8909 (process_event): Use API from QUEUE.
8910 (wait_for_event): Likewise.
8911 * server.c (main): Call initialize_event_loop.
8912 * server.h (initialize_event_loop): Declare.
8913
8914 2013-01-18 Yao Qi <yao@codesourcery.com>
8915
8916 * ax.h (struct eval_agent_expr_context): New.
8917 (gdb_eval_agent_expr): Update declaration.
8918 * ax.c (gdb_eval_agent_expr): Remove argument REGCACHE and
8919 TFRAME. Add new argument CTX.
8920 * server.h (struct eval_agent_expr_context): Declare.
8921 (agent_mem_read, agent_tsv_read): Update declaration.
8922 (agent_mem_read_string): Likewise.
8923 * tracepoint.c (eval_tracepoint_agent_expr): Remove.
8924 (add_traceframe_block): Add new argument TPOINT.
8925 Increase TPOINT->traceframe_usage.
8926 (do_action_at_tracepoint): Call gdb_eval_agent_expr instead of
8927 eval_tracepoint_agent_expr.
8928 (condition_true_at_tracepoint): Likewise.
8929 (agent_mem_read): Remove argument TFRAME. Add argument CTX.
8930 (agent_mem_read_string, agent_tsv_read): Likewise.
8931
8932 2013-01-16 Yao Qi <yao@codesourcery.com>
8933
8934 * linux-low.c (linux_resume_one_lwp): Don't check
8935 'lwp->bp_reinsert != 0'.
8936
8937 2013-01-07 Joel Brobecker <brobecker@adacore.com>
8938 Pedro Alves <palves@redhat.com>
8939
8940 * lynx-low.c (ptrace_request_to_str): Define a temporary
8941 macro and use it to simplify this function's implementation.
8942
8943 2013-01-07 Joel Brobecker <brobecker@adacore.com>
8944
8945 * lynx-low.c (lynx_resume): Call perror_with_name if lynx_ptrace
8946 sets errno.
8947
8948 2013-01-07 Joel Brobecker <brobecker@adacore.com>
8949
8950 * configure.srv (i[34567]86-*-lynxos*): Set srv_xmlfiles.
8951
8952 2013-01-07 Joel Brobecker <brobecker@adacore.com>
8953
8954 * configure.srv (powerpc-*-lynxos*): Set srv_xmlfiles.
8955
8956 2013-01-07 Joel Brobecker <brobecker@adacore.com>
8957
8958 * lynx-low.c (lynx_resume): Use the resume_info parameter
8959 to determine the ptid for the lynx_ptrace call, unless
8960 it is equal to minus_one_ptid, in which case we use the
8961 ptid of the current_inferior.
8962 (lynx_wait_1): After having received a thread create/exit
8963 event, resume the inferior's execution using the signaling
8964 thread's ptid, rather than the old ptid.
8965
8966 2013-01-07 Joel Brobecker <brobecker@adacore.com>
8967
8968 * lynx-low.c (lynx_resume): Delete variable ret.
8969
8970 2013-01-01 Joel Brobecker <brobecker@adacore.com>
8971
8972 * gdbreplay.c (gdbreplay_version): Update copyright year.
8973 * server.c (gdbserver_version): Likewise.
8974
8975 2012-12-17 Joel Brobecker <brobecker@adacore.com>
8976
8977 * lynx-low.c (lynx_wait_1): Add debug trace before adding
8978 new thread.
8979
8980 2012-12-17 Joel Brobecker <brobecker@adacore.com>
8981
8982 * lynx-low.c (ptrace_request_to_str): Add handling for
8983 PTRACE_GETTRACESIG.
8984
8985 2012-12-17 Joel Brobecker <brobecker@adacore.com>
8986
8987 * lynx-low.c (lynx_attach): Delete variable new_process.
8988
8989 2012-12-17 Joel Brobecker <brobecker@adacore.com>
8990
8991 * lynx-low.c (lynx_create_inferior): Delete variable
8992 new_process.
8993
8994 2012-12-17 Joel Brobecker <brobecker@adacore.com>
8995
8996 * lynx-low.c (ptrace_request_to_str): Do not handle
8997 PTRACE_GETTHREADLIST if this macro does not exist.
8998
8999 2012-12-15 Yao Qi <yao@codesourcery.com>
9000
9001 * Makefile.in (OBS): Add notif.o.
9002 * notif.c, notif.h: New.
9003 * server.c: Include "notif.h".
9004 (struct vstop_notif) <next>: Remove.
9005 <base>: New field.
9006 (queue_stop_reply): Update.
9007 (push_event, send_next_stop_reply): Remove.
9008 (discard_queued_stop_replies): Update.
9009 (notif_stop): New variable.
9010 (handle_v_stopped): Remove.
9011 (handle_v_requests): Don't call handle_v_stopped. Call
9012 handle_ack_notif instead.
9013 (queue_stop_reply_callback): Call notif_event_enque instead
9014 of queue_stop_reply.
9015 (handle_status): Don't call send_next_stop_reply, call
9016 notif_write_event instead.
9017 (kill_inferior_callback): Likewise.
9018 (detach_or_kill_inferior_callback): Likewise.
9019 (main): Call initialize_notif.
9020 (process_serial_event): Call QUEUE_is_empty.
9021 (handle_target_event): Call notif_push instead of push event.
9022 * server.h (push_event): Remove declaration.
9023
9024 2012-12-10 Tom Tromey <tromey@redhat.com>
9025
9026 * Makefile.in (DEPMODE, DEPDIR, depcomp, COMPILE.pre)
9027 (COMPILE.post, COMPILE, POSTCOMPILE, IPAGENT_COMPILE): New
9028 macros.
9029 (.c.o): Rewrite.
9030 (ax-ipa.o, tracepoint-ipa.o, utils-ipa.o, format-ipa.o)
9031 (common-utils-ipa.o, remote-utils-ipa.o, regcache-ipa.o)
9032 (i386-linux-ipa.o, linux-i386-ipa.o, linux-amd64-ipa.o)
9033 (amd64-linux-ipa.o, ax.o): Rewrite.
9034 (event-loop.o, hostio.o, hostio-errno.o, inferiors.o, mem-break.o)
9035 (proc-service.o, regcache.o, remote-utils.o, server.o, target.o)
9036 (thread-db.o, tracepoint.o, utils.o, gdbreplay.o, dll.o): Remove.
9037 (signals.o, linux-procfs.o, linux-ptrace.o, common-utils.o, vec.o)
9038 (gdb_vecs.o, xml-utils.o, linux-osdata.o, ptid.o, buffer.o)
9039 (format.o, agent.o, vasprintf.o, vsnprintf.o): Rewrite.
9040 (i386-low.o, i387-fp.o, linux-low.o, linux-arm-low.o)
9041 (linux-bfin-low.o, linux-cris-low.o, linux-crisv32-low.o)
9042 (linux-ia64-low.o, linux-m32r-low.o, linux-mips-low.o)
9043 (linux-ppc-low.o, linux-s390-low.o, linux-sh-low.o)
9044 (linux-tic6x-low.o, linux-x86-low.o, linux-xtensa-low.o)
9045 (linux-tile-low.o, lynx-low.o, lynx-ppc-low.o, nto-low.o)
9046 (nto-x86-low.o, linux-low.o, win32-low.o, win32-arm-low.o)
9047 (win32-i386-low.o, spu-low.o, reg-arm.o, arm-with-iwmmxt.o)
9048 (arm-with-vfpv2.o, arm-with-vfpv3.o, arm-with-neon.o, reg-bfin.o)
9049 (reg-cris.o, reg-crisv32.o, i386.o, i386-linux.o, i386-avx.o)
9050 (i386-avx-linux.o, i386-mmx.o, i386-mmx-linux.o, reg-ia64.o)
9051 (reg-m32r.o, reg-m68k.o, reg-cf.o, mips-linux.o, mips-dsp-linux.o)
9052 (mips64-linux.o, mips64-dsp-linux.o, powerpc-32.o, powerpc-32l.o)
9053 (powerpc-altivec32l.o, powerpc-cell32l.o, powerpc-vsx32l.o)
9054 (powerpc-isa205-32l.o, powerpc-isa205-altivec32l.o)
9055 (powerpc-isa205-vsx32l.o, powerpc-e500l.o, powerpc-64l.o)
9056 (powerpc-altivec64l.o, powerpc-cell64l.o, powerpc-vsx64l.o)
9057 (powerpc-isa205-64l.o, powerpc-isa205-altivec64l.o)
9058 (powerpc-isa205-vsx64l.o, s390-linux32.o, s390-linux32v1.o)
9059 (s390-linux32v2.o, s390-linux64.o, s390-linux64v1.o)
9060 (s390-linux64v2.o, s390x-linux64.o, s390x-linux64v1.o)
9061 (s390x-linux64v2.o, tic6x-c64xp-linux.o, tic6x-c64x-linux.o)
9062 (tic6x-c62x-linux.o, reg-sh.o, reg-sparc64.o, reg-spu.o, amd64.o)
9063 (amd64-linux.o, amd64-avx.o, amd64-avx-linux.o, x32.o)
9064 (x32-linux.o, x32-avx.o, x32-avx-linux.o, reg-xtensa.o)
9065 (reg-tilegx.o): Remove.
9066 (all_object_files): New macro.
9067 Include .deps files.
9068 * aclocal.m4, configure: Rebuild.
9069 * acinclude.m4: Include depstand.m4, lead-dot.m4.
9070 * configure.ac: Invoke ZW_CREATE_DEPDIR,
9071 ZW_PROG_COMPILER_DEPENDENCIES. Compute GMAKE condition.
9072
9073 2012-12-05 Tom Tromey <tromey@redhat.com>
9074
9075 PR gdb/14917:
9076 * server.h (current_insn_ptr, emit_error): Declare 'extern'.
9077
9078 2012-11-28 Markus Metzger <markus.t.metzger@intel.com>
9079
9080 * configure.ac: Check for linux/perf_event.h.
9081 * config.in: Regenerated.
9082 * configure: Regenerated.
9083
9084 2012-11-26 Maxime Villard <rustyBSD@gmx.fr>
9085
9086 * hostio.c (handle_readlink): Decrease buffer size
9087 parameter passed to readlink by one byte.
9088
9089 2012-11-26 Yao Qi <yao@codesourcery.com>
9090
9091 * configure.ac (build_warnings): Append '-Wempty-body'.
9092 * configure: Regenerated.
9093 * linux-low.c (linux_create_inferior): Use braces for empty 'if'
9094 body.
9095
9096 2012-11-15 Pierre Muller <muller@sourceware.org>
9097
9098 * configure.ac (AC_CHECK_HEADERS): Add wait.h header.
9099 * config.in: Regenerate.
9100 * configure: Regenerate.
9101 * linux-low.c: Use "gdb_stat.h" header instead of <sys/stat.h> header.
9102 Use "gdb_wait.h" header instead of <sys/wait.h> header.
9103 * lynx-low.c: Use "gdb_wait.h" header instead of <sys/wait.h> header.
9104 * remote-utils.c: Use "gdb_stat.h" header instead of <sys/stat.h>
9105 header.
9106 * server.c: Remove HAVE_WAIT_H conditional. Use "gdb_wait.h" header
9107 instead of <sys/wait.h> header.
9108 * spu-low.c: Use "gdb_wait.h" header instead of <sys/wait.h> header.
9109
9110 2012-11-13 Markus Metzger <markus.t.metzger@intel.com>
9111
9112 * Makefile.in: (INTERNAL_CFLAGS): Add -DGDBSERVER
9113 (various make rules): Remove -DGDBSERVER
9114
9115 2012-11-09 Yao Qi <yao@codesourcery.com>
9116
9117 * spu-low.c (current_ptid): Move it to ..
9118 * gdbthread.h: ... here. New.
9119 * remote-utils.c (read_ptid): Use macro 'current_ptid'.
9120 * server.c (myresume, process_serial_event): Likewise.
9121 * thread-db.c (thread_db_find_new_threads): Likewise.
9122 * tracepoint.c (run_inferior_command): Likewise.
9123
9124 2012-10-01 Andrew Burgess <aburgess@broadcom.com>
9125
9126 * server.c (handle_search_memory_1): Include access length in
9127 warning message.
9128
9129 2012-09-05 Michael Brandt <michael.brandt@axis.com>
9130
9131 * linux-crisv32-low.c: Fix compile errors.
9132
9133 2012-09-04 Yao Qi <yao@codesourcery.com>
9134
9135 * tracepoint.c (cmd_qtsv): Adjust debug message.
9136 Don't check CUR_TPOINT.
9137
9138 2012-08-28 Yao Qi <yao@codesourcery.com>
9139
9140 * ax.c, tracepoint.c: Replace ATTR_FORMAT with ATTRIBUTE_PRINTF.
9141 * server.h: Include 'libiberty.h' and 'ansidecl.h'.
9142 (ATTR_NORETURN, ATTR_FORMAT, ATTR_MALLOC): Remove.
9143 Remove declarations of xmalloc, xreallloc, xstrdup and
9144 freeargv.
9145 * Makefile.in (libiberty_h): New.
9146 (server_h): Append dependencies 'libiberty.h' and 'ansidecl.h'.
9147 (linux-bfin-low.o): Append dependency 'libiberty.h'.
9148
9149 2012-08-23 Yao Qi <yao@codesourcery.com>
9150
9151 * server.h: Remove declaration of 'xsnprintf'.
9152
9153 2012-08-22 Keith Seitz <keiths@redhat.com>
9154
9155 * server.h: Include build-gnulib-gbserver/config.h.
9156 * gdbreplay.c: Likewise.
9157
9158 2012-08-08 Doug Evans <dje@google.com>
9159
9160 * Makefile.in (SFILES): Add gdb_vecs.c.
9161 (OBS): Add gdb_vecs.o.
9162 (gdb_vecs_h, host_defs_h): New variables.
9163 (thread-db.o): Add $(gdb_vecs_h) dependency.
9164 (gdb_vecs.o): New rule.
9165 * thread-db.c: #include "gdb_vecs.h".
9166 (thread_db_load_search): Use a vector to iterate over path elements.
9167 Handle text appearing after "$pdir".
9168
9169 * configure.ac: Add check for strstr.
9170 * config.in: Regenerate.
9171 * configure: Regenerate.
9172
9173 2012-08-02 Ulrich Weigand <ulrich.weigand@linaro.org>
9174
9175 * hostio.c (handle_pread): If pread fails, fall back to attempting
9176 lseek/read.
9177 (handle_pwrite): Likewise for pwrite.
9178
9179 2012-08-01 Ulrich Weigand <ulrich.weigand@linaro.org>
9180
9181 * linux-arm-low.c (arm_linux_hw_point_initialize): Distinguish
9182 between unsupported TYPE and unimplementable ADDR/LEN combination.
9183 (arm_insert_point): Act on new return value.
9184
9185 2012-07-31 Pedro Alves <palves@redhat.com>
9186
9187 * server.c (process_point_options): Only skip tokens if we find
9188 one that is unrecognized. Don't treat 'X' specially while
9189 skipping unrecognized tokens.
9190
9191 2012-07-30 Ulrich Weigand <ulrich.weigand@linaro.org>
9192
9193 * linux-arm-low.c (arm_linux_hw_point_initialize): Do not attempt
9194 to 4-byte-align HW breakpoint addresses for Thumb.
9195
9196 2012-07-27 Yao Qi <yao@codesourcery.com>
9197
9198 PR remote/14161.
9199
9200 * server.h: Declare gdb_agent_about_to_close.
9201 * target.c (kill_inferior): Include "agent.h".
9202 New. Send command 'kill'.
9203 * target.h (kill_inferior): Removed macro.
9204 * tracepoint.c (gdb_agent_about_to_close): New.
9205 (gdb_agent_helper_thread): Handle command 'close'.
9206 Wait endlessly until the inferior stops.
9207 Install gdb_agent_remove_socket to atexit hook.
9208 (agent_socket_name): New static variable.
9209 (gdb_agent_socket_init): Replace local variable 'name' with
9210 'agent_socket_name'.
9211 (gdb_agent_remove_socket): New.
9212
9213 2012-07-27 Yao Qi <yao@codesourcery.com>
9214
9215 * server.c (process_point_options): Stop at 'X' when parsing.
9216
9217 2012-07-19 Michael Eager <eager@eagercon.com>
9218
9219 * i386-low.c (Z_packet_to_hw_type): Add Z_PACKET_HW_BP, translate
9220 to hw_execute.
9221 * linux-x86-low.c (x86_insert_point, x86_remove_point):
9222 Call i386_low_insert_watchpoint, i386_low_remove_watchpoint to add/del
9223 hardware breakpoint.
9224
9225 2012-07-07 Jan Kratochvil <jan.kratochvil@redhat.com>
9226
9227 * gdbserver/linux-low.c (initialize_low): Call
9228 linux_ptrace_init_warnings.
9229
9230 2012-07-02 Doug Evans <dje@google.com>
9231
9232 * mem-break.c (gdb_no_commands_at_breakpoint): Fix cast from
9233 pointer to int.
9234
9235 2012-07-02 Stan Shebs <stan@codesourcery.com>
9236
9237 * Makefile.in (WARN_CFLAGS_NO_FORMAT): Define.
9238 (ax.o): Add it to build rule.
9239 (ax-ipa.o): Ditto.
9240 (OBS): Add format.o.
9241 (IPA_OBS): Add format.o.
9242 * server.c (handle_query): Claim support for breakpoint commands.
9243 (process_point_options): Add command case.
9244 (process_serial_event): Leave running if there are printfs in
9245 effect.
9246 * mem-break.h (any_persistent_commands): Declare.
9247 (add_breakpoint_commands): Declare.
9248 (gdb_no_commands_at_breakpoint): Declare.
9249 (run_breakpoint_commands): Declare.
9250 * mem-break.c (struct point_command_list): New struct.
9251 (struct breakpoint): New field command_list.
9252 (any_persistent_commands): New function.
9253 (add_commands_to_breakpoint): New function.
9254 (add_breakpoint_commands): New function.
9255 (gdb_no_commands_at_breakpoint): New function.
9256 (run_breakpoint_commands): New function.
9257 * linux-low.c (linux_wait_1): Test for and run breakpoint commands
9258 locally.
9259 * ax.c: Include format.h.
9260 (ax_printf): New function.
9261 (gdb_eval_agent_expr): Add printf opcode.
9262
9263 2012-06-13 Yao Qi <yao@codesourcery.com>
9264
9265 * server.c (start_inferior): Remove duplicated writes to fields
9266 'last_resume_kind' and 'last_status' of 'current_inferior'.
9267
9268 2012-06-12 Yao Qi <yao@codesourcery.com>
9269 Pedro Alves <palves@redhat.com>
9270
9271 * linux-low.c (linux_set_resume_request): Simplify predicate. Add
9272 comment.
9273 * server.c (handle_v_cont): Extend comment.
9274
9275 2012-06-11 Yao Qi <yao@codesourcery.com>
9276
9277 * linux-low.c (linux_attach): Add 'static'.
9278
9279 2012-06-06 Yao Qi <yao@codesourcery.com>
9280
9281 * ax.c (gdb_eval_agent_expr): Print `top' in hex.
9282
9283 2012-06-01 Jan Kratochvil <jan.kratochvil@redhat.com>
9284
9285 Fix gcc -flto compilation warning.
9286 * server.c (main): Make variable multi_mode and attach volatile.
9287
9288 2012-05-30 Thiago Jung Bauermann <thiago.bauermann@linaro.org>
9289
9290 * linux-low.c (get_r_debug): Disable code using DT_MIPS_RLD_MAP
9291 if the platform doesn't know about it.
9292
9293 2012-05-30 Jeff Kenton <jkenton@tilera.com>
9294
9295 * Makefile.in (SFILES): Add linux-tile-low.c.
9296 (linux-tile-low.o, reg-tilegx.o, reg-tilegx.c): New rules.
9297 * configure.srv: Handle tilegx-*-linux*.
9298 * linux-tile-low.c: New file.
9299
9300 2012-05-28 Jan Kratochvil <jan.kratochvil@redhat.com>
9301
9302 * linux-low.c (linux_qxfer_libraries_svr4): Return -1 if R_DEBUG is -1.
9303
9304 2012-05-24 Pedro Alves <palves@redhat.com>
9305
9306 PR gdb/7205
9307
9308 Replace TARGET_SIGNAL_ with GDB_SIGNAL_ throughout.
9309
9310 2012-05-24 Pedro Alves <palves@redhat.com>
9311
9312 PR gdb/7205
9313
9314 Replace target_signal with gdb_signal throughout.
9315
9316 2012-05-22 Maciej W. Rozycki <macro@codesourcery.com>
9317
9318 * linux-low.c (linux_store_registers): Avoid the copying sequence
9319 when no data has been retrieved by ptrace.
9320
9321 2012-05-22 Will Deacon <will.deacon@arm.com>
9322
9323 * linux-low (__UCLIBC__ && !(__UCLIBC_HAS_MMU__ || __ARCH_HAS_MMU__)):
9324 Include asm/ptrace.h.
9325 (PT_TEXT_ADDR, PT_DATA_ADDR, PT_TEXT_END_ADDR): Define only if not
9326 already defined.
9327
9328 2012-05-21 Maciej W. Rozycki <macro@codesourcery.com>
9329
9330 * linux-low.c (linux_store_registers): Don't re-retrieve data
9331 with ptrace that has already been obtained from /proc. Always
9332 copy any data retrieved with ptrace to the buffer supplied.
9333
9334 2012-05-11 Yao Qi <yao@codesourcery.com>
9335 Pedro Alves <palves@redhat.com>
9336
9337 * linux-low.c (enum stopping_threads_kind): New.
9338 (stopping_threads): Change type to `enum stopping_threads_kind'.
9339 (handle_extended_wait): If stopping and suspending threads, leave
9340 the new_lwp suspended too.
9341 (linux_wait_for_event): Adjust.
9342 (stop_all_lwps): Set `stopping_threads' to
9343 STOPPING_AND_SUSPENDING_THREADS or STOPPING_THREADS depending on
9344 whether we're suspending threads or just stopping them. Assert no
9345 recursion happens.
9346
9347 2012-04-29 Yao Qi <yao@codesourcery.com>
9348
9349 * server.h: Move some code to ...
9350 * gdbthread.h: ... here. New.
9351 * Makefile.in (inferiors.o, regcache.o): Depends on gdbthread.h
9352 (remote-utils.o, server.o, target.o tracepoint.o): Likewise.
9353 (nto-low.o, win32-low.o): Likewise.
9354 * inferiors.c, linux-low.h, nto-low.c: Include gdbthread.h.
9355 * regcache.c, remote-utils.c, server.c: Likewise.
9356 * target.c, tracepoint.c, win32-low.c: Likewise.
9357
9358 2012-04-24 Thiago Jung Bauermann <thiago.bauermann@linaro.org>
9359
9360 * linux-low.h (PTRACE_ARG3_TYPE): Move macro from linux-low.c.
9361 (PTRACE_ARG4_TYPE): Likewise.
9362 (PTRACE_XFER_TYPE): Likewise.
9363 * linux-arm-low.c (arm_prepare_to_resume): Cast third argument of
9364 ptrace to PTRACE_ARG3_TYPE.
9365 * linux-low.c (PTRACE_ARG3_TYPE): Move macro to linux-low.h.
9366 (PTRACE_ARG4_TYPE): Likewise.
9367 (PTRACE_XFER_TYPE): Likewise.
9368 (linux_detach_one_lwp): Cast fourth argument of
9369 ptrace to long then PTRACE_ARG4_TYPE.
9370 (regsets_fetch_inferior_registers): Cast third argument of
9371 ptrace to long then PTRACE_ARG3_TYPE.
9372 (regsets_store_inferior_registers): Likewise.
9373
9374 2012-04-20 Pedro Alves <palves@redhat.com>
9375
9376 * configure: Regenerate.
9377
9378 2012-04-19 Pedro Alves <palves@redhat.com>
9379
9380 * Makefile.in (GNULIB_BUILDDIR): New.
9381 (LIBGNU, INCGNU, GNULIB_H): Adjust.
9382 (SUBDIRS, CLEANDIRS, REQUIRED_SUBDIRS): New.
9383 (all, install-only, uninstall, clean-info, all-lib, clean): No
9384 longer pass GNULIB_FLAGS_TO_PASS. Use subdir_do.
9385 (maintainer-clean realclean distclean): Use subdir_do.
9386 (subdir_do): New.
9387 (gnulib/import/Makefile): Adjust. Replace gnulib/import with
9388 $(GNULIB_BUILDDIR). Don't pass argument to config.status.
9389 * acinclude.m4: Include acx_configure_dir.m4.
9390 * configure.ac: Remove gl_EARLY, gl_INIT, and AM_INIT_AUTOMAKE
9391 calls. Call AC_PROG_RANLIB. Configure gnulib using
9392 ACX_CONFIGURE_DIR.
9393 (GNULIB): New.
9394 (GNULIB_STDINT_H): Adjust.
9395 (AC_OUTPUT): Don't output gnulib/Makefile anymore.
9396 * gdbreplay.c: Include build-gnulib/config.h.
9397 * server.h: Likewise.
9398 * aclocal.m4: Regenerate.
9399 * config.in: Regenerate.
9400 * configure: Regenerate.
9401
9402 2012-04-19 Pedro Alves <palves@redhat.com>
9403
9404 * Makefile.in (LIBGNU, INCGNU): Adjust.
9405 (GNULIB_FLAGS_TO_PASS, GNULIB_H): Adjust.
9406 (all, install-only, uninstall, clean-info, all-lib, clean)
9407 (maintainer-clean, Makefile, gnulib/Makefile): Adjust.
9408 * configure.ac: Adjust AC_OUTPUT output.
9409 * aclocal.m4: Regenerate.
9410 * configure: Regenerate.
9411
9412 2012-04-19 Pedro Alves <palves@redhat.com>
9413
9414 * Makefile.in (generated_files): New.
9415 (server_h): Remove the explicit dependency on config.h, and depend
9416 on $generated_files.
9417
9418 2012-04-19 Pedro Alves <palves@redhat.com>
9419
9420 * Makefile.in (INCGNU): Add -Ignulib.
9421
9422 2012-04-19 Pedro Alves <palves@redhat.com>
9423
9424 * Makefile.in (GNULIB_INCLUDE_DIR): Rename to ...
9425 (INCGNU): ... this, and spell out -I here.
9426 (GNULIB_LIB): Rename to ...
9427 (LIBGNU): ... this.
9428 (INCLUDE_CFLAGS, gdbserver$(EXEEXT), $(GNULIB_LIB) rule): Adjust.
9429
9430 2012-04-19 Pedro Alves <palves@redhat.com>
9431
9432 * config.in: Regenerate.
9433
9434 2012-04-19 Pedro Alves <palves@redhat.com>
9435
9436 * configure.ac: Remove AC_CHECK_DECLS check for memmem.
9437 * server.h (memmem): Remove declaration.
9438 * config.in: Regenerate.
9439 * configure: Regenerate.
9440
9441 2012-04-19 Yao Qi <yao@codesourcery.com>
9442
9443 * Makefile.in (SFILES): Add common/vec.c.
9444 (OBS): Add vec.o.
9445 (vec.o): New rule.
9446
9447 2012-04-19 Yao Qi <yao@codesourcery.com>
9448
9449 * remote-utils.c (prepare_resume_reply): Replace with macro
9450 target_core_of_thread.
9451 * server.c (handle_qxfer_threads_proper): Likewise.
9452 * target.h (traget_core_of_thread): New macro.
9453
9454 2012-04-18 Pedro Alves <palves@redhat.com>
9455
9456 * aclocal.m4: Regenerate.
9457 * configure: Regenerate.
9458
9459 2012-04-16 Yao Qi <yao@codesourcery.com>
9460
9461 * tracepoint.c (cmd_qtstart): Download tracepoints even when they are
9462 duplicated on address.
9463
9464 2012-04-16 Yao Qi <yao@codesourcery.com>
9465
9466 * tracepoint.c (COPY_FIELD_TO_BUF): New macro.
9467 (struct tracepoint_action_ops) <send>: New field.
9468 (m_tracepoint_action_send, r_tracepoint_action_send): New.
9469 (agent_expr_send, x_tracepoint_action_send): New.
9470 (l_tracepoint_action_send): New.
9471 (cmd_qtdp): Download and install tracepoint
9472 according to `use_agent'.
9473 (run_inferior_command): Add one more parameter `len'.
9474 Update callers.
9475 (tracepoint_send_agent): New.
9476 (cmd_qtdp, cmd_qtstart): Call tracepoint_send_agent.
9477
9478 2012-04-16 Yao Qi <yao@codesourcery.com>
9479
9480 * tracepoint.c (download_tracepoints): Moved to ...
9481 (cmd_qtstart): ... here.
9482
9483 2012-04-14 Yao Qi <yao@codesourcery.com>
9484
9485 * tracepoint.c: Include inttypes.h.
9486 (struct collect_memory_action): Use sized types.
9487 (struct tracepoint): Likewise.
9488 (cmd_qtdp, stop_tracing): Update print specifiers.
9489 (cmd_qtp, response_tracepoint): Likewise.
9490 (collect_data_at_tracepoint): Likewise.
9491 (collect_data_at_step): Likewise.
9492
9493 2012-04-14 Yao Qi <yao@codesourcery.com>
9494
9495 Import gnulib module inttypes.
9496 * aclocal.m4, config.in, configure: Regenerated.
9497
9498 2012-04-14 Yao Qi <yao@codesourcery.com>
9499
9500 * Makefile.in (maintainer-clean, realclean, distclean): Remove
9501 Makefile and config.status at last.
9502
9503 2012-04-13 Yao Qi <yao@codesourcery.com>
9504
9505 * tracepoint.c: Include stdint.h unconditionally.
9506
9507 2012-04-13 Thiago Jung Bauermann <thiago.bauermann@linaro.org>
9508
9509 * acinclude.m4 (GDBSERVER_HAVE_THREAD_DB_TYPE): New macro based
9510 on BFD_HAVE_SYS_PROCFS_TYPE.
9511 * configure.ac: Look for lwpid_t and psaddr_t in libthread_db.h.
9512 * configure: Regenerate.
9513 * config.in: Likewise.
9514
9515 2012-04-13 H.J. Lu <hongjiu.lu@intel.com>
9516
9517 * Makefile.in (clean): Also remove x32.c x32-linux.c
9518 x32-avx.c x32-avx-linux.c.
9519 (x32.o): New target.
9520 (x32.c): Likewise.
9521 (x32-linux.o): Likewise.
9522 (x32-linux.c): Likewise.
9523 (x32-avx.o): Likewise.
9524 (x32-avx.c): Likewise.
9525 (x32-avx-linux.o): Likewise.
9526 (x32-avx-linux.c): Likewise.
9527
9528 * configure.srv (srv_amd64_regobj): Add x32.o x32-avx.o.
9529 (srv_amd64_linux_regobj): Add x32-linux.o x32-avx-linux.o.
9530 (srv_i386_64bit_xmlfiles): Add i386/x32-core.xml.
9531 (srv_amd64_xmlfiles): Add i386/x32.xml i386/x32-avx.xml.
9532 (srv_amd64_linux_xmlfiles): Add i386/x32-linux.xml
9533 i386/x32-avx-linux.xml.
9534
9535 * linux-x86-low.c (init_registers_x32_linux): New prototype.
9536 (init_registers_x32_avx_linux): Likwise.
9537 (x86_linux_update_xmltarget): Call init_registers_x32_linux
9538 or init_registers_x32_avx_linux if linux_is_elf64 is false.
9539
9540 2012-04-13 Pedro Alves <palves@redhat.com>
9541
9542 * Makefile.in (GNULIB_FLAGS_TO_PASS): New.
9543 (FLAGS_TO_PASS): Don't change or set $top_srcdir, $srcdir and VPATH.
9544 (all, uninstall, clean-info, all-lib, clean, maintainer-clean)
9545 (realclean, distclean): Explicitly pass $GNULIB_FLAGS_TO_PASS to
9546 the sub-make.
9547
9548 2012-04-12 H.J. Lu <hongjiu.lu@intel.com>
9549
9550 * linux-x86-low.c (compat_x32_clock_t): New.
9551 (compat_x32_siginfo_t): Likewise.
9552 (compat_x32_siginfo_from_siginfo): Likewise.
9553 (siginfo_from_compat_x32_siginfo): Likewise.
9554 (linux_is_elf64): Likewise.
9555 (x86_siginfo_fixup): Call compat_x32_siginfo_from_siginfo
9556 and siginfo_from_compat_x32_siginfo for x32.
9557 (x86_arch_setup): Set linux_is_elf64.
9558
9559 2012-04-12 H.J. Lu <hongjiu.lu@intel.com>
9560
9561 PR gdb/13969
9562 * linux-low.c (linux_pid_exe_is_elf_64_file): Also return the
9563 e_machine field.
9564 (linux_qxfer_libraries_svr4): Update call to elf_64_file_p.
9565 * linux-low.h (linux_pid_exe_is_elf_64_file): Updated.
9566 * linux-x86-low.c (x86_arch_setup): Check if GDBserver is
9567 compatible with process.
9568
9569 2012-04-12 Yao Qi <yao@codesourcery.com>
9570
9571 * Makefile.in: Define abs_top_srcdir and abs_srcdir.
9572 (INCLUDE_CFLAGS): Append GNULIB_INCLUDE_DIR.
9573 (install-only, install-info, clean): Handle sub dir gnulib.
9574 (all-lib, am--refresh): New targets.
9575 (memmem.o): Remove target.
9576 * configure.ac: Remove AC_CONFIG_LIBOBJ_DIR.
9577 Invoke gl_EARLY. Invoke AC_CHECK_PROGS for make.
9578 (AC_REPLACE_FUNCS): Remove memmem.
9579 Invoke gl_INIT and AM_INIT_AUTOMAKE.
9580 (AC_OUTPUT): Generate Makefile in gnulib/.
9581 * aclocal.m4, config.in, configure: Regenerated.
9582
9583 2012-04-10 Maciej W. Rozycki <macro@codesourcery.com>
9584
9585 * linux-low.c (get_r_debug): Handle DT_MIPS_RLD_MAP.
9586
9587 2012-04-05 Pedro Alves <palves@redhat.com>
9588
9589 -Werror=strict-aliasing
9590
9591 * spu-low.c (parse_spufs_run): Avoid dereferencing type-punned
9592 pointer.
9593
9594 2012-04-04 Pedro Alves <palves@redhat.com>
9595
9596 * linux-sparc-low.c (sparc_fill_gregset_to_stack)
9597 (sparc_store_gregset_from_stack, sparc_store_gregset)
9598 (sparc_breakpoint_at): Fix formatting.
9599
9600 2012-03-30 Thiago Jung Bauermann <thiago.bauermann@linaro.org>
9601
9602 * configure.ac: Check whether Elf32_auxv_t and Elf64_auxv_t
9603 are available.
9604 * linux-low.c [HAVE_ELF32_AUXV_T] (Elf32_auxv_t): Add typedef.
9605 [HAVE_ELF64_AUXV_T] (Elf64_auxv_t): Likewise.
9606 * config.in: Regenerate.
9607 * configure: Likewise.
9608
9609 2012-03-29 Pedro Alves <palves@redhat.com>
9610
9611 * linux-low.c (regsets_store_inferior_registers) [__sparc__]:
9612 Correct ptrace arguments.
9613
9614 2012-03-28 Pedro Alves <palves@redhat.com>
9615
9616 * linux-ia64-low.c (ia64_regmap): Map IA64_EC_REGNUM to PT_AR_EC.
9617 (IA64_GR0_REGNUM, IA64_FR0_REGNUM)
9618 (IA64_FR1_REGNUM): New defines.
9619 (ia64_fetch_register): New.
9620 (the_low_target): Install it.
9621 * linux-low.h (struct linux_target_ops) <fetch_register>: New
9622 field.
9623 * linux-low.c (linux_fetch_registers): Try the
9624 the_low_target.fetch_register hook first.
9625
9626 * linux-arm-low.c (the_low_target): Adjust.
9627 * linux-bfin-low.c (the_low_target): Adjust.
9628 * linux-cris-low.c (the_low_target): Adjust.
9629 * linux-crisv32-low.c (the_low_target): Adjust.
9630 * linux-m32r-low.c (the_low_target): Adjust.
9631 * linux-m68k-low.c (the_low_target): Adjust.
9632 * linux-mips-low.c (the_low_target): Adjust.
9633 * linux-ppc-low.c (the_low_target): Adjust.
9634 * linux-s390-low.c (the_low_target): Adjust.
9635 * linux-sh-low.c (the_low_target): Adjust.
9636 * linux-sparc-low.c (the_low_target): Adjust.
9637 * linux-tic6x-low.c (the_low_target): Adjust.
9638 * linux-x86-low.c (the_low_target): Adjust.
9639 * linux-xtensa-low.c (the_low_target): Adjust.
9640
9641 2012-03-26 Pedro Alves <palves@redhat.com>
9642
9643 * server.c (handle_qxfer_libraries): Don't bail early if
9644 the_target->qxfer_libraries_svr4 is not NULL.
9645
9646 2012-03-26 Pedro Alves <palves@redhat.com>
9647
9648 * linux-low.c (linux_qxfer_libraries_svr4): Fix pasto in comment.
9649
9650 2012-03-23 Pedro Alves <palves@redhat.com>
9651
9652 * linux-low.c (linux_qxfer_libraries_svr4): Terminate the
9653 "library-list-svr4" element's start tag when the the DSO list is
9654 empty.
9655
9656 2012-03-23 Pedro Alves <palves@redhat.com>
9657
9658 * linux-low.c (read_one_ptr): Read the inferior's pointer through
9659 a variable whose type size is the same as the inferior's pointer
9660 size.
9661
9662 2012-03-21 Thomas Schwinge <thomas@codesourcery.com>
9663
9664 * linux-arm-low.c (arm_stopped_by_watchpoint): Use siginfo_t instead of
9665 struct siginfo.
9666 * linux-low.c (siginfo_fixup, linux_xfer_siginfo): Likewise.
9667 * linux-x86-low.c (x86_siginfo_fixup): Likewise.
9668 * linux-low.h: Include <signal.h>.
9669 (struct siginfo): Remove forward declaration.
9670 (struct linux_target_ops) <siginfo_fixup>: Use siginfo_t instead of
9671 struct siginfo.
9672
9673 2012-03-21 Mike Frysinger <vapier@gentoo.org>
9674
9675 * .gitignore: Ignore more files.
9676
9677 2012-03-19 Pedro Alves <palves@redhat.com>
9678 Jan Kratochvil <jan.kratochvil@redhat.com>
9679
9680 * server.c (cont_thread, general_thread): Add describing comments.
9681 (start_inferior): Clear `cont_thread'.
9682 (handle_v_cont): Don't set `cont_thread' if resuming all threads
9683 of a process.
9684
9685 2012-03-15 Yao Qi <yao@codesourcery.com>
9686
9687 * tracepoint.c (install_tracepoint): Move duplicated tracepoint
9688 handling to ...
9689 (cmd_qtdp): ... here.
9690
9691 2012-03-15 Yao Qi <yao@codesourcery.com>
9692
9693 * tracepoint.c (struct tracepoint_action_ops): New.
9694 (struct tracepoint_action) [!IN_PROCESS_AGENT] <ops>: New field.
9695 (m_tracepoint_action_download): New.
9696 (r_tracepoint_action_download): New.
9697 (x_tracepoint_action_download): New.
9698 (l_tracepoint_action_download): New.
9699 (add_tracepoint_action): Install `action->ops' according type.
9700 (download_tracepoint_1): Move code `download' function pointer
9701 of various tracepoint_action_ops.
9702
9703 2012-03-13 Jan Kratochvil <jan.kratochvil@redhat.com>
9704
9705 * linux-low.c (linux_attach_lwp_1): New variable buffer. Call
9706 linux_ptrace_attach_warnings.
9707
9708 2012-03-13 Jan Kratochvil <jan.kratochvil@redhat.com>
9709
9710 * Makefile.in (linux-ptrace.o): New.
9711 * configure.srv (arm*-*-linux*, bfin-*-*linux*, crisv32-*-linux*)
9712 (cris-*-linux*, i[34567]86-*-linux*, ia64-*-linux*, m32r*-*-linux*)
9713 (m68*-*-linux*, m68*-*-uclinux*, mips*-*-linux*, powerpc*-*-linux*)
9714 (s390*-*-linux*, sh*-*-linux*, sparc*-*-linux*, tic6x-*-uclinux)
9715 (x86_64-*-linux*, xtensa*-*-linux*): Add linux-ptrace.o to SRV_TGTOBJ
9716 of these targets.
9717 * linux-low.c (linux_attach_lwp_1): Remove redundent else clause.
9718
9719 2012-03-08 Yao Qi <yao@codesourcery.com>
9720 Pedro Alves <palves@redhat.com>
9721
9722 Fix PR server/13392.
9723 * linux-x86-low.c (amd64_install_fast_tracepoint_jump_pad): Check
9724 offset of JMP insn.
9725 * tracepoint.c (remove_tracepoint): New.
9726 (cmd_qtdp): Call remove_tracepoint when failed to install.
9727
9728 2012-03-07 Pedro Alves <palves@redhat.com>
9729
9730 * linux-low.c (get_detach_signal): New.
9731 (linux_detach_one_lwp): Get rid of a pending SIGSTOP with SIGCONT.
9732 Pass on pending signals to PTRACE_DETACH. Check the result of the
9733 ptrace call.
9734 * server.c (program_signals, program_signals_p): New.
9735 (handle_general_set): Handle QProgramSignals.
9736 * server.h (program_signals, program_signals_p): Declare.
9737
9738 2012-03-05 Pedro Alves <palves@redhat.com>
9739 Jan Kratochvil <jan.kratochvil@redhat.com>
9740
9741 * linux-low.c (get_dynamic): Don't warn when PT_PHDR isn't found.
9742 New comment why.
9743
9744 2012-03-03 Yao Qi <yao@codesourcery.com>
9745
9746 * tracepoint.c (tracepoint_look_up_symbols): Update call to
9747 agent_look_up_symbols.
9748
9749 2012-03-03 Yao Qi <yao@codesourcery.com>
9750
9751 * Makefile.in (linux-low.o): Keep dependence on agent.h.
9752 (linux-x86-low.o): Likewise.
9753 * server.h: Remove in_process_agent_loaded.
9754 * tracepoint.c (in_process_agent_loaded): Removed. Moved it
9755 common/agent.c.
9756 Update callers.
9757
9758 2012-03-03 Yao Qi <yao@codesourcery.com>
9759
9760 * tracepoint.c (gdb_agent_capability): New global.
9761 (in_process_agent_loaded_ust): Renamed to
9762 `in_process_agent_supports_ust'.
9763 Update callers.
9764 (in_process_agent_supports_ust): Call agent_capability_check.
9765 (clear_installed_tracepoints): Assert that agent supports
9766 agent.
9767
9768 2012-03-03 Yao Qi <yao@codesourcery.com>
9769
9770 * linux-low.c (linux_supports_agent): New.
9771 (linux_target_ops): Initialize field `supports_agent' with
9772 linux_supports_agent.
9773 * target.h (struct target_ops) <supports_agent>: New.
9774 (target_supports_agent): New macro.
9775 * server.c (handle_general_set): Handle packet 'QAgent'.
9776 (handle_query): Send `QAgent+'.
9777 * Makefile.in (server.o): Depends on agent.h.
9778
9779 2012-03-03 Yao Qi <yao@codesourcery.com>
9780
9781 * Makefile.in (OBS): Add agent.o.
9782 Add new rule for agent.o.
9783 Track dependence of tracepoint.c on agent.h.
9784 * tracepoint.c (run_inferior_command_1):
9785 (run_inferior_command): Call agent_run_command.
9786 (gdb_ust_connect_sync_socket): Deleted. Move it to
9787 common/agent.c.
9788 (resume_thread, stop_thread): Likewise.
9789 (gdb_ust_socket_init): Renamed to ...
9790 (gdb_agent_socket_init): ... New.
9791 (gdb_ust_thread): Renamed to ...
9792 (gdb_agent_helper_thread): ... New.
9793 (gdb_ust_init): Move some code to ...
9794 (gdb_agent_init): ... here. New.
9795 [HAVE_UST]: Call gdb_ust_init.
9796 (initialize_tracepoint_ftlib): Call gdb_agent_init.
9797 * configure.ac: Add `sys/un.h' to AC_CHECK_HEADERS.
9798 * config.in, configure: Regenerated.
9799
9800 2012-03-02 Pedro Alves <palves@redhat.com>
9801
9802 * inferiors.c (add_pid_to_list, pull_pid_from_list): Delete.
9803 * linux-low.c (struct simple_pid_list): New.
9804 (stopped_pids): New a struct simple_pid_list pointer.
9805 (add_to_pid_list, pull_pid_from_list): New.
9806 (handle_extended_wait): Don't assume the first signal new children
9807 report is SIGSTOP. Adjust call to pull_pid_from_list.
9808 (linux_wait_for_lwp): Adjust.
9809
9810 2012-03-02 Yao Qi <yao@codesourcery.com>
9811
9812 * tracepoint.c (do_action_at_tracepoint): Write `stop_pc' in
9813 debug log.
9814
9815 2012-03-02 Yao Qi <yao@codesourcery.com>
9816
9817 * tracepoint.c (collect_ust_data_at_tracepoint): Remove parameters
9818 `stop_pc' and `tpoint'. Update caller.
9819
9820 2012-03-01 Maciej W. Rozycki <macro@codesourcery.com>
9821
9822 * linux-low.h (linux_target_ops): Add regset_bitmap member.
9823 * linux-low.c (use_linux_regsets): New macro.
9824 [!HAVE_LINUX_REGSETS] (regsets_fetch_inferior_registers): Likewise.
9825 [!HAVE_LINUX_REGSETS] (regsets_store_inferior_registers): Likewise.
9826 (linux_register_in_regsets): New function.
9827 (usr_fetch_inferior_registers): Skip registers covered by
9828 regsets.
9829 (usr_store_inferior_registers): Likewise.
9830 (usr_fetch_inferior_registers): New macro.
9831 (usr_store_inferior_registers): Likewise.
9832 (linux_fetch_registers): Handle mixed regset/non-regset targets.
9833 (linux_store_registers): Likewise.
9834 * linux-mips-low.c (init_registers_mips_dsp_linux): New
9835 prototype.
9836 (init_registers_mips64_dsp_linux): Likewise.
9837 (init_registers_mips_linux): New macro.
9838 (init_registers_mips_dsp_linux): Likewise.
9839 (mips_dsp_num_regs): Likewise.
9840 (DSP_BASE, DSP_CONTROL): New fallback macros.
9841 (mips_base_regs): New macro.
9842 (mips_regmap): Use it. Fix the size.
9843 (mips_dsp_regmap): New variable.
9844 (mips_dsp_regset_bitmap): Likewise.
9845 (mips_arch_setup): New function.
9846 (mips_cannot_fetch_register): Use the_low_target.regmap rather
9847 than mips_regmap.
9848 (mips_cannot_store_register): Likewise.
9849 (the_low_target): Update .arch_setup, .num_regs and .regmap
9850 initializers. Add .regset_bitmap initializer.
9851 * linux-arm-low.c (the_low_target): Add .regset_bitmap
9852 initializer.
9853 * linux-bfin-low.c (the_low_target): Likewise.
9854 * linux-cris-low.c (the_low_target): Likewise.
9855 * linux-crisv32-low.c (the_low_target): Likewise.
9856 * linux-ia64-low.c (the_low_target): Likewise.
9857 * linux-m32r-low.c (the_low_target): Likewise.
9858 * linux-m68k-low.c (the_low_target): Likewise.
9859 * linux-ppc-low.c (the_low_target): Likewise.
9860 * linux-s390-low.c (the_low_target): Likewise.
9861 * linux-sh-low.c (the_low_target): Likewise.
9862 * linux-sparc-low.c (the_low_target): Likewise.
9863 * linux-tic6x-low.c (the_low_target): Likewise.
9864 * linux-x86-low.c (the_low_target): Likewise.
9865 * linux-xtensa-low.c (the_low_target): Likewise.
9866 * configure.srv <mips*-*-linux*>: Add mips-dsp-linux.o and
9867 mips64-dsp-linux.o to srv_regobj. Add mips-dsp-linux.xml,
9868 mips64-dsp-linux.xml, mips-dsp.xml and mips64-dsp.xml to
9869 srv_xmlfiles.
9870 * Makefile.in (mips-dsp-linux.o, mips-dsp-linux.c): New targets.
9871 (mips64-dsp-linux.o, mips64-dsp-linux.c): Likewise.
9872
9873 2012-02-29 Yao Qi <yao@codesourcery.com>
9874 Pedro Alves <palves@redhat.com>
9875
9876 * linux-low.c: (linux_wait_1): Call unsuspend_all_lwps when
9877 `step_over_finished' is true.
9878
9879 2012-02-27 Pedro Alves <palves@redhat.com>
9880
9881 * linux-low.c (pid_is_stopped): Delete, moved to common/.
9882 (linux_attach_lwp_1): Adjust to use linux_proc_pid_is_stopped.
9883
9884 2012-02-27 Pedro Alves <palves@redhat.com>
9885
9886 PR server/9684
9887 * linux-low.c (pid_is_stopped): New.
9888 (linux_attach_lwp_1): Handle attaching to 'T (stopped)' processes.
9889
9890 2012-02-25 Luis Machado <lgustavo@codesourcery.com>
9891
9892 * mem-break.c (clear_gdb_breakpoint_conditions): Fix de-allocation
9893 of conditions.
9894
9895 2012-02-24 Maciej W. Rozycki <macro@codesourcery.com>
9896
9897 * linux-mips-low.c (mips_regmap): Correct the index of $f9.
9898
9899 2012-02-24 Luis Machado <lgustavo@codesourcery>
9900
9901 * server.c (handle_query): Advertise support for target-side
9902 breakpoint condition evaluation.
9903 (process_point_options): New function.
9904 (process_serial_event): When inserting a breakpoint, check for
9905 a target-side condition that should be evaluated.
9906
9907 * mem-break.c: Include regcache.h and ax.h.
9908 (point_cond_list_t): New data structure.
9909 (breakpoint) <cond_list>: New field.
9910 (find_gdb_breakpoint_at): Make non-static.
9911 (delete_gdb_breakpoint_at): Clear any target-side
9912 conditions.
9913 (clear_gdb_breakpoint_conditions): New function.
9914 (add_condition_to_breakpoint): Likewise.
9915 (add_breakpoint_condition): Likewise.
9916 (gdb_condition_true_at_breakpoint): Likewise.
9917 (gdb_breakpoint_here): Return result directly instead
9918 of going through a local variable.
9919
9920 * mem-break.h (find_gdb_breakpoint_at): New prototype.
9921 (clear_gdb_breakpoint_conditions): Likewise.
9922 (add_breakpoint_condition): Likewise.
9923 (gdb_condition_true_at_breakpoint): Likewise.
9924
9925 * linux-low.c (linux_wait_1): Evaluate target-side breakpoint condition.
9926 (need_step_over_p): Take target-side breakpoint condition into
9927 consideration.
9928
9929 2012-02-24 Luis Machado <lgustavo@codesourcery>
9930
9931 * server.h: Include tracepoint.h.
9932 (agent_mem_read, agent_get_trace_state_variable_value,
9933 agent_set_trace_state_variable_value,
9934 agent_tsv_read, agent_mem_read_string, get_get_tsv_func_addr,
9935 get_set_tsv_func_addr): New prototypes.
9936
9937 * ax.h: New include file.
9938 * ax.c: New source file.
9939
9940 * tracepoint.c: Include ax.h.
9941 (gdb_agent_op, gdb_agent_op_names, gdb_agent_op_sizes,
9942 agent_expr, eval_result_type): Move to ax.h.
9943 (parse_agent_expr): Rename to ...
9944 (gdb_parse_agent_expr): ... this, make it non-static and move
9945 to ax.h.
9946 (unparse_agent_expr) Rename to ...
9947 (gdb_unparse_agent_expr): ... this, make it non-static and move
9948 to ax.h.
9949 (eval_agent_expr): Rename to ...
9950 (eval_tracepoint_agent_expr): ... this.
9951 (agent_mem_read, agent_mem_read_string, agent_tsv_read): Remove
9952 forward declarations.
9953 (add_tracepoint_action): Call gdb_parse_agent_expr (...).
9954 (agent_get_trace_state_variable_value): New function.
9955 (agent_set_trace_state_variable_value): New function.
9956 (cmd_qtdp): Call gdb_parse_agent_expr (...).
9957 (response_tracepoint): Call gdb_unparse_agent_expr (...).
9958 (do_action_at_tracepoint): Call eval_tracepoint_agent_expr (...).
9959 (condition_true_at_tracepoint): Likewise.
9960 (parse_agent_expr): Rename to ...
9961 (gdb_parse_agent_expr): ... this and move to ax.c.
9962 (unparse_agent_expr): Rename to ...
9963 (gdb_unparse_agent_expr): ... this and move to ax.c.
9964 (gdb_agent_op_name): Move to ax.c.
9965 (eval_agent_expr): Rename to ...
9966 (gdb_eval_agent_expr): ... this, use regcache passed as parameter
9967 and move to ax.c.
9968 (eval_tracepoint_agent_expr): New function.
9969 (agent_mem_read, agent_mem_read_string, agent_tsv_read): Make
9970 non-static.
9971 (current_insn_ptr, emit_error, struct bytecode_address): Move to
9972 ax.c.
9973 (emit_prologue, emit_epilogue, emit_add, emit_sub, emit_mul, emit_lsh,
9974 emit_rsh_signed, emit_rsh_unsigned, emit_ext, emit_log_not,
9975 emit_bit_and, emit_bit_or, emit_bit_xor, emit_bit_not, emit_equal,
9976 emit_less_signed, emit_less_unsigned, emit_ref, emit_if_goto,
9977 emit_goto, write_goto_address, emit_const, emit_reg, emit_pop,
9978 emit_stack, emit_zero_ext, emit_swap, emit_stack_adjust,
9979 emit_int_call_1, emit_void_call_2, emit_eq_goto, emit_ne_goto,
9980 emit_lt_goto, emit_ge_goto, emit_gt_goto, emit_le_goto): Move to ax.c.
9981 (get_get_tsv_func_addr, get_set_tsv_func_addr): New functions.
9982 (compile_bytecodes): Remove forward declaration.
9983 (is_goto_target): Move to ax.c.
9984 (compile_bytecodes): Move to ax.c and call
9985 agent_get_trace_state_variable_value (...) and
9986 agent_set_trace_state_variable_value (...).
9987
9988 * Makefile.in: Update ax.c and IPA dependencies.
9989
9990 2012-02-24 Pedro Alves <palves@redhat.com>
9991
9992 * tracepoint.c (cmd_bigqtbuffer): Rename as ...
9993 (cmd_bigqtbuffer_circular): ... this. Only handle
9994 'QTBuffer:circular:'.
9995 (handle_tracepoint_general_set): Adjust.
9996
9997 2012-02-16 Yao Qi <yao@codesourcery.com>
9998
9999 * inferiors.c: Move code to ...
10000 * dll.c: .... here. New.
10001 * server.h: Declare clear_dlls.
10002 * Makefile.in (SFILES): Add dll.c.
10003 (OBS): Add dll.o
10004 (dll.o): New rule.
10005
10006 2012-02-11 Yao Qi <yao@codesourcery.com>
10007
10008 * server.c: (handle_monitor_command): Add a new parameter
10009 `own_buf'.
10010 (handle_query): Update caller.
10011
10012 2012-02-09 Joel Brobecker <brobecker@adacore.com>
10013
10014 * configure.ac: Add readlink to AC_CHECK_FUNCS list.
10015 * configure, config.in: Regenerate.
10016 * hostio.c: Provide an alternate implementation if HAVE_READLINK
10017 is not defined.
10018
10019 2012-02-02 Pedro Alves <palves@redhat.com>
10020
10021 Try SIGKILL first, then PTRACE_KILL.
10022 * linux-low.c (linux_kill_one_lwp): New.
10023 (linux_kill_one_lwp): Rename to ...
10024 (kill_one_lwp_callback): ... this. Use the new
10025 linux_kill_one_lwp.
10026
10027 2012-02-02 Pedro Alves <palves@redhat.com>
10028
10029 * tracepoint.c (cmd_qtminftpilen): Return 0 if there's no current
10030 inferior.
10031
10032 2012-01-27 Pedro Alves <palves@redhat.com>
10033
10034 * linux-low.c (linux_child_pid_to_exec_file): Delete.
10035 (elf_64_file_p): Make static.
10036 (linux_pid_exe_is_elf_64_file): New.
10037 * linux-low.h (linux_child_pid_to_exec_file, elf_64_file_p):
10038 Delete declarations.
10039 (linux_pid_exe_is_elf_64_file): Declare.
10040 * linux-x86-low.c (x86_arch_setup): Use
10041 linux_pid_exe_is_elf_64_file.
10042
10043 2012-01-25 Jan Kratochvil <jan.kratochvil@redhat.com>
10044
10045 * linux-low.c (linux_wait_for_event_1): Rename to ...
10046 (linux_wait_for_event): ... here and merge it with former
10047 linux_wait_for_event - new variable wait_ptid, use it.
10048 (linux_wait_for_event): Remove - merge it to linux_wait_for_event_1.
10049
10050 2012-01-23 Pedro Alves <palves@redhat.com>
10051
10052 * server.c (main): Avoid yet another case of infinite loop while
10053 detaching/killing after a longjmp.
10054
10055 2012-01-20 Jan Kratochvil <jan.kratochvil@redhat.com>
10056
10057 Code cleanup.
10058 * linux-low.c (linux_wait_for_event_1): Use ptid_is_pid.
10059
10060 2012-01-20 Ulrich Weigand <ulrich.weigand@linaro.org>
10061
10062 * hostio.c (handle_readlink): New function.
10063 (handle_vFile): Call it to handle "vFile:readlink" packets.
10064
10065 2012-01-20 Pedro Alves <palves@redhat.com>
10066 Ulrich Weigand <ulrich.weigand@linaro.org>
10067
10068 * server.c (handle_v_requests): Only support vAttach and vRun to
10069 start multiple processes when in extended protocol mode.
10070
10071 2012-01-17 Pedro Alves <palves@redhat.com>
10072
10073 * tracepoint.c (initialize_tracepoint): Use mmap instead of
10074 memalign plus mprotect to allocate the scratch buffer.
10075
10076 2012-01-13 Pedro Alves <palves@redhat.com>
10077
10078 * server.c (attach_inferior): Clear `cont_thread'.
10079
10080 2012-01-13 Pedro Alves <palves@redhat.com>
10081
10082 * server.c (main): Avoid infinite loop while detaching/killing
10083 after a longjmp.
10084
10085 2012-01-09 Doug Evans <dje@google.com>
10086
10087 * server.c (start_inferior): Set last_ptid in --wrapper case.
10088
10089 2012-01-06 Yao Qi <yao@codesourcery.com>
10090
10091 * tracepoint.c [IN_PROCESS_AGENT] (debug_threads): Macro
10092 defined.
10093 [IN_PROCESS_AGENT] (debug_agent): New global variable.
10094
10095 2012-01-04 Yao Qi <yao@codesourcery.com>
10096
10097 * tracepoint.c (cmd_qtdp): Print debug message
10098 for static tracepoint.
10099
10100 2012-01-04 Yao Qi <yao@codesourcery.com>
10101
10102 * tracepoint.c (trace_vdebug): Differentiate debug message
10103 between gdbserver and IPA.
10104
10105 2012-01-03 Yao Qi <yao@codesourcery.com>
10106
10107 * tracepoint.c (tracepoint_was_hit): Don't collect for
10108 static tracepoint.
10109
10110 2012-01-02 Joel Brobecker <brobecker@adacore.com>
10111
10112 * terminal.h: Reformat copyright header.
10113
10114 2012-01-02 Joel Brobecker <brobecker@adacore.com>
10115
10116 * server.c (gdbserver_version): Update copyright year.
10117 * gdbreplay.c (gdbreplay_version): Likewise.
10118
10119 2011-12-18 Jan Kratochvil <jan.kratochvil@redhat.com>
10120
10121 * linux-low.c (linux_create_inferior): Put empty if clause for write.
10122
10123 Revert:
10124 2011-12-18 Hui Zhu <teawater@gmail.com>
10125 * linux-low.c (linux_create_inferior): Save return value to ret.
10126
10127 2011-12-18 Hui Zhu <teawater@gmail.com>
10128
10129 * linux-low.c (linux_create_inferior): Save return value to ret.
10130
10131 2011-12-16 Doug Evans <dje@google.com>
10132
10133 * linux-low.c (linux_create_inferior): If stdio connection,
10134 redirect stdin from /dev/null, stdout to stderr.
10135 * remote-utils.c (remote_is_stdio): New static global.
10136 (remote_connection_is_stdio): New function.
10137 (remote_prepare): Handle stdio connection.
10138 (remote_open): Ditto.
10139 (remote_close): Don't close stdin for stdio connections.
10140 (read_prim,write_prim): New functions. Replace all calls to
10141 read/write to these.
10142 * server.c (main): Watch for "-" argument. Move call to
10143 remote_prepare before start_inferior.
10144 * server.h (STDIO_CONNECTION_NAME): New macro.
10145 (remote_connection_is_stdio): Declare.
10146
10147 * remote-utils.c (prepare_resume_reply): Remove extraneous \n
10148 in debugging output.
10149
10150 2011-12-15 Yao Qi <yao@codesourcery.com>
10151
10152 * tracepoint.c: Include sys/syscall.h.
10153 (gdb_ust_thread): Remove preprocessor conditional.
10154
10155 2011-12-14 Pedro Alves <pedro@codesourcery.com>
10156
10157 * linux-low.c (linux_detach_one_lwp): Call
10158 the_low_target.prepare_to_resume before detaching.
10159
10160 2011-12-14 Yao Qi <yao@codesourcery.com>
10161
10162 * tracepoint.c (gdb_ust_thread): Don't ignore return value
10163 of write.
10164
10165 2011-12-14 Yao Qi <yao@codesourcery.com>
10166
10167 * i386-low.c (i386_low_stopped_data_address): Initialize local
10168 variable `control'.
10169
10170 2011-12-13 Pedro Alves <pedro@codesourcery.com>
10171
10172 PR remote/13492
10173
10174 * i386-low.c (i386_low_stopped_data_address): Avoid fetching
10175 DR_CONTROL unless necessary. Extend comments.
10176 * linux-x86-low.c (x86_linux_prepare_to_resume): Don't write to
10177 DR0-3 if not used. If any watchpoint was set, clear DR_STATUS.
10178
10179 2011-12-13 Yao Qi <yao@codesourcery.com>
10180
10181 * tracepoint.c (trace_buffer_alloc): Replace magic numbers with
10182 macros.
10183 (upload_fast_traceframes, upload_fast_traceframes): Likewise.
10184
10185 2011-12-08 Jan Kratochvil <jan.kratochvil@redhat.com>
10186
10187 * linux-low.c (linux_kill): Skip PTRACE_KILL if LWP does not exist.
10188 Print new debug message for such case.
10189
10190 2011-12-06 Jan Kratochvil <jan.kratochvil@redhat.com>
10191
10192 Fix overlapping memcpy.
10193 * mem-break.c (set_raw_breakpoint_at): New variable buf. Use it for
10194 the read_inferior_memory transfer.
10195 (delete_fast_tracepoint_jump): New variable buf. Use it for the
10196 write_inferior_memory transfer.
10197 (set_fast_tracepoint_jump): New variable buf. Use it for the
10198 read_inferior_memory and write_inferior_memory transfers.
10199 (uninsert_fast_tracepoint_jumps_at, reinsert_fast_tracepoint_jumps_at)
10200 (delete_raw_breakpoint, uninsert_raw_breakpoint): New variable buf.
10201 Use it for the write_inferior_memory transfer.
10202 (check_mem_read, check_mem_write): New gdb_asserts for overlapping
10203 buffers.
10204
10205 2011-12-06 Maciej W. Rozycki <macro@codesourcery.com>
10206
10207 * linux-low.c (fetch_register, store_register): Make code
10208 consistent, fix formatting.
10209
10210 2011-12-06 Maciej W. Rozycki <macro@codesourcery.com>
10211
10212 * linux-low.c (usr_store_inferior_registers): Factor out code
10213 to handle individual registers into...
10214 (store_register): ... this new function.
10215
10216 2011-12-06 Ulrich Weigand <uweigand@de.ibm.com>
10217
10218 * Makefile.in (s390-linux32v1.o, s390-linux32v1.c): New rules.
10219 (s390-linux32v2.o, s390-linux32v2.c): Likewise.
10220 (s390-linux64v1.o, s390-linux64v1.c): Likewise.
10221 (s390-linux64v2.o, s390-linux64v2.c): Likewise.
10222 (s390x-linux64v1.o, s390x-linux64v1.c): Likewise.
10223 (s390x-linux64v2.o, s390x-linux64v2.c): Likewise.
10224 * configure.srv [s390*-*-linux*] (srv_regobj): Add new objects.
10225 (srv_xmlfiles): Add new XML files.
10226
10227 * linux-s390-low.c: Include "elf/common.h", <sys/ptrace.h>,
10228 and <sys/uio.h>.
10229 (PTRACE_GETREGSET, PTRACE_SETREGSET): Define if undefined.
10230 (init_registers_s390_linux32v1): Add prototype.
10231 (init_registers_s390_linux32v2): Likewise.
10232 (init_registers_s390_linux64v1): Likewise.
10233 (init_registers_s390_linux64v2): Likewise.
10234 (init_registers_s390x_linux64v1): Likewise.
10235 (init_registers_s390x_linux64v2): Likewise.
10236 (s390_num_regs): Increment to 52.
10237 (s390_regmap): Add orig_r2 register.
10238 (s390_num_regs_3264): Increment to 68.
10239 (s390_regmap_3264): Add orig_r2 register.
10240 (s390_collect_ptrace_register): Handle orig_r2 register.
10241 (s390_supply_ptrace_register): Likewise.
10242 (s390_fill_last_break): New function.
10243 (s390_store_last_break): Likewise.
10244 (s390_fill_system_call): New function.
10245 (s390_store_system_call): Likewise.
10246 (target_regsets): Handle NT_S390_LAST_BREAK and NT_S390_SYSTEM_CALL
10247 register sets.
10248 (s390_check_regset): New function.
10249 (s390_arch_setup): Check for presence of NT_S390_LAST_BREAK and
10250 NT_S390_SYSTEM_CALL regsets and use appropriate description.
10251 Update target_regsets for available register sets.
10252
10253 2011-12-02 Paul Pluzhnikov <ppluzhnikov@google.com>
10254 Jan Kratochvil <jan.kratochvil@redhat.com>
10255
10256 * linux-low.c (get_phdr_phnum_from_proc_auxv, get_dynamic, get_r_debug)
10257 (read_one_ptr, struct link_map_offsets, linux_qxfer_libraries_svr4):
10258 New.
10259 (struct linux_target_ops): Install linux_qxfer_libraries_svr4.
10260 * linux-low.h (struct process_info_private): New member r_debug.
10261 * server.c (handle_qxfer_libraries): Call
10262 the_target->qxfer_libraries_svr4.
10263 (handle_qxfer_libraries_svr4): New function.
10264 (qxfer_packets): New entry "libraries-svr4".
10265 (handle_query): Check QXFER_LIBRARIES_SVR4 and report libraries-svr4.
10266 * target.h (struct target_ops): New member qxfer_libraries_svr4.
10267 * remote.c (remote_xfer_partial): Call add_packet_config_cmd for
10268 PACKET_qXfer_libraries_svr4.
10269
10270 2011-11-30 Ulrich Weigand <uweigand@de.ibm.com>
10271
10272 * linux-s390-low.c (s390_collect_ptrace_register): Fully convert
10273 PSW address/mask between 8-byte and 16-byte formats.
10274 (s390_supply_ptrace_register): Likewise.
10275 (s390_get_pc, s390_set_pc): 4-byte PSW address always includes
10276 basic addressing mode bit.
10277
10278 2011-11-24 Stan Shebs <stan@codesourcery.com>
10279
10280 * tracepoint.c (cmd_qtstatus): Use plongest instead of %llx.
10281
10282 2011-11-17 Stan Shebs <stan@codesourcery.com>
10283
10284 * tracepoint.c (struct tracepoint): New field traceframe_usage.
10285 (tracing_start_time): New global.
10286 (tracing_stop_time): New global.
10287 (tracing_user_name): New global.
10288 (tracing_notes): New global.
10289 (tracing_stop_note): New global.
10290 (cmd_qtstart): Set traceframe_usage, start_time.
10291 (stop_tracing): Set stop_time.
10292 (cmd_qtstatus): Report additional status.
10293 (cmd_qtp): New function.
10294 (handle_tracepoint_query): Call it.
10295 (cmd_qtnotes): New function.
10296 (handle_tracepoint_general_set): Call it.
10297 (get_timestamp): Rename from tsv_get_timestamp.
10298
10299 2011-11-14 Stan Shebs <stan@codesourcery.com>
10300 Kwok Cheung Yeung <kcy@codesourcery.com>
10301
10302 * linux-x86-low.c (small_jump_insn): New.
10303 (i386_install_fast_tracepoint_jump_pad): Add arguments for
10304 trampoline and error message, build a trampoline and issue a small
10305 jump instruction to it.
10306 (x86_install_fast_tracepoint_jump_pad): Add arguments for
10307 trampoline and error message.
10308 (x86_get_min_fast_tracepoint_insn_len): New.
10309 (the_low_target): Add call to x86_get_min_fast_tracepoint_insn_len.
10310 * linux-low.h (struct linux_target_ops): Add arguments to
10311 install_fast_tracepoint_jump_pad operation, add new operation.
10312 * linux-low.c (linux_install_fast_tracepoint_jump_pad): Add
10313 arguments.
10314 (linux_get_min_fast_tracepoint_insn_len): New function.
10315 (linux_target_op): Add new operation.
10316 * tracepoint.c (gdb_trampoline_buffer): New IPA variable.
10317 (gdb_trampoline_buffer_end): Ditto.
10318 (gdb_trampoline_buffer_error): Ditto.
10319 (struct ipa_sym_addresses): Add fields for new IPA variables.
10320 (symbol_list): Add entries for new IPA variables.
10321 (struct tracepoint): Add fields to hold the address range of the
10322 trampoline used by the tracepoint.
10323 (trampoline_buffer_head): New static variable.
10324 (trampoline_buffer_tail): Ditto.
10325 (claim_trampoline_space): New function.
10326 (have_fast_tracepoint_trampoline_buffer): New function.
10327 (clone_fast_tracepoint): Fill in trampoline fields of tracepoint
10328 structure.
10329 (install_fast_tracepoint): Ditto, also add error buffer argument.
10330 (cmd_qtminftpilen): New function.
10331 (handle_tracepoint_query): Add response to qTMinFTPILen packet.
10332 (fast_tracepoint_from_trampoline_address): New function.
10333 (fast_tracepoint_collecting): Handle trampoline as part of jump
10334 pad space.
10335 (set_trampoline_buffer_space): New function.
10336 (initialize_tracepoint): Initialize new IPA variables.
10337 * target.h (struct target_ops): Add arguments to
10338 install_fast_tracepoint_jump_pad operation, add new
10339 get_min_fast_tracepoint_insn_len operation.
10340 (target_get_min_fast_tracepoint_insn_len): New.
10341 (install_fast_tracepoint_jump_pad): Add arguments.
10342 * server.h (IPA_BUFSIZ): Define.
10343 * linux-i386-ipa.c: Include extra header files.
10344 (initialize_fast_tracepoint_trampoline_buffer): New function.
10345 (initialize_low_tracepoint): Call it.
10346 * server.h (set_trampoline_buffer_space): Declare.
10347 (claim_trampoline_space): Ditto.
10348 (have_fast_tracepoint_trampoline_buffer): Ditto.
10349
10350 2011-11-14 Yao Qi <yao@codesourcery.com>
10351
10352 * server.c (handle_query): Handle InstallInTrace for qSupported.
10353 * tracepoint.c (add_tracepoint): Sort list.
10354 (install_tracepoint, download_tracepoint): New.
10355 (cmd_qtdp): Call them to install and download tracepoints.
10356 (sort_tracepoints): Removed.
10357 (cmd_qtstart): Update.
10358
10359 2011-11-14 Yao Qi <yao@codesourcery.com>
10360
10361 * mem-break.c (inc_ref_fast_tracepoint_jump): New.
10362 * mem-break.h: Declare.
10363 * tracepoint.c (cmd_qtstart): Move some code to ...
10364 (clone_fast_tracepoint, install_fast_tracepoint): ... here.
10365 New.
10366 (download_tracepoints): Move some code to ...
10367 (download_tracepoint_1): ... here. New.
10368
10369 2011-11-08 Yao Qi <yao@codesourcery.com>
10370
10371 * remote-utils.c (relocate_instruction): A comment fix.
10372
10373 2011-11-07 Joel Brobecker <brobecker@adacore.com>
10374
10375 * win32-i386-low.c (dr_status_mirror, dr_control_mirror): Delete.
10376 (i386_dr_low_get_control, i386_dr_low_get_status): Use
10377 dr_status_mirror and dr_control_mirror from debug_reg_state.
10378 (i386_dr_low_get_status): Use debug_reg_state.dr_status_mirror
10379 (i386_initial_stuff): Remove use of deleted globals.
10380 (i386_get_thread_context, i386_set_thread_context,
10381 i386_thread_added): Use dr_status_mirror and dr_control_mirror
10382 from debug_reg_state.
10383
10384 2011-11-05 Yao Qi <yao@codesourcery.com>
10385
10386 * tracepoint.c (gdb_collect): Loop over tracepoints of same
10387 address as TPOINT's.
10388
10389 2011-11-02 Stan Shebs <stan@codesourcery.com>
10390
10391 * tracepoint.c (agent_mem_read_string): New function.
10392 (eval_agent_expr): Call it for tracenz.
10393 * server.c (handle_query): Report support for tracenz.
10394
10395 2011-11-02 Yao Qi <yao@codesourcery.com>
10396
10397 * tracepoint.c (cmd_qtstart): Remove unused local variables.
10398
10399 2011-11-02 Yao Qi <yao@codesourcery.com>
10400
10401 * target.h: Fix a typo in comment.
10402
10403 2011-10-31 Pedro Alves <pedro@codesourcery.com>
10404
10405 * mem-break.c (check_mem_write): Add `myaddr' parameter. Don't
10406 clobber the breakpoints' shadows with fast tracepoint jumps.
10407 * mem-break.h (check_mem_write): Add `myaddr' parameter.
10408 * target.c (write_inferior_memory): Also pass MYADDR down to
10409 check_mem_write.
10410
10411 2011-10-07 Ulrich Weigand <ulrich.weigand@linaro.org>
10412
10413 * configure.ac: Check support for personality routine.
10414 * configure: Regenerate.
10415 * config.in: Likewise.
10416 * linux-low.c: Include <sys/personality.h>.
10417 Define ADDR_NO_RANDOMIZE if necessary.
10418 (linux_create_inferior): Disable address space randomization when
10419 forking inferior, if requested.
10420 (linux_supports_disable_randomization): New function.
10421 (linux_target_ops): Install it.
10422 * server.h (disable_randomization): Declare.
10423 * server.c (disable_randomization): New global variable.
10424 (handle_general_set): Handle QDisableRandomization.
10425 (handle_query): Likewise for qSupported.
10426 (main): Support --disable-randomization and --no-disable-randomization
10427 command line arguments.
10428 * target.h (struct target_ops): Add supports_disable_randomization.
10429 (target_supports_disable_randomization): New macro.
10430
10431 2011-09-29 Mike Frysinger <vapier@gentoo.org>
10432
10433 * linux-low.c (target_loadseg): Add defined PTRACE_GETFDPIC to the
10434 ifdef check.
10435 [PT_GETDSBT] (target_loadmap): Wrap in a defined PT_GETDSBT check.
10436 [!PT_GETDSBT] (target_loadmap): New definition.
10437 (LINUX_LOADMAP, LINUX_LOADMAP_EXEC, LINUX_LOADMAP_INTERP): Define.
10438 (linux_read_loadmap): Change PTRACE_GETDSBT_EXEC to
10439 LINUX_LOADMAP_EXEC, PTRACE_GETDSBT_INTERP to LINUX_LOADMAP_INTERP,
10440 and PT_GETDSBT to LINUX_LOADMAP.
10441 [!PT_GETDSBT] (linux_read_loadmap): Define to NULL.
10442 (linux_target_ops): Delete unnecessary ifdef PT_GETDSBT check.
10443
10444 2011-09-21 Ulrich Weigand <ulrich.weigand@linaro.org>
10445
10446 * linux-arm-low.c (struct arm_linux_hwbp_cap): Remove.
10447 (arm_linux_hwbp_cap): New static variable.
10448 (arm_linux_get_hwbp_cap): Replace by ...
10449 (arm_linux_init_hwbp_cap): ... this new function.
10450 (arm_linux_get_hw_breakpoint_count): Use arm_linux_hwbp_cap.
10451 (arm_linux_get_hw_watchpoint_count): Likewise.
10452 (arm_linux_get_hw_watchpoint_max_length): Likewise.
10453 (arm_arch_setup): Call arm_linux_init_hwbp_cap.
10454 (arm_prepare_to_resume): Use perror_with_name instead of error.
10455
10456 2011-09-21 Ulrich Weigand <ulrich.weigand@linaro.org>
10457
10458 * linux-arm-low.c: Include <signal.h>.
10459 (PTRACE_GETHBPREGS, PTRACE_SETHBPREGS): Define if necessary.
10460 (struct arm_linux_hwbp_cap): New data type.
10461 (arm_hwbp_type, arm_hwbp_control_t): New typedefs.
10462 (struct arm_linux_hw_breakpoint): New data type.
10463 (MAX_BPTS, MAX_WPTS): Define.
10464 (struct arch_process_info, struct arch_lwp_info): New data types.
10465 (arm_linux_get_hwbp_cap): New function.
10466 (arm_linux_get_hw_breakpoint_count): Likewise.
10467 (arm_linux_get_hw_watchpoint_count): Likewise.
10468 (arm_linux_get_hw_watchpoint_max_length): Likewise.
10469 (arm_hwbp_control_initialize): Likewise.
10470 (arm_hwbp_control_is_enabled): Likewise.
10471 (arm_hwbp_control_is_initialized): Likewise.
10472 (arm_hwbp_control_disable): Likewise.
10473 (arm_linux_hw_breakpoint_equal): Likewise.
10474 (arm_linux_hw_point_initialize): Likewise.
10475 (struct update_registers_data): New data structure.
10476 (update_registers_callback: New function.
10477 (arm_insert_point): Likewise.
10478 (arm_remove_point): Likewise.
10479 (arm_stopped_by_watchpoint): Likewise.
10480 (arm_stopped_data_address): Likewise.
10481 (arm_new_process): Likewise.
10482 (arm_new_thread): Likewise.
10483 (arm_prepare_to_resume): Likewise.
10484 (the_low_target): Register arm_insert_point, arm_remove_point,
10485 arm_stopped_by_watchpoint, arm_stopped_data_address, arm_new_process,
10486 arm_new_thread, and arm_prepare_to_resume.
10487
10488 2011-09-15 Stan Shebs <stan@codesourcery.com>
10489
10490 * server.h (struct emit_ops): Add compare-goto fields.
10491 * tracepoint.c (gdb_agent_op_sizes): New table.
10492 (emit_eq_goto): New function.
10493 (emit_ne_goto): New function.
10494 (emit_lt_goto): New function.
10495 (emit_le_goto): New function.
10496 (emit_gt_goto): New function.
10497 (emit_ge_goto): New function.
10498 (is_goto_target): New function.
10499 (compile_bytecodes): Recognize special cases of compare-goto
10500 combinations and call specialized emitters for them.
10501 * linux-x86-low.c (amd64_emit_eq_goto): New function.
10502 (amd64_emit_ne_goto): New function.
10503 (amd64_emit_lt_goto): New function.
10504 (amd64_emit_le_goto): New function.
10505 (amd64_emit_gt_goto): New function.
10506 (amd64_emit_ge_goto): New function.
10507 (amd64_emit_ops): Add the new functions.
10508 (i386_emit_eq_goto): New function.
10509 (i386_emit_ne_goto): New function.
10510 (i386_emit_lt_goto): New function.
10511 (i386_emit_le_goto): New function.
10512 (i386_emit_gt_goto): New function.
10513 (i386_emit_ge_goto): New function.
10514 (i386_emit_ops): Add the new functions.
10515
10516 2011-09-08 Stan Shebs <stan@codesourcery.com>
10517
10518 * linux-x86-low.c (i386_emit_prologue): Save %ebx.
10519 (i386_emit_epilogue): Restore %ebx.
10520
10521 2011-08-31 Jie Zhang <jzhang918@gmail.com>
10522
10523 * server.c (step_thread): Remove definition.
10524 (process_serial_event): Don't handle Hs.
10525 * server.h (step_thread): Remove declaration.
10526 * target.c (set_desired_inferior): Remove use of step_thread.
10527
10528 2011-08-24 Luis Machado <lgustavo@codesourcery.com>
10529
10530 * linux-low.c: Include linux-procfs.h.
10531 (linux_attach_lwp_1): Update comments.
10532 (linux_attach): Scan for existing threads when attaching to a
10533 process that is the tgid.
10534 * Makefile.in: Update dependencies.
10535
10536 2011-08-24 Luis Machado <lgustavo@codesourcery.com>
10537
10538 * configure.srv: Add linux-procfs.o dependencies.
10539
10540 2011-08-14 Yao Qi <yao@codesourcery.com>
10541
10542 * target.h (struct target_ops): Fix indent.
10543 * win32-low.c (win32_target_ops): Fix comment.
10544
10545 2011-08-14 Andrew Jenner <andrew@codesourcery.com>
10546 Yao Qi <yao@codesourcery.com>
10547
10548 * Makefile.in (clean): Remove tic6x-*.c files.
10549 (linux-tic6x-low.o, tic6x-c62x-linux.o, tic6x-c64x-linux.o): New rules.
10550 (tic6x-c64xp-linux.o, tic6x-c62x-linux.c, tic6x-c64x-linux.c): Likewise.
10551 (tic6x-c64xp-linux.c): Likewise.
10552 * configure.srv: Add support for tic6x-*-uclinux.
10553 * linux-tic6x-low.c: New.
10554 * linux-low.c (PT_TEXT_ADDR, PT_DATA_ADDR, PT_TEXT_END_ADDR): Define.
10555
10556 2011-08-14 Andrew Stubbs <ams@codesourcery.com>
10557 Yao Qi <yao@codesourcery.com>
10558
10559 * target.h (struct target_ops): Add read_loadmap.
10560 * linux-low.c (struct target_loadseg): New type.
10561 (struct target_loadmap): New type.
10562 (linux_read_loadmap): New function.
10563 (linux_target_ops): Add linux_read_loadmap.
10564 * server.c (handle_query): Support qXfer:fdpic:read packet.
10565 * win32-low.c (win32_target_ops): Initialize field `read_loadmap'
10566 to NULL.
10567
10568 2011-08-05 Eli Zaretskii <eliz@gnu.org>
10569
10570 * win32-low.c: Include <stdint.h>.
10571
10572 2011-07-22 Pedro Alves <pedro@codesourcery.com>
10573
10574 * i386-low.c (i386_insert_aligned_watchpoint): Don't pass the info
10575 to the inferior here.
10576 (i386_remove_aligned_watchpoint): Ditto.
10577 (i386_handle_nonaligned_watchpoint): Return immediate on fail to
10578 fit part of the watchpoint in the debug registers.
10579 (i386_update_inferior_debug_regs): New.
10580 (i386_low_insert_watchpoint): Work on a local mirror of the debug
10581 registers, and only update the inferior on success.
10582 (i386_low_remove_watchpoint): Ditto.
10583
10584 2011-07-22 Kwok Cheung Yeung <kcy@codesourcery.com>
10585
10586 * linux-low.c (compare_ints, unique, list_threads, show_process,
10587 linux_core_of_thread): Delete.
10588 (linux_target_ops): Change linux_core_of_thread to
10589 linux_common_core_of_thread.
10590 (linux_qxfer_osdata): Defer to linux_common_xfer_osdata.
10591 * utils.c (malloc_failure): Change type of argument.
10592 (xmalloc, xrealloc, xcalloc, xsnprintf): Delete.
10593 * Makefile.in (SFILES): Add common/common-utils.c, common/xml-utils.c,
10594 common/linux-osdata.c, common/ptid.c and common/buffer.c.
10595 (OBS): Add xml-utils.o, common-utils.o, ptid.o and buffer.o.
10596 (IPA_OBJS): Add common-utils-ipa.o.
10597 (ptid_h, linux_osdata_h): New macros.
10598 (server_h): Add common/common-utils.h, common/xml-utils.h,
10599 common/buffer.h, common/gdb_assert.h, common/gdb_locale.h and
10600 common/ptid.h.
10601 (common-utils-ipa.o, common-utils.o, xml-utils.o, linux-osdata.o,
10602 ptid.o, buffer.o): New rules.
10603 (linux-low.o): Add common/linux-osdata.h as a dependency.
10604 * configure.srv (srv_tgtobj): Add linux-osdata.o to Linux targets.
10605 * configure.ac: Add AC_HEADER_DIRENT check.
10606 * config.in: Regenerate.
10607 * configure: Regenerate.
10608 * remote-utils.c (xml_escape_text): Delete.
10609 (buffer_grow, buffer_free, buffer_init, buffer_finish,
10610 buffer_xml_printf): Move to common/buffer.c.
10611 * server.c (main): Remove call to initialize_inferiors.
10612 * server.h (struct ptid, ptid_t, minus_one_ptid, null_ptid,
10613 ptid_build, pid_to_ptid, ptid_get_pid, ptid_get_lwp, ptid_get_tid,
10614 ptid_equal, ptid_is_pid, initialize_inferiors, xml_escape_text,
10615 internal_error, gdb_assert, gdb_assert_fail): Delete.
10616 (struct buffer, buffer_grow, buffer_free, buffer_init, buffer_finish,
10617 buffer_xml_printf, buffer_grow_str, buffer_grow_str0): Move to
10618 common/buffer.h.
10619 * inferiors.c (null_ptid, minus_one_ptid, ptid_build, pid_to_ptid,
10620 ptid_get_pid, ptid_get_lwp, ptid_get_tid, ptid_equal, ptid_is_pid,
10621 initialize_inferiors): Delete.
10622
10623 2011-07-20 Pedro Alves <pedro@codesourcery.com>
10624
10625 * tracepoint.c (tracepoint_look_up_symbols): Return upon the first
10626 symbol error.
10627
10628 2011-05-31 Pedro Alves <pedro@codesourcery.com>
10629
10630 * linux-x86-low.c (i386_dr_low_get_addr): Fix off by one in
10631 assertion.
10632 * win32-i386-low.c (i386_dr_low_get_addr): Ditto.
10633
10634 2011-05-26 Yao Qi <yao@codesourcery.com>
10635
10636 * Makefile.in (thread-db.o): Track dependence to
10637 common/gdb_thread_db.h.
10638 * thread-db.c: include gdb_thread_db.h from right place.
10639
10640 2011-05-16 Adrian Cornish <gnu@bluedreamer.com>
10641
10642 * linux-i386-ipa.c (supply_static_tracepoint_registers): Pass
10643 __FILE__ and __LINE__ to internal_error.
10644
10645 2011-05-13 Doug Evans <dje@google.com>
10646
10647 * thread-db.c (try_thread_db_load_from_sdir): New function.
10648 (try_thread_db_load_from_dir): New function.
10649 (thread_db_load_search): Handle $sdir, ignore $pdir.
10650 Remove trying of system directories if search of
10651 libthread-db-search-path fails, that is now done via $sdir.
10652
10653 2011-05-12 Kwok Cheung Yeung <kcy@codesourcery.com>
10654
10655 * server.c (handle_query): Add EnableDisableTracepoints to the list
10656 of supported features.
10657 * tracepoint.c (clear_installed_tracepoints): Uninstall disabled
10658 tracepoints.
10659 (cmd_qtenable_disable): New.
10660 (cmd_qtstart): Install tracepoints even if disabled.
10661 (handle_tracepoint_general_set): Add call to cmd_qtenable_disable on
10662 receiving a QTEnable or QTDisable packet.
10663 (gdb_collect): Skip data collection if fast tracepoint is disabled.
10664 (ust_marker_to_static_tracepoint): Do not ignore disabled static
10665 tracepoints.
10666 (gdb_probe): Skip data collection if static tracepoint is disabled.
10667
10668 2011-05-10 Doug Evans <dje@google.com>
10669
10670 * thread-db.c (thread_db_handle_monitor_command): Handle elided path.
10671
10672 2011-05-04 Doug Evans <dje@google.com>
10673
10674 * linux-low.c (linux_join): Skip process lookup.
10675 * spu-low.c (spu_join): Ditto.
10676 * server.c (join_inferiors_callback): Delete.
10677 (process_serial_event): For 'D' packet (detach) call join_inferior
10678 directly.
10679
10680 2011-05-04 Joseph Myers <joseph@codesourcery.com>
10681
10682 * README: Don't mention xscale*-*-linux*.
10683 * configure.srv (xscale*-*-linux*): Don't handle target.
10684
10685 2011-04-27 Nathan Froyd <froydnj@codesourcery.com>
10686
10687 * linux-x86-low.c (amd64_emit_const): Call memcpy instead of
10688 casting pointers.
10689 (amd64_emit_reg, amd64_emit_int_call_1, amd64_emit_void_call_2):
10690 (i386_emit_const, i386_emit_reg, i386_emit_int_call_1):
10691 (i386_emit_void_call_2): Likewise.
10692
10693 2011-04-26 Yao Qi <yao@codesourcery.com>
10694
10695 * linux-low.c: Move common macros to linux-ptrace.h.
10696 Include linux-ptrace.h.
10697 * Makefile.in (linux_ptrace_h): New.
10698 (linux-low.o): Depends on linux-ptrace.h.
10699
10700 2011-04-24 Jan Kratochvil <jan.kratochvil@redhat.com>
10701
10702 * remote-utils.c (handle_accept_event): Close LISTEN_DESC only if
10703 RUN_ONCE. Comment for the LISTEN_DESC delete_file_handler call.
10704 (remote_prepare): New function with most of the TCP code from ...
10705 (remote_open): ... here. Detect PORT here unconditionally. Move also
10706 setting transport_is_reliable.
10707 * server.c (run_once): New variable.
10708 (gdbserver_usage): Document it.
10709 (main): Set run_once for `--once'. Call remote_prepare. Exit after
10710 the first run if RUN_ONCE.
10711 * server.h (run_once, remote_prepare): New declarations.
10712
10713 2011-04-19 Tom Tromey <tromey@redhat.com>
10714
10715 * win32-low.c (handle_load_dll): Remove duplicate "the".
10716
10717 2011-04-07 Pierre Muller <muller@ics.u-strasbg.fr>
10718
10719 Remove support for old Cygwin 1.5 versions.
10720 * win32-low.c (win32_create_inferior): Use new cygwin_path_list
10721 function to avoid warning.
10722 (win32_add_one_solib): Use cygwin_conv_path function to avoid
10723 warning.
10724
10725 2011-03-18 Pierre Muller <muller@ics.u-strasbg.fr>
10726
10727 * gdbserver/server.h (Macro _): Define it if not available.
10728
10729 2011-03-14 Michael Snyder <msnyder@vmware.com>
10730
10731 * hostio.c (handle_close): Remove unnecessary null test.
10732
10733 2011-03-10 Joel Brobecker <brobecker@adacore.com>
10734
10735 * Makefile.in (maintainer-clean realclean distclean): Remove
10736 "make ... subdir_do" command.
10737
10738 2011-03-10 Michael Snyder <msnyder@vmware.com>
10739
10740 * tracepoint.c (tracepoint_finish_step): Fix loop variable.
10741
10742 * server.c (handle_v_run): Free alloced buffer on early return.
10743
10744 2011-03-09 Yao Qi <yao@codesourcery.com>
10745
10746 Revert:
10747 2011-03-04 Yao Qi <yao@codesourcery.com>
10748
10749 * Makefile.in: Remove GNU make feature --directory.
10750
10751 2011-03-05 Yao Qi <yao@codesourcery.com>
10752
10753 * Makefile.in (CLEANDIRS, REQUIRED_SUBDIRS): New variable.
10754 (subdir_do): New make target. Copied from gdb/Makefile.
10755 (maintainer-clean, realclean, distclean, clean): Call corresponding
10756 make targets in common/Makefile.
10757
10758 2011-02-11 Yao Qi <yao@codesourcery.com>
10759
10760 * configure.ac: Call AC_PROG_RANLIB.
10761 * Makefile.in: Remove signals.o from OBS. Link libcommon.a.
10762 * configure: Regenerate.
10763
10764 2011-03-07 Jan Kratochvil <jan.kratochvil@redhat.com>
10765
10766 * remote-utils.c (putpkt_binary_1): Calculate BUF2 size dynamically.
10767
10768 2011-03-06 Yao Qi <yao@codesourcery.com>
10769
10770 * Makefile.in (REQUIRED_SUBDIRS): Remove $(LIBCOMMON_DIR).
10771
10772 2011-03-05 Yao Qi <yao@codesourcery.com>
10773
10774 * Makefile.in (CLEANDIRS, REQUIRED_SUBDIRS): New variable.
10775 (subdir_do): New make target. Copied from gdb/Makefile.
10776 (maintainer-clean, realclean, distclean, clean): Call corresponding
10777 make targets in common/Makefile.
10778
10779 2011-03-04 Yao Qi <yao@codesourcery.com>
10780
10781 * Makefile.in: Remove GNU make feature --directory.
10782
10783 2011-03-04 Michael Snyder <msnyder@vmware.com>
10784
10785 * server.c (queue_stop_reply): Call xmalloc not malloc.
10786
10787 2011-03-02 Michael Snyder <msnyder@vmware.com>
10788
10789 * linux-arm-low.c (arm_arch_setup): Replace malloc with xmalloc.
10790
10791 2011-02-28 Michael Snyder <msnyder@vmware.com>
10792
10793 * tracepoint.c (cmd_qtv): Discard unused value 'packet'.
10794 (cmd_qtframe): Ditto.
10795 (cmd_qtbuffer): Ditto.
10796 (cmd_bigqtbuffer): Ditto.
10797
10798 * utils.c (decimal2str): Initialize 'width' to nine, then
10799 don't mess with it.
10800
10801 2011-02-28 Ulrich Weigand <uweigand@de.ibm.com>
10802
10803 * hostio.c (require_data): Free *data, not data.
10804
10805 2011-02-28 Jan Kratochvil <jan.kratochvil@redhat.com>
10806
10807 * hostio.c (require_data): Use free, not xfree.
10808
10809 2011-02-27 Michael Snyder <msnyder@vmware.com>
10810
10811 * server.c (handle_query): Discard unused value.
10812
10813 * hostio.c (require_data): Free malloc memory before returning
10814 error.
10815
10816 2011-02-26 Michael Snyder <msnyder@vmware.com>
10817
10818 * linux-low.c (list_threads): Call closedir for dirent.
10819
10820 2011-02-27 Michael Snyder <msnyder@vmware.com>
10821
10822 * i386-low.c (i386-length_and_rw_bits): Comment the fact that
10823 a case statement falls through.
10824
10825 * linux-low.c (linux_xfer_siginfo): Fix fencepost error.
10826
10827 * linux-amd64-ipa.c (gdb_agent_get_raw_reg): Fix fencepost error
10828 in comparison.
10829
10830 2011-02-26 Michael Snyder <msnyder@vmware.com>
10831
10832 * utils.c (decimal2str): Eliminate dead code and dead param.
10833 (pulongest): Drop dead param from call to decimal2str.
10834 (plongest): Ditto.
10835
10836 2011-02-24 Joel Brobecker <brobecker@adacore.com>
10837
10838 Revert the following patch (not approved yet):
10839 2011-02-21 Hui Zhu <teawater@gmail.com>
10840 * tracepoint.c (tp_printf): New function.
10841 (eval_agent_expr): Handle gdb_agent_op_printf.
10842
10843 2011-02-21 Hui Zhu <teawater@gmail.com>
10844
10845 * tracepoint.c (tp_printf): New function.
10846 (eval_agent_expr): Handle gdb_agent_op_printf.
10847
10848 2011-02-18 Tom Tromey <tromey@redhat.com>
10849
10850 * Makefile.in (tracepoint-ipa.o): Depend on ax.def.
10851 (tracepoint.o): Likewise.
10852 * tracepoint.c (enum gdb_agent_op): Use ax.def.
10853 (gdb_agent_op_names): Likewise.
10854
10855 2011-02-18 Tom Tromey <tromey@redhat.com>
10856
10857 * tracepoint.c (enum gdb_agent_op) <gdb_agent_op_pick,
10858 gdb_agent_op_rot>: New constants.
10859 (gdb_agent_op_names): Add pick and roll.
10860 (eval_agent_expr) <gdb_agent_op_pick, gdb_agent_op_rot>: New
10861 cases.
10862
10863 2011-02-15 Jan Kratochvil <jan.kratochvil@redhat.com>
10864
10865 * aclocal.m4: Regenerated with aclocal-1.11.1.
10866
10867 2011-02-14 Pedro Alves <pedro@codesourcery.com>
10868
10869 * server.c (handle_qxfer_traceframe_info): New.
10870 (qxfer_packets): Register "traceframe-info".
10871 (handle_query): Report support for qXfer:traceframe-info:read+.
10872 * tracepoint.c (match_blocktype): New.
10873 (traceframe_find_block_type): Rename to ...
10874 (traceframe_walk_blocks): ... this. Add callback filter argument,
10875 and use it.
10876 (traceframe_find_block_type): New, reimplemented on top of
10877 traceframe_walk_blocks.
10878 (build_traceframe_info_xml): New.
10879 (traceframe_read_info): New.
10880 * server.h (traceframe_read_info): Declare.
10881
10882 2011-02-11 Yao Qi <yao@codesourcery.com>
10883
10884 * configure.ac: Call AC_PROG_RANLIB.
10885 * Makefile.in: Remove signals.o from OBS. Link libcommon.a.
10886 * configure: Regenerate.
10887
10888 2011-02-07 Pedro Alves <pedro@codesourcery.com>
10889
10890 * server.c (gdb_read_memory): Change return semantics to allow
10891 partial transfers.
10892 (handle_search_memory_1): Adjust.
10893 (process_serial_event) <'m' packet>: Handle partial transfers.
10894 * tracepoint.c (traceframe_read_mem): Handle partial transfers.
10895
10896 2011-01-28 Pedro Alves <pedro@codesourcery.com>
10897
10898 * regcache.c (init_register_cache): Initialize
10899 regcache->register_status.
10900 (free_register_cache): Release regcache->register_status.
10901 (regcache_cpy): Copy register_status.
10902 (registers_to_string): Print 'x's for unavailable registers.
10903 (supply_register): Mark the register's status valid or
10904 unavailable, depending on whether a buffer was passed in or not.
10905 (supply_register_zeroed): New.
10906 (supply_regblock): Mark the registers' status valid or
10907 unavailable, depending on whether a buffer was passed in or not.
10908 * regcache.h (REG_UNAVAILABLE, REG_VALID): New defines.
10909 (struct regcache): New `register_status' field.
10910 (supply_register_zeroed): Declare.
10911 * i387-fp.c (i387_xsave_to_cache): Zero out registers using
10912 supply_register_zeroed, rather than passing a NULL buffer to
10913 supply_register.
10914 * tracepoint.c (fetch_traceframe_registers): Update comment.
10915
10916 2011-01-28 Pedro Alves <pedro@codesourcery.com>
10917
10918 * i387-fp.c (i387_xsave_to_cache): Make passing NULL as register
10919 buffer explicit.
10920
10921 2011-01-25 Pedro Alves <pedro@codesourcery.com>
10922
10923 * server.h (decode_xfer_write): Change prototype.
10924 * remote-utils.c (decode_xfer_write): Remove `annex' parameter,
10925 and don't extract the annex here.
10926 * server.c (decode_xfer_read): Remove `annex' parameter,
10927 and don't extract the annex here.
10928 (decode_xfer): New.
10929 (struct qxfer): New.
10930 (handle_qxfer_auxv, handle_qxfer_features, handle_qxfer_libraries)
10931 (handle_qxfer_osdata, handle_qxfer_siginfo, handle_qxfer_spu)
10932 (handle_qxfer_statictrace): New functions, abstracted out from
10933 handle_query, and made to use the struct qxfer interface.
10934 (handle_threads_qxfer_proper): Rename to ...
10935 (handle_qxfer_threads_proper): ... this.
10936 (handle_threads_qxfer): Rename to ...
10937 (handle_qxfer_threads): ... this. Adjust.
10938 (qxfer_packets): New array.
10939 (handle_qxfer): New function.
10940 (handle_query): Use handle_qxfer.
10941
10942 2011-01-05 Michael Snyder <msnyder@msnyder-server.eng.vmware.com>
10943
10944 * gdbreplay.c: Shorten lines of >= 80 columns.
10945 * linux-low.c: Ditto.
10946 * linux-ppc-low.c: Ditto.
10947 * linux-s390-low.c: Ditto.
10948 * linux-sparc-low.c: Ditto.
10949 * linux-x86-low.c: Ditto.
10950 * linux-xtensa-low.c: Ditto.
10951 * mem-break.c: Ditto.
10952 * nto-low.c: Ditto.
10953 * regcache.h: Ditto.
10954 * remote-utils.c: Ditto.
10955 * server.c: Ditto.
10956 * server.h: Ditto.
10957 * thread-db.c: Ditto.
10958 * tracepoint.c: Ditto.
10959 * utils.c: Ditto.
10960 * win32-low.h: Ditto.
10961
10962 2011-01-05 Joel Brobecker <brobecker@adacore.com>
10963
10964 * gdbserver/configure.ac, gdbserver/gdbserver.1: Copyright year
10965 update.
10966
10967 2011-01-01 Joel Brobecker <brobecker@adacore.com>
10968
10969 * server.c (gdbserver_version): Update copyright year in version
10970 output.
10971 * gdbreplay.c (gdbreplay_version): Ditto.
10972
10973 2010-12-29 Jie Zhang <jie.zhang@analog.com>
10974
10975 * configure.srv (bfin-*-*linux*): Handle Blackfin/Linux targets.
10976 * linux-bfin-low.c: New file.
10977 * linux-low.c: Define PT_TEXT_ADDR, PT_TEXT_END_ADDR, and
10978 PT_DATA_ADDR for BFIN targets.
10979 * Makefile.in (SFILES): Add linux-bfin-low.c.
10980 (clean): Remove reg-bfin.c.
10981 (linux-bfin-low.o, reg-bfin.o, reg-bfin.c): New targets.
10982 * README: Mention supported Blackfin targets.
10983
10984 2010-12-23 Mike Frysinger <vapier@gentoo.org>
10985
10986 * .gitignore: New file.
10987
10988 2010-11-16 Mike Frysinger <vapier@gentoo.org>
10989
10990 * linux-low.c (linux_tracefork_child): Add char* cast to arg.
10991
10992 2010-10-22 Jie Zhang <jie@codesourcery.com>
10993
10994 * Makefile.in: Add FLAGS_TO_PASS variable.
10995 (install): Remove dependency of install-only and recursively
10996 invoke make for install-only.
10997
10998 2010-10-04 Doug Evans <dje@google.com>
10999
11000 * Makefile.in (uninstall): Use $(DESTDIR).
11001
11002 2010-09-24 Pedro Alves <pedro@codesourcery.com>
11003
11004 PR gdb/11842
11005
11006 * linux-x86-low.c (compat_siginfo_from_siginfo)
11007 (siginfo_from_compat_siginfo): Also copy si_pid and si_uid when
11008 si_code is < 0. Check for si_code == SI_TIMER before checking for
11009 si_code < 0.
11010
11011 2010-09-13 Joel Brobecker <brobecker@adacore.com>
11012
11013 * lynx-i386-low.c: New file.
11014 * configure.srv: Add handling of i[34567]86-*-lynxos* targets.
11015
11016 2010-09-13 Joel Brobecker <brobecker@adacore.com>
11017
11018 * lynx-low.c (ptrace_request_to_str): Remove handling for
11019 request values that have been removed in LynxOS 5.x.
11020
11021 2010-09-13 Joel Brobecker <brobecker@adacore.com>
11022
11023 * lynx-low.c, lynx-ppc-loc.c: Include <sys/ptrace.h> instead of
11024 <ptrace.h>
11025
11026 2010-09-09 Nathan Sidwell <nathan@codesourcery.com>
11027
11028 * configure.ac: Add --enable-inprocess-agent option.
11029 * configure: Rebuilt.
11030
11031 2010-09-06 Yao Qi <yao@codesourcery.com>
11032
11033 * linux-low.c (linux_kill): Remove unused variable.
11034 (linux_stabilize_threads): Likewise.
11035 * server.c (start_inferior): Likewise.
11036 (queue_stop_reply_callback): Likewise.
11037 * tracepoint.c (do_action_at_tracepoint): Likewise.
11038
11039 2010-09-06 Yao Qi <yao@codesourcery.com>
11040
11041 * linux-low.c (maybe_move_out_of_jump_pad): Restore current_inferior
11042 on return.
11043
11044 2010-09-06 Jan Kratochvil <jan.kratochvil@redhat.com>
11045
11046 * target.c (mywait) <TARGET_WAITKIND_EXITED>: Fix to use INTEGER.
11047
11048 2010-09-06 Pedro Alves <pedro@codesourcery.com>
11049
11050 * Makefile.in (install-only): Replace $IPA_DEPFILES with
11051 "$(IPA_DEPFILES)".
11052
11053 2010-09-01 Joel Brobecker <brobecker@adacore.com>
11054
11055 * gdbserver/lynx-low.c, gdbserver/lynx-low.h,
11056 gdbserver/lynx-ppc-low.c: New files.
11057 * Makefile.in (lynx_low_h): New variable.
11058 (lynx-low.o, lynx-ppc-low.o): New rules.
11059 * configure.ac: On LynxOS, link with -lnetinet.
11060 * configure.srv: Add handling of powerpc-*-lynxos* targets.
11061 * configure: regenerate.
11062
11063 2010-09-01 Joel Brobecker <brobecker@adacore.com>
11064
11065 * Makefile.in (vasprintf.o, vsnprintf.o): New rules.
11066 * configure.ac: Add check for vasprintf and vsnprintf.
11067 * configure, config.in: Regenerate.
11068 * server.h (vasprintf, vsnprintf): Add conditional declarations.
11069
11070 2010-09-01 Joel Brobecker <brobecker@adacore.com>
11071
11072 * gdbreplay.c: Move include of alloca.h up, next to include of
11073 malloc.h.
11074 * server.h: Add include of malloc.h.
11075 * mem-break.c: Remove include of malloc.h.
11076 * server.c, tracepoint.c, utils.c, win32-low.c: Likewise.
11077
11078 2010-09-01 Joel Brobecker <brobecker@adacore.com>
11079
11080 * Makefile.in (memmem.o): Build with -Wno-error.
11081
11082 2010-09-01 Joel Brobecker <brobecker@adacore.com>
11083
11084 * utils.c (xsnprintf): Make non-static.
11085 * server.h: Add xsnprintf declaration.
11086 * linux-low.c, nto-low.c, target.c, thread-db.c, tracepoint.c:
11087 replace calls to snprintf by calls to xsnprintf throughout.
11088
11089 2010-09-01 Joel Brobecker <brobecker@adacore.com>
11090
11091 * configure.ac: Add configure check for alloca.
11092 * configure, config.in: Regenerate.
11093 * server.h: Include alloca.h if it exists.
11094 * gdbreplay.c: Include alloca.h if it exists.
11095
11096 2010-08-28 Pedro Alves <pedro@codesourcery.com>
11097
11098 * linux-low.c (__SIGRTMIN): Define if not already defined.
11099 (linux_create_inferior): Check for __ANDROID__ rather than
11100 __SIGRTMIN.
11101 (enqueue_one_deferred_signal): Don't requeue non-RT signals that
11102 are already deferred.
11103 (linux_wait_1): Check for __ANDROID__ rather than __SIGRTMIN.
11104 (linux_resume_one_thread): Don't queue a SIGSTOP if the lwp is
11105 stopped and already has a pending signal to report.
11106 (proceed_one_lwp): : Don't queue a SIGSTOP if the lwp already has
11107 a pending signal to report or is moving out of a jump pad.
11108 (linux_init_signals): Check for __ANDROID__ rather than
11109 __SIGRTMIN.
11110
11111 2010-08-28 Pedro Alves <pedro@codesourcery.com>
11112
11113 * linux-low.c (linux_stabilize_threads): Wrap debug output in a
11114 debug_threads check. Avoid a linear search when not doing debug
11115 output.
11116
11117 2010-08-27 Pedro Alves <pedro@codesourcery.com>
11118
11119 * event-loop.c (event_handle_func): Adjust to use gdb_fildes_t.
11120 (struct gdb_event) <fd>: Change type to gdb_fildes_t.
11121 (struct file_handler) <fd>: Change type to gdb_fildes_t.
11122 (process_event): Change local fd's type to gdb_fildes_t.
11123 (create_file_handler): Adjust prototype.
11124 (delete_file_handler): Adjust prototype.
11125 (handle_file_event): Adjust prototype. Use pfildes.
11126 (create_file_event): Adjsut prototype.
11127 * remote-utils.c (remote_desc, listen_desc): Change type to
11128 gdb_fildes_t.
11129 * server.h: New gdb_fildes_t typedef.
11130 [USE_WIN32API]: Include winsock2.h.
11131 (delete_file_handler, add_file_handler): Adjust prototypes.
11132 (pfildes): Declare.
11133 * utils.c (pfildes): New.
11134
11135 2010-08-27 Pedro Alves <pedro@codesourcery.com>
11136
11137 * configure.ac (build_warnings): Add -Wno-char-subscripts.
11138 * configure: Regenerate.
11139
11140 2010-08-27 Pedro Alves <pedro@codesourcery.com>
11141
11142 * linux-low.c (linux_unprepare_to_access_memory): Rename to ...
11143 (linux_done_accessing_memory): ... this.
11144 (linux_target_ops): Adjust.
11145 * linux-x86-low.c (x86_insert_point, x86_remove_point): Adjust.
11146 * nto-low.c (nto_target_ops): Adjust comment.
11147 * server.c (gdb_read_memory, gdb_write_memory): Adjust.
11148 * spu-low.c (spu_target_ops): Adjust comment.
11149 * target.h (target_ops): Rename unprepare_to_access_memory field
11150 to done_accessing_memory.
11151 (unprepare_to_access_memory): Rename to ...
11152 (done_accessing_memory): ... this.
11153
11154 2010-08-26 Pedro Alves <pedro@codesourcery.com>
11155
11156 * linux-low.c (linux_prepare_to_access_memory): New.
11157 (linux_unprepare_to_access_memory): New.
11158 (linux_target_ops): Install them.
11159 * server.c (read_memory): Rename to ...
11160 (gdb_read_memory): ... this. Use
11161 prepare_to_access_memory/prepare_to_access_memory.
11162 (write_memory): Rename to ...
11163 (gdb_write_memory): ... this. Use
11164 prepare_to_access_memory/prepare_to_access_memory.
11165 (handle_search_memory_1): Adjust.
11166 (process_serial_event): Adjust.
11167 * target.h (struct target_ops): New fields
11168 prepare_to_access_memory and unprepare_to_access_memory.
11169 (prepare_to_access_memory, unprepare_to_access_memory): New.
11170 * linux-x86-low.c (x86_insert_point, x86_remove_point): Use
11171 prepare_to_access_memory/prepare_to_access_memory.
11172 * nto-low.c (nto_target_ops): Adjust.
11173 * spu-low.c (spu_target_ops): Adjust.
11174 * win32-low.c (win32_target_ops): Adjust.
11175
11176 2010-08-26 Pedro Alves <pedro@codesourcery.com>
11177
11178 * Makefile.in (WARN_CFLAGS): Get it from configure.
11179 (WERROR_CFLAGS): New.
11180 (INTERNAL_CFLAGS): Add WERROR_CFLAGS.
11181 * configure.ac: Introduce --enable-werror, which adds -Werror to
11182 the compiler command line. Enabled by default. Disable with
11183 --disable-werror. Add -Wdeclaration-after-statement
11184 Wpointer-arith and -Wformat-nonliteral to warning flags.
11185 * configure: Regenerate.
11186
11187 2010-08-26 Pedro Alves <pedro@codesourcery.com>
11188
11189 * mem-break.c [HAVE_MALLOC_H]: Include malloc.h.
11190
11191 2010-08-26 Pedro Alves <pedro@codesourcery.com>
11192
11193 * gdbreplay.c (remote_error): New.
11194 (gdbchar): New.
11195 (expect): Use gdbchar. Check for error reading from GDB.
11196 Clarify sync error output.
11197 (play): Check for errors writing to GDB.
11198 * linux-low.c (sigchld_handler): Really ignore `write' errors.
11199 * remote-utils.c (getpkt): Check for errors writing to the remote
11200 descriptor.
11201
11202 2010-08-25 Pedro Alves <pedro@codesourcery.com>
11203
11204 * linux-low.c (linux_wait_1): Move non-debugging code out of
11205 `debug_threads' control.
11206
11207 2010-08-25 Pedro Alves <pedro@codesourcery.com>
11208
11209 * linux-low.c (linux_wait_1): Don't set last_status here.
11210 * server.c (push_event, queue_stop_reply_callback): Assert we're
11211 not pushing a TARGET_WAITKIND_IGNORE event.
11212 (start_inferior, start_inferior, attach_inferior, handle_v_cont)
11213 (myresume, handle_target_event): Set the thread's last_resume_kind
11214 and last_status from the target returned status.
11215
11216 2010-08-25 Pedro Alves <pedro@codesourcery.com>
11217
11218 PR threads/10729
11219
11220 * linux-x86-low.c (update_debug_registers_callback): New.
11221 (i386_dr_low_set_addr): Use it.
11222 (i386_dr_low_get_addr): New.
11223 (i386_dr_low_set_control): Use update_debug_registers_callback.
11224 (i386_dr_low_get_control): New.
11225 (i386_dr_low_get_status): Adjust.
11226 * linux-low.c (linux_stop_lwp): New.
11227 * linux-low.h (linux_stop_lwp): Declare.
11228
11229 * i386-low.c (I386_DR_GET_RW_LEN): Take the dr7 contents as
11230 argument instead of a i386_debug_reg_state.
11231 (I386_DR_WATCH_HIT): Take the dr6 contents as argument instead of
11232 a i386_debug_reg_state.
11233 (i386_insert_aligned_watchpoint): Adjust.
11234 (i386_remove_aligned_watchpoint): Adjust.
11235 (i386_low_stopped_data_address): Read the debug registers from the
11236 inferior instead of from the mirrors.
11237 * i386-low.h (struct i386_debug_reg_state): Extend comment.
11238 (i386_dr_low_get_addr): Declare.
11239 (i386_dr_low_get_control): Declare.
11240 (i386_dr_low_get_status): Change prototype.
11241
11242 * win32-i386-low.c (dr_status_mirror, dr_control_mirror): New globals.
11243 (i386_dr_low_get_addr): New.
11244 (i386_dr_low_get_control): New.
11245 (i386_dr_low_get_status): Adjust prototype. Return
11246 dr_status_mirror.
11247 (i386_initial_stuff): Clear dr_status_mirror and
11248 dr_control_mirror.
11249 (i386_get_thread_context): Adjust.
11250 (i386_set_thread_context): Adjust.
11251 (i386_thread_added): Adjust.
11252
11253 2010-08-24 Pedro Alves <pedro@codesourcery.com>
11254
11255 * linux-low.h (linux_thread_area): Delete declaration.
11256
11257 2010-08-11 Thomas Schwinge <thomas@codesourcery.com>
11258
11259 * linux-low.c (linux_wait_1): Correctly return the ptid of the child
11260 after its termination.
11261
11262 2010-08-09 Pedro Alves <pedro@codesourcery.com>
11263
11264 * linux-low.c (gdb_wants_lwp_stopped): Delete.
11265 (gdb_wants_all_stopped): Delete.
11266 (linux_wait_1): Don't call them.
11267 * server.c (handle_v_cont): Tag all threads as want-stopped.
11268 (gdb_wants_thread_stopped): Fix comments. Tag the thread that
11269 stopped as "client-wants-stopped".
11270
11271 2010-07-31 Pedro Alves <pedro@codesourcery.com>
11272
11273 * Makefile.in (signals_h): New.
11274 (server_h): Depend on it.
11275 (server.o): Don't depend on $(signals_def).
11276 (signals.o): Depend on $(signals_def).
11277
11278 2010-07-31 Jan Kratochvil <jan.kratochvil@redhat.com>
11279
11280 * Makefile.in (signals_def): New.
11281 (server_h): Append include/gdb/signals.h and signals_def.
11282 (server.o): Append signals_def.
11283
11284 2010-07-25 Jan Kratochvil <jan.kratochvil@redhat.com>
11285
11286 * server.c (handle_target_event): Use target_signal_to_host for
11287 resume_info.sig initialization.
11288 * target.h (struct thread_resume) <sig>: New comment.
11289
11290 2010-07-20 Ozkan Sezer <sezeroz@gmail.com>
11291
11292 * server.c (handle_query): strcpy() the returned string from paddress()
11293 instead of sprintf().
11294 * utils.c (paddress): Return phex_nz().
11295
11296 2010-07-07 Joel Brobecker <brobecker@adacore.com>
11297
11298 * server.c (handle_v_cont): Call mourn_inferior if process
11299 just exited.
11300 (myresume): Likewise.
11301
11302 2010-07-01 Pedro Alves <pedro@codesourcery.com>
11303
11304 Static tracepoints, and integration with UST.
11305
11306 * configure.ac: Handle --with-ust. substitute ustlibs and ustinc.
11307 * mem-break.c (uninsert_all_breakpoints)
11308 (reinsert_all_breakpoints): New.
11309 * mem-break.h (reinsert_all_breakpoints, uninsert_all_breakpoints):
11310 * tracepoint.c (ust_loaded, helper_thread_id, cmd_buf): New.
11311 (gdb_agent_ust_loaded, helper_thread_id)
11312 (gdb_agent_helper_thread_id): New macros.
11313 (struct ipa_sym_addresses): Add addr_ust_loaded,
11314 addr_helper_thread_id, addr_cmd_buf.
11315 (symbol_list): Add ust_loaded, helper_thread_id, cmd_buf.
11316 (in_process_agent_loaded_ust): New.
11317 (write_e_ust_not_loaded): New.
11318 (maybe_write_ipa_ust_not_loaded): New.
11319 (struct collect_static_trace_data_action): New.
11320 (enum tracepoint_type) <static_tracepoint>: New.
11321 (struct tracepoint) <handle>: Mention static tracepoints.
11322 (struct static_tracepoint_ctx): New.
11323 (CMD_BUF_SIZE): New.
11324 (add_tracepoint_action): Handle static tracepoint actions.
11325 (unprobe_marker_at): New.
11326 (clear_installed_tracepoints): Handle static tracepoints.
11327 (cmd_qtdp): Handle static tracepoints.
11328 (probe_marker_at): New.
11329 (cmd_qtstart): Handle static tracepoints.
11330 (response_tracepoint): Handle static tracepoints.
11331 (cmd_qtfstm, cmd_qtsstm, cmd_qtstmat): New.
11332 (handle_tracepoint_query): Handle qTfSTM, qTsSTM and qTSTMat.
11333 (get_context_regcache): Handle static tracepoints.
11334 (do_action_at_tracepoint): Handle static tracepoint actions.
11335 (traceframe_find_block_type): Handle static trace data blocks.
11336 (traceframe_read_sdata): New.
11337 (download_tracepoints): Download static tracepoint actions.
11338 [HAVE_UST] Include ust/ust.h, dlfcn.h, sys/socket.h, and sys/un.h.
11339 (GDB_PROBE_NAME): New.
11340 (ust_ops): New.
11341 (GET_UST_SYM): New.
11342 (USTF): New.
11343 (dlsym_ust): New.
11344 (ust_marker_to_static_tracepoint): New.
11345 (gdb_probe): New.
11346 (collect_ust_data_at_tracepoint): New.
11347 (gdb_ust_probe): New.
11348 (UNIX_PATH_MAX, SOCK_DIR): New.
11349 (gdb_ust_connect_sync_socket): New.
11350 (resume_thread, stop_thread): New.
11351 (run_inferior_command): New.
11352 (init_named_socket): New.
11353 (gdb_ust_socket_init): New.
11354 (cstr_to_hexstr): New.
11355 (next_st): New.
11356 (first_marker, next_marker): New.
11357 (response_ust_marker): New.
11358 (cmd_qtfstm, cmd_qtsstm): New.
11359 (unprobe_marker_at, probe_marker_at): New.
11360 (cmd_qtstmat, gdb_ust_thread): New.
11361 (gdb_ust_init): New.
11362 (initialize_tracepoint_ftlib): Call gdb_ust_init.
11363 * linux-amd64-ipa.c [HAVE_UST]: Include ust/processor.h
11364 (ST_REGENTRY): New.
11365 (x86_64_st_collect_regmap): New.
11366 (X86_64_NUM_ST_COLLECT_GREGS): New.
11367 (AMD64_RIP_REGNUM): New.
11368 (supply_static_tracepoint_registers): New.
11369 * linux-i386-ipa.c [HAVE_UST]: Include ust/processor.h
11370 (ST_REGENTRY): New.
11371 (i386_st_collect_regmap): New.
11372 (i386_NUM_ST_COLLECT_GREGS): New.
11373 (supply_static_tracepoint_registers): New.
11374 * server.c (handle_query): Handle qXfer:statictrace:read.
11375 <qSupported>: Report support for StaticTracepoints, and
11376 qXfer:statictrace:read features.
11377 * server.h (traceframe_read_sdata)
11378 (supply_static_tracepoint_registers): Declare.
11379 * remote-utils.c (convert_int_to_ascii, hexchars, ishex, tohex)
11380 (unpack_varlen_hex): Include in IPA build.
11381 * Makefile.in (ustlibs, ustinc): New.
11382 (IPA_OBJS): Add remote-utils-ipa.o.
11383 ($(IPA_LIB)): Link -ldl and -lpthread.
11384 (UST_CFLAGS): New.
11385 (IPAGENT_CFLAGS): Add UST_CFLAGS.
11386 * config.in, configure: Regenerate.
11387
11388 2010-06-20 Ian Lance Taylor <iant@google.com>
11389 Pedro Alves <pedro@codesourcery.com>
11390
11391 * linux-x86-low.c (always_true): Delete.
11392 (EMIT_ASM, EMIT_ASM32): Use an uncondition asm jmp instead of
11393 trying to fool the compiler with always_true.
11394
11395 2010-06-20 Pedro Alves <pedro@codesourcery.com>
11396
11397 * tracepoint.c (condition_true_at_tracepoint): Don't run compiled
11398 conditions in gdbserver.
11399
11400 2010-06-19 Ulrich Weigand <uweigand@de.ibm.com>
11401
11402 * spu-low.c (spu_read_memory): Wrap around local store limit.
11403 (spu_write_memory): Likewise.
11404
11405 2010-06-15 Pedro Alves <pedro@codesourcery.com>
11406
11407 * linux-x86-low.c (amd64_emit_const, amd64_emit_void_call_2)
11408 (i386_emit_const, i386_emit_void_call_2): Replace int64_t uses with
11409 LONGEST uses.
11410 * server.h (struct emit_ops): Replace int64_t uses with LONGEST
11411 uses.
11412 * tracepoint.c (emit_const, emit_void_call_2): Replace int64_t
11413 uses with LONGEST uses.
11414
11415 2010-06-14 Stan Shebs <stan@codesourcery.com>
11416 Pedro Alves <pedro@codesourcery.com>
11417
11418 Bytecode compiler.
11419
11420 * linux-x86-low.c: Include limits.h.
11421 (add_insns): New.
11422 (always_true): New.
11423 (EMIT_ASM): New.
11424 (EMIT_ASM32): New.
11425 (amd64_emit_prologue, amd64_emit_epilogue, amd64_emit_add)
11426 (amd64_emit_sub, amd64_emit_mul, amd64_emit_lsh)
11427 (amd64_emit_rsh_signed, amd64_emit_rsh_unsigned, amd64_emit_ext,
11428 (amd64_emit_log_not, amd64_emit_bit_and, amd64_emit_bit_or)
11429 (amd64_emit_bit_xor, amd64_emit_bit_not, amd64_emit_equal,
11430 (amd64_emit_less_signed, amd64_emit_less_unsigned, amd64_emit_ref,
11431 (amd64_emit_if_goto, amd64_emit_goto, amd64_write_goto_address)
11432 (amd64_emit_const, amd64_emit_call, amd64_emit_reg)
11433 (amd64_emit_pop, amd64_emit_stack_flush, amd64_emit_zero_ext)
11434 (amd64_emit_swap, amd64_emit_stack_adjust, amd64_emit_int_call_1)
11435 (amd64_emit_void_call_2): New.
11436 (amd64_emit_ops): New.
11437 (i386_emit_prologue, i386_emit_epilogue, i386_emit_add)
11438 (i386_emit_sub,i386_emit_mul, i386_emit_lsh, i386_emit_rsh_signed)
11439 (i386_emit_rsh_unsigned, i386_emit_ext, i386_emit_log_not)
11440 (i386_emit_bit_and, i386_emit_bit_or, i386_emit_bit_xor)
11441 (i386_emit_bit_not, i386_emit_equal, i386_emit_less_signed)
11442 (i386_emit_less_unsigned, i386_emit_ref, i386_emit_if_goto)
11443 (i386_emit_goto, i386_write_goto_address, i386_emit_const)
11444 (i386_emit_call, i386_emit_reg, i386_emit_pop)
11445 (i386_emit_stack_flush, i386_emit_zero_ext, i386_emit_swap)
11446 (i386_emit_stack_adjust, i386_emit_int_call_1)
11447 (i386_emit_void_call_2): New.
11448 (i386_emit_ops): New.
11449 (x86_emit_ops): New.
11450 (the_low_target): Install x86_emit_ops.
11451 * server.h (struct emit_ops): New.
11452 (get_raw_reg_func_addr): Declare.
11453 (current_insn_ptr, emit_error): Declare.
11454 * tracepoint.c (get_raw_reg, get_trace_state_variable_value)
11455 (set_trace_state_variable_value): New defines.
11456 (struct ipa_sym_addresses): New fields addr_get_raw_reg,
11457 addr_get_trace_state_variable_value and
11458 addr_set_trace_state_variable_value.
11459 (symbol_list): New fields for get_raw_reg,
11460 get_trace_state_variable_value and set_trace_state_variable_value.
11461 (condfn): New typedef.
11462 (struct tracepoint): New field `compiled_cond'.
11463 (do_action_at_tracepoint): Clear compiled_cond.
11464 (get_trace_state_variable_value, set_trace_state_variable_value):
11465 Export in the IPA.
11466 (condition_true_at_tracepoint): If there's a compiled condition,
11467 run that.
11468 (current_insn_ptr, emit_error): New globals.
11469 (struct bytecode_address): New.
11470 (get_raw_reg_func_addr): New.
11471 (emit_prologue, emit_epilogue, emit_add, emit_sub, emit_mul)
11472 (emit_lsh, emit_rsh_signed, emit_rsh_unsigned, emit_ext)
11473 (emit_log_not, emit_bit_and, emit_bit_or, emit_bit_xor)
11474 (emit_bit_not, emit_equal, emit_less_signed, emit_less_unsigned)
11475 (emit_ref, emit_if_goto, emit_goto, write_goto_address, emit_const)
11476 (emit_reg, emit_pop, emit_stack_flush, emit_zero_ext, emit_swap)
11477 (emit_stack_adjust, emit_int_call_1, emit_void_call_2): New.
11478 (compile_tracepoint_condition, compile_bytecodes): New.
11479 * target.h (emit_ops): Forward declare.
11480 (struct target_ops): New field emit_ops.
11481 (target_emit_ops): New.
11482 * linux-amd64-ipa.c (gdb_agent_get_raw_reg): New.
11483 * linux-i386-ipa.c (gdb_agent_get_raw_reg): New.
11484 * linux-low.c (linux_emit_ops): New.
11485 (linux_target_ops): Install it.
11486 * linux-low.h (struct linux_target_ops): New field emit_ops.
11487
11488 2010-06-14 Ulrich Weigand <uweigand@de.ibm.com>
11489
11490 * linux-ppc-low.c (ppc_arch_setup): Use private regcache to test MSR.
11491 * linux-s390-low.c (ppc_arch_setup): Use private regcache to test PSW.
11492
11493 2010-06-01 Pedro Alves <pedro@codesourcery.com>
11494 Stan Shebs <stan@codesourcery.com>
11495
11496 * Makefile.in (IPA_DEPFILES, extra_libraries): New.
11497 (all): Depend on $(extra_libraries).
11498 (install-only): Install the IPA.
11499 (IPA_OBJS, IPA_LIB): New.
11500 (clean): Remove the IPA lib.
11501 (IPAGENT_CFLAGS): New.
11502 (tracepoint-ipa.o, utils-ipa.o, remote-utils-ipa.o)
11503 (regcache-ipa.o, i386-linux-ipa.o, linux-i386-ipa.o)
11504 (linux-amd64-ipa.o, amd64-linux-ipa.o): New rules.
11505 * linux-amd64-ipa.c, linux-i386-ipa.c: New files.
11506 * configure.ac: Check for atomic builtins support in the compiler.
11507 (IPA_DEPFILES, extra_libraries): Define.
11508 * configure.srv (ipa_obj): Add description.
11509 (ipa_i386_linux_regobj, ipa_amd64_linux_regobj): Define.
11510 (i[34567]86-*-linux*): Set ipa_obj.
11511 (x86_64-*-linux*): Set ipa_obj.
11512 * linux-low.c (stabilizing_threads): New.
11513 (supports_fast_tracepoints): New.
11514 (linux_detach): Stabilize threads before detaching.
11515 (handle_tracepoints): Handle internal tracing breakpoints. Assert
11516 the lwp is either not stabilizing, or is moving out of a jump pad.
11517 (linux_fast_tracepoint_collecting): New.
11518 (maybe_move_out_of_jump_pad): New.
11519 (enqueue_one_deferred_signal): New.
11520 (dequeue_one_deferred_signal): New.
11521 (linux_wait_for_event_1): If moving out of a jump pad, defer
11522 pending signals to later.
11523 (linux_stabilize_threads): New.
11524 (linux_wait_1): Check if threads need moving out of jump pads, and
11525 do it if so.
11526 (stuck_in_jump_pad_callback): New.
11527 (move_out_of_jump_pad_callback): New.
11528 (lwp_running): New.
11529 (linux_resume_one_lwp): Handle moving out of jump pads.
11530 (linux_set_resume_request): Dequeue deferred signals.
11531 (need_step_over_p): Also step over fast tracepoint jumps.
11532 (start_step_over): Also uninsert fast tracepoint jumps.
11533 (finish_step_over): Also reinsert fast tracepoint jumps.
11534 (linux_install_fast_tracepoint_jump): New.
11535 (linux_target_ops): Install linux_stabilize_threads and
11536 linux_install_fast_tracepoint_jump_pad.
11537 * linux-low.h (linux_target_ops) <get_thread_area,
11538 install_fast_tracepoint_jump_pad>: New fields.
11539 (struct lwp_info) <collecting_fast_tracepoint,
11540 pending_signals_to_report, exit_jump_pad_bkpt>: New fields.
11541 (linux_get_thread_area): Declare.
11542 * linux-x86-low.c (jump_insn): New.
11543 (x86_get_thread_area): New.
11544 (append_insns): New.
11545 (push_opcode): New.
11546 (amd64_install_fast_tracepoint_jump_pad): New.
11547 (i386_install_fast_tracepoint_jump_pad): New.
11548 (x86_install_fast_tracepoint_jump_pad): New.
11549 (the_low_target): Install x86_get_thread_area and
11550 x86_install_fast_tracepoint_jump_pad.
11551 * mem-break.c (set_raw_breakpoint_at): Use read_inferior_memory.
11552 (struct fast_tracepoint_jump): New.
11553 (fast_tracepoint_jump_insn): New.
11554 (fast_tracepoint_jump_shadow): New.
11555 (find_fast_tracepoint_jump_at): New.
11556 (fast_tracepoint_jump_here): New.
11557 (delete_fast_tracepoint_jump): New.
11558 (set_fast_tracepoint_jump): New.
11559 (uninsert_fast_tracepoint_jumps_at): New.
11560 (reinsert_fast_tracepoint_jumps_at): New.
11561 (set_breakpoint_at): Use write_inferior_memory.
11562 (uninsert_raw_breakpoint): Use write_inferior_memory.
11563 (check_mem_read): Mask out fast tracepoint jumps.
11564 (check_mem_write): Mask out fast tracepoint jumps.
11565 * mem-break.h (struct fast_tracepoint_jump): Forward declare.
11566 (set_fast_tracepoint_jump): Declare.
11567 (delete_fast_tracepoint_jump)
11568 (fast_tracepoint_jump_here, uninsert_fast_tracepoint_jumps_at)
11569 (reinsert_fast_tracepoint_jumps_at): Declare.
11570 * regcache.c: Don't compile many functions when building the
11571 in-process agent library.
11572 (init_register_cache) [IN_PROCESS_AGENT]: Don't allow allocating
11573 the register buffer in the heap.
11574 (free_register_cache): If the register buffer isn't owned by the
11575 regcache, don't free it.
11576 (set_register_cache) [IN_PROCESS_AGENT]: Don't re-alocate
11577 pre-existing register caches.
11578 * remote-utils.c (convert_int_to_ascii): Constify `from' parameter
11579 type.
11580 (convert_ascii_to_int): : Constify `from' parameter type.
11581 (decode_M_packet, decode_X_packet): Replace the `to' parameter by
11582 a `to_p' pointer to pointer parameter. If TO_P is NULL, malloc
11583 the needed buffer in-place.
11584 (relocate_instruction): New.
11585 * server.c (handle_query) <qSymbols>: If the target supports
11586 tracepoints, give it a chance of looking up symbols. Report
11587 support for fast tracepoints.
11588 (handle_status): Stabilize threads.
11589 (process_serial_event): Adjust.
11590 * server.h (struct fast_tracepoint_jump): Forward declare.
11591 (struct process_info) <fast_tracepoint_jumps>: New field.
11592 (convert_ascii_to_int, convert_int_to_ascii): Adjust.
11593 (decode_X_packet, decode_M_packet): Adjust.
11594 (relocate_instruction): Declare.
11595 (in_process_agent_loaded): Declare.
11596 (tracepoint_look_up_symbols): Declare.
11597 (struct fast_tpoint_collect_status): Declare.
11598 (fast_tracepoint_collecting): Declare.
11599 (force_unlock_trace_buffer): Declare.
11600 (handle_tracepoint_bkpts): Declare.
11601 (initialize_low_tracepoint)
11602 (supply_fast_tracepoint_registers) [IN_PROCESS_AGENT]: Declare.
11603 * target.h (struct target_ops) <stabilize_threads,
11604 install_fast_tracepoint_jump_pad>: New fields.
11605 (stabilize_threads, install_fast_tracepoint_jump_pad): New.
11606 * tracepoint.c [HAVE_MALLOC_H]: Include malloc.h.
11607 [HAVE_STDINT_H]: Include stdint.h.
11608 (trace_debug_1): Rename to ...
11609 (trace_vdebug): ... this.
11610 (trace_debug): Rename to ...
11611 (trace_debug_1): ... this. Add `level' parameter.
11612 (trace_debug): New.
11613 (ATTR_USED, ATTR_NOINLINE): New.
11614 (IP_AGENT_EXPORT): New.
11615 (gdb_tp_heap_buffer, gdb_jump_pad_buffer, gdb_jump_pad_buffer_end)
11616 (collecting, gdb_collect, stop_tracing, flush_trace_buffer)
11617 (about_to_request_buffer_space, trace_buffer_is_full)
11618 (stopping_tracepoint, expr_eval_result, error_tracepoint)
11619 (tracepoints, tracing, trace_buffer_ctrl, trace_buffer_ctrl_curr)
11620 (trace_buffer_lo, trace_buffer_hi, traceframe_read_count)
11621 (traceframe_write_count, traceframes_created)
11622 (trace_state_variables)
11623 New renaming defines.
11624 (struct ipa_sym_addresses): New.
11625 (STRINGIZE_1, STRINGIZE, IPA_SYM): New.
11626 (symbol_list): New.
11627 (ipa_sym_addrs): New.
11628 (all_tracepoint_symbols_looked_up): New.
11629 (in_process_agent_loaded): New.
11630 (write_e_ipa_not_loaded): New.
11631 (maybe_write_ipa_not_loaded): New.
11632 (tracepoint_look_up_symbols): New.
11633 (debug_threads) [IN_PROCESS_AGENT]: New.
11634 (read_inferior_memory) [IN_PROCESS_AGENT]: New.
11635 (UNKNOWN_SIDE_EFFECTS): New.
11636 (stop_tracing): New.
11637 (flush_trace_buffer): New.
11638 (stop_tracing_bkpt): New.
11639 (flush_trace_buffer_bkpt): New.
11640 (read_inferior_integer): New.
11641 (read_inferior_uinteger): New.
11642 (read_inferior_data_pointer): New.
11643 (write_inferior_data_pointer): New.
11644 (write_inferior_integer): New.
11645 (write_inferior_uinteger): New.
11646 (struct collect_static_trace_data_action): Delete.
11647 (enum tracepoint_type): New.
11648 (struct tracepoint) <type>: New field `type'.
11649 <actions_str, step_actions, step_actions_str>: Only include in
11650 GDBserver.
11651 <orig_size, obj_addr_on_target, adjusted_insn_addr>
11652 <adjusted_insn_addr_end, jump_pad, jump_pad_end>: New fields.
11653 (tracepoints): Use IP_AGENT_EXPORT.
11654 (last_tracepoint): Don't include in the IPA.
11655 (stopping_tracepoint): Use IP_AGENT_EXPORT.
11656 (trace_buffer_is_full): Use IP_AGENT_EXPORT.
11657 (alloced_trace_state_variables): New.
11658 (trace_state_variables): Use IP_AGENT_EXPORT.
11659 (traceframe_t): Delete unused variable.
11660 (circular_trace_buffer): Don't include in the IPA.
11661 (trace_buffer_start): Delete.
11662 (struct trace_buffer_control): New.
11663 (trace_buffer_free): Delete.
11664 (struct ipa_trace_buffer_control): New.
11665 (GDBSERVER_FLUSH_COUNT_MASK, GDBSERVER_FLUSH_COUNT_MASK_PREV)
11666 (GDBSERVER_FLUSH_COUNT_MASK_CURR, GDBSERVER_UPDATED_FLUSH_COUNT_BIT):
11667 New.
11668 (trace_buffer_ctrl): New.
11669 (TRACE_BUFFER_CTRL_CURR): New.
11670 (trace_buffer_start, trace_buffer_free, trace_buffer_end_free):
11671 Reimplement as macros.
11672 (trace_buffer_wrap): Delete.
11673 (traceframe_write_count, traceframe_read_count)
11674 (traceframes_created, tracing): Use IP_AGENT_EXPORT.
11675 (struct tracepoint_hit_ctx) <type>: New field.
11676 (struct fast_tracepoint_ctx): New.
11677 (memory_barrier): New.
11678 (cmpxchg): New.
11679 (record_tracepoint_error): Update atomically in the IPA.
11680 (clear_inferior_trace_buffer): New.
11681 (about_to_request_buffer_space): New.
11682 (trace_buffer_alloc): Handle GDBserver and inferior simulatenous
11683 updating the same buffer.
11684 (add_tracepoint): Default the tracepoint's type to trap
11685 tracepoint, and orig_size to -1.
11686 (get_trace_state_variable) [IN_PROCESS_AGENT]: Handle allocated
11687 internal variables.
11688 (create_trace_state_variable): New parameter `gdb'. Handle it.
11689 (clear_installed_tracepoints): Clear fast tracepoint jumps.
11690 (cmd_qtdp): Handle fast tracepoints.
11691 (cmd_qtdv): Adjust.
11692 (max_jump_pad_size): New.
11693 (gdb_jump_pad_head): New.
11694 (get_jump_space_head): New.
11695 (claim_jump_space): New.
11696 (sort_tracepoints): New.
11697 (MAX_JUMP_SIZE): New.
11698 (cmd_qtstart): Handle fast tracepoints. Sync tracepoints with the
11699 IPA.
11700 (stop_tracing) [IN_PROCESS_AGENT]: Don't include the tdisconnected
11701 support. Upload fast traceframes, and delete internal IPA
11702 breakpoints.
11703 (stop_tracing_handler): New.
11704 (flush_trace_buffer_handler): New.
11705 (cmd_qtstop): Upload fast tracepoints.
11706 (response_tracepoint): Handle fast tracepoints.
11707 (tracepoint_finished_step): Upload fast traceframes. Set the
11708 tracepoint hit context's tracepoint type.
11709 (handle_tracepoint_bkpts): New.
11710 (tracepoint_was_hit): Set the tracepoint hit context's tracepoint
11711 type. Add comment about fast tracepoints.
11712 (collect_data_at_tracepoint) [IN_PROCESS_AGENT]: Don't access the
11713 non-existing action_str field.
11714 (get_context_regcache): Handle fast tracepoints.
11715 (do_action_at_tracepoint) [!IN_PROCESS_AGENT]: Don't write the PC
11716 to the regcache.
11717 (fast_tracepoint_from_jump_pad_address): New.
11718 (fast_tracepoint_from_ipa_tpoint_address): New.
11719 (collecting_t): New.
11720 (force_unlock_trace_buffer): New.
11721 (fast_tracepoint_collecting): New.
11722 (collecting): New.
11723 (gdb_collect): New.
11724 (write_inferior_data_ptr): New.
11725 (target_tp_heap): New.
11726 (target_malloc): New.
11727 (download_agent_expr): New.
11728 (UALIGN): New.
11729 (download_tracepoints): New.
11730 (download_trace_state_variables): New.
11731 (upload_fast_traceframes): New.
11732 (IPA_FIRST_TRACEFRAME): New.
11733 (IPA_NEXT_TRACEFRAME_1): New.
11734 (IPA_NEXT_TRACEFRAME): New.
11735 [IN_PROCESS_AGENT]: Include sys/mman.h and fcntl.h.
11736 [IN_PROCESS_AGENT] (gdb_tp_heap_buffer, gdb_jump_pad_buffer)
11737 (gdb_jump_pad_buffer_end): New.
11738 [IN_PROCESS_AGENT] (initialize_tracepoint_ftlib): New.
11739 (initialize_tracepoint): Adjust.
11740 [IN_PROCESS_AGENT]: Allocate the IPA heap, and jump pad scratch
11741 buffer. Initialize the low module.
11742 * utils.c (PREFIX, TOOLNAME): New.
11743 (malloc_failure): Use PREFIX.
11744 (error): In the IPA, an error causes an exit.
11745 (fatal, warning): Use PREFIX.
11746 (internal_error): Use TOOLNAME.
11747 (NUMCELLS): Increase to 10.
11748 * configure, config.in: Regenerate.
11749
11750 2010-06-01 Pedro Alves <pedro@codesourcery.com>
11751
11752 * server.c (handle_query) <qSupported>: Do two passes over the
11753 qSupported string to avoid nesting strtok.
11754
11755 2010-05-28 Jan Kratochvil <jan.kratochvil@redhat.com>
11756
11757 * Makefile.in (SFILES): Add $(srcdir)/proc-service.list.
11758 (CDEPS): New.
11759 * configure.ac (RDYNAMIC): New AC_MSG_CHECKING wrapping. Test also
11760 -Wl,--dynamic-list.
11761 * configure: Regenerate.
11762 * proc-service.list: New.
11763
11764 2010-05-28 Jan Kratochvil <jan.kratochvil@redhat.com>
11765
11766 * linux-low.c (linux_core_of_thread): Fix crash on invalid CONTENT.
11767 New comment.
11768
11769 2010-05-26 Ozkan Sezer <sezeroz@gmail.com>
11770
11771 * gdbreplay.c (remote_open): Check error return from socket() call by
11772 its equality to -1 not by it being negative.
11773 * remote-utils.c (remote_open): Likewise.
11774
11775 2010-05-23 Pedro Alves <pedro@codesourcery.com>
11776
11777 * config.h: Regenerate.
11778
11779 2010-05-19 Maxim Kuvyrkov <maxim@codesourcery.com>
11780
11781 * linux-m68k-low.c (ps_get_thread_area): Don't define if kernel
11782 doesn't provide PTRACE_GET_THREAD_AREA.
11783
11784 2010-05-19 Maxim Kuvyrkov <maxim@codesourcery.com>
11785
11786 * linux-m68k-low.c: Include <asm/ptrace.h>
11787 (ps_get_thread_area): Implement.
11788
11789 2010-05-03 Doug Evans <dje@google.com>
11790
11791 * event-loop.c (struct callback_event): New struct.
11792 (callback_list): New global.
11793 (append_callback_event, delete_callback_event): New functions.
11794 (process_callback): New function.
11795 (start_event_loop): Call it.
11796 * remote-utils.c (NOT_SCHEDULED): Define.
11797 (readchar_buf, readchar_bufcnt, readchar_bufp): New static globals,
11798 moved out of readchar.
11799 (readchar): Rewrite. Call reschedule before returning.
11800 (reset_readchar): New function.
11801 (remote_close): Call it.
11802 (process_remaining, reschedule): New functions.
11803 * server.h (callback_handler_func): New typedef.
11804 (append_callback_event, delete_callback_event): Declare.
11805
11806 2010-05-03 Pedro Alves <pedro@codesourcery.com>
11807
11808 * proc-service.c (ps_pglobal_lookup): Use
11809 thread_db_look_up_one_symbol.
11810 * remote-utils.c (look_up_one_symbol): Add new `may_ask_gdb'
11811 parameter. Use it instead of all_symbols_looked_up.
11812 * server.h (struct process_info) <all_symbols_looked_up>: Delete
11813 field.
11814 (all_symbols_looked_up): Don't declare.
11815 (look_up_one_symbol): Add new `may_ask_gdb' parameter.
11816 * thread-db.c (struct thread_db) <all_symbols_looked_up>: New
11817 field.
11818 (thread_db_look_up_symbols): Adjust call to look_up_one_symbol.
11819 Set all_symbols_looked_up here.
11820 (thread_db_look_up_one_symbol): New.
11821 (thread_db_get_tls_address): Adjust.
11822 (thread_db_load_search, try_thread_db_load_1): Always allocate the
11823 thread_db object on the heap, and tentatively set it in the
11824 process structure.
11825 (thread_db_init): Don't set all_symbols_looked_up here.
11826 * linux-low.h (thread_db_look_up_one_symbol): Declare.
11827
11828 2010-05-03 Pedro Alves <pedro@codesourcery.com>
11829
11830 * linux-low.c (linux_kill, linux_detach): Adjust.
11831 (status_pending_p_callback): Remove redundant statement. Check
11832 for !TARGET_WAITIKIND_IGNORE, instead of
11833 TARGET_WAITKIND_STOPPED.
11834 (handle_tracepoints): Make sure LWP is locked. Adjust.
11835 (linux_wait_for_event_1): Adjust.
11836 (linux_cancel_breakpoints): New.
11837 (unsuspend_one_lwp): New.
11838 (unsuspend_all_lwps): New.
11839 (linux_wait_1): If finishing a step-over, unsuspend all lwps.
11840 (send_sigstop_callback): Change return type to int, add new
11841 `except' parameter and handle it.
11842 (suspend_and_send_sigstop_callback): New.
11843 (stop_all_lwps): Add new `suspend' and `expect' parameters, and
11844 pass them down. If SUSPEND, also increment the lwp's suspend
11845 count.
11846 (linux_resume_one_lwp): Add notice about resuming a suspended LWP.
11847 (need_step_over_p): Don't consider suspended LWPs.
11848 (start_step_over): Adjust.
11849 (proceed_one_lwp): Change return type to int, add new `except'
11850 parameter and handle it.
11851 (unsuspend_and_proceed_one_lwp): New.
11852 (proceed_all_lwps): Use find_inferior instead of
11853 for_each_inferior.
11854 (unstop_all_lwps): Add `unsuspend' parameter. If UNSUSPEND, them
11855 also decrement the suspend count of LWPs. Pass `except' down,
11856 instead of hacking its suspend count.
11857 (linux_pause_all): Add `freeze' parameter. Adjust.
11858 (linux_unpause_all): New.
11859 (linux_target_ops): Install linux_unpause_all.
11860 * server.c (handle_status): Adjust.
11861 * target.h (struct target_ops): New fields `unpause_all' and
11862 `cancel_breakpoints'. Add new parameter to `pause_all'.
11863 (pause_all): Add new `freeze' parameter.
11864 (unpause_all): New.
11865 (cancel_breakpoints): New.
11866 * tracepoint.c (clear_installed_tracepoints): Pause threads, and
11867 cancel breakpoints.
11868 (cmd_qtstart): Pause threads.
11869 (stop_tracing): Pause threads, and cancel breakpoints.
11870 * win32-low.c (win32_target_ops): Adjust.
11871
11872 2010-05-03 Pedro Alves <pedro@codesourcery.com>
11873
11874 * linux-low.c (linux_wait_for_event_1): Move passing the signal to
11875 the inferior right away from here...
11876 (linux_wait_1): ... to here, and adjust to check the thread's
11877 last_resume_kind instead of the lwp's step or stop_expected flags.
11878
11879 2010-05-02 Pedro Alves <pedro@codesourcery.com>
11880
11881 * README: Use consistent `GDB' and `GDBserver' spellings.
11882
11883 2010-05-02 Pedro Alves <pedro@codesourcery.com>
11884
11885 * linux-low.c (linux_kill_one_lwp): Assume the lwp is stopped.
11886 (linux_kill): Stop all lwps here. Don't delete the main lwp here.
11887 (linux_detach_one_lwp): Assume the lwp is stopped.
11888 (any_thread_of): Delete.
11889 (linux_detach): Stop all lwps here. Don't blindly delete all
11890 breakpoints.
11891 (delete_lwp_callback): New.
11892 (linux_mourn): Delete all lwps of the process that is gone.
11893 (linux_wait_1): Don't delete the last lwp of the process here.
11894 * mem-break.h (mark_breakpoints_out): Declare.
11895 * mem-break.c (mark_breakpoints_out): New.
11896 (free_all_breakpoints): Use it.
11897 * server.c (handle_target_event): If the process is gone, mark
11898 breakpoints out.
11899 * thread-db.c (struct thread_db) <create_bp>: New field.
11900 (thread_db_enable_reporting): Fix prototype. Store a thread event
11901 breakpoint reference in the thread_db struct.
11902 (thread_db_load_search): Clear the thread_db object.
11903 (try_thread_db_load_1): Ditto.
11904 (switch_to_process): New.
11905 (disable_thread_event_reporting): Use it.
11906 (remove_thread_event_breakpoints): New.
11907 (thread_db_detach, thread_db_mourn): Use it.
11908
11909 2010-05-01 Pedro Alves <pedro@codesourcery.com>
11910
11911 * linux-low.c (linux_enable_event_reporting): New.
11912 (linux_wait_for_event_1, handle_extended_wait): Use it.
11913
11914 2010-04-30 Pedro Alves <pedro@codesourcery.com>
11915
11916 * linux-low.c (linux_kill_one_lwp, linux_kill)
11917 (linux_detach_one_lwp): Adjust to send_sigstop interface change.
11918 (send_sigstop): Take an lwp_info as parameter instead. Queue a
11919 SIGSTOP even if the LWP is stopped.
11920 (send_sigstop_callback): New.
11921 (stop_all_lwps): Use send_sigstop_callback instead.
11922 (linux_resume_one_thread): Adjust.
11923 (proceed_one_lwp): Still proceed an LWP that the client has
11924 requested to stop, if we haven't reported it as stopped yet. Make
11925 sure that LWPs the client want stopped, have a pending SIGSTOP.
11926
11927 2010-04-26 Doug Evans <dje@google.com>
11928
11929 * server.c (handle_general_set): Make static.
11930
11931 * remote-utils.c (putpkt_binary_1): Call readchar instead of read.
11932 Print received char after testing for error/eof instead of before.
11933 (input_interrupt): Tweak comment.
11934
11935 2010-04-23 Doug Evans <dje@google.com>
11936
11937 * server.c (start_inferior): Print inferior argv if --debug.
11938
11939 2010-04-21 Aleksandar Ristovski <aristovski@qnx.com>
11940
11941 * Makefile.in (nto_low_h nto-low.o nto-x86-low.o): New dependency lists.
11942 * nto-x86-low.c: Include server.h
11943
11944 2010-04-20 Pierre Muller <muller@ics.u-strasbg.fr>
11945
11946 * win32-i386-low.c: Use __x86_64__ macro instead of __x86_64 to
11947 be consistent with other sources of this directory.
11948 (init_registers_amd64): Correct name of source file of this function
11949 in the comment.
11950
11951 2010-04-19 Pierre Muller <muller@ics.u-strasbg.fr>
11952
11953 * configure.srv (x86_64-*-mingw*): New configuration for Windows
11954 64-bit executables.
11955
11956 2010-04-19 Pierre Muller <muller@ics.u-strasbg.fr>
11957
11958 * win32-i386-low.c: Add 64-bit support.
11959 (CONTEXT_EXTENDED_REGISTERS): Set macro to zero if not exisiting.
11960 (init_registers_amd64): Declare.
11961 (mappings): Add 64-bit version of array.
11962 (init_windows_x86): New function.
11963 (the_low_target): Change init_arch field to init_windows_x86.
11964
11965 2010-04-19 Pierre Muller <muller@ics.u-strasbg.fr>
11966
11967 * win32-low.c: Adapt to support also 64-bit architecture.
11968 (child_xfer_memory): Use uintptr_t type for local variable `addr'.
11969 (get_image_name): Use SIZE_T type for local variable `done'.
11970 (psapi_get_dll_name): Use LPVOID type for parameter `BaseAddress'.
11971 (toolhelp_get_dll_name): Idem.
11972 (handle_load_dll): Use CORE_ADDR type for local variable `load_addr'.
11973 Use uintptr_t typecast to avoid warning.
11974 (handle_unload_dll): Use uintptr_t typecast to avoid warning.
11975 (handle_exception): Use phex_nz to avoid warning.
11976 (win32_wait): Remove unused local variable `process'.
11977
11978 2010-04-19 Pierre Muller <muller@ics.u-strasbg.fr>
11979
11980 * configure.srv (srv_amd64_regobj): Replace `x86-64-avx.o' by
11981 `amd64-avx.o'.
11982
11983 2010-04-17 Pierre Muller <muller@ics.u-strasbg.fr>
11984
11985 * configure.ac: Use `ws2_32' library for srv_mingw.
11986 * configure: Regenerate.
11987 * gdbreplay.c: Include winsock2.h instead of winsock.h.
11988 * remote-utils.c: Likewise.
11989
11990 2010-04-17 H.J. Lu <hongjiu.lu@intel.com>
11991
11992 * linux-x86-low.c (xmltarget_amd64_linux_no_xml): Define only
11993 if __x86_64__ is defined.
11994
11995 2010-04-16 Pierre Muller <muller@ics.u-strasbg.fr>
11996
11997 * configure: Regenerate.
11998
11999 2010-04-16 Pierre Muller <muller@ics.u-strasbg.fr>
12000
12001 * server.c (handle_query): Handle 'qGetTIBAddr' query.
12002 * target.h (target_ops): New get_tib_address field.
12003 * win32-low.h (win32_thread_info): Add thread_local_base field.
12004 * win32-low.c (child_add_thread): Add tlb argument.
12005 Set thread_local_base field to TLB.
12006 (get_child_debug_event): Adapt to child_add_thread change.
12007 (win32_get_tib_address): New function.
12008 (win32_target_ops): Set get_tib_address field to
12009 win32_get_tib_address.
12010 * linux-low.c (linux_target_ops): Set get_tib_address field to NULL.
12011
12012 2010-04-12 Pedro Alves <pedro@codesourcery.com>
12013
12014 * linux-low.c (linux_mourn): Also remove the process.
12015 * server.c (handle_target_event): Don't remove the process here.
12016 * nto-low.c (nto_mourn): New.
12017 (nto_target_ops): Install it.
12018 * spu-low.c (spu_mourn): New.
12019 (spu_target_ops): Install it.
12020 * win32-low.c (win32_mourn): New.
12021 (win32_target_ops): Install it.
12022
12023 2010-04-12 Pedro Alves <pedro@codesourcery.com>
12024
12025 * server.h (buffer_xml_printf): Remove redundant `;'.
12026
12027 2010-04-12 Pedro Alves <pedro@codesourcery.com>
12028
12029 * regcache.c (set_register_cache): Invalidate regcaches before
12030 changing the register cache layout.
12031 (regcache_invalidate_one): Allow a NULL regcache.
12032 * linux-x86-low.c (x86_linux_update_xmltarget): Invalidate
12033 regcaches before changing the register cache layout or the target
12034 regsets.
12035
12036 2010-04-12 H.J. Lu <hongjiu.lu@intel.com>
12037
12038 * linux-x86-low.c (x86_linux_update_xmltarget): Avoid unused
12039 variable warning on Linux/x86-64.
12040
12041 2010-04-11 Pedro Alves <pedro@codesourcery.com>
12042
12043 GDBserver disconnected tracing support.
12044
12045 * linux-low.c (linux_remove_process): Delete.
12046 (add_lwp): Don't set last_resume_kind here.
12047 (linux_kill): Use `mourn'.
12048 (linux_detach): Use `thread_db_detach', and `mourn'.
12049 (linux_mourn): New.
12050 (linux_attach_lwp_1): Adjust comment.
12051 (linux_attach): last_resume_kind moved the thread_info; adjust.
12052 (status_pending_p_callback): Adjust.
12053 (linux_wait_for_event_1): Adjust.
12054 (count_events_callback, select_singlestep_lwp_callback)
12055 (select_event_lwp_callback, cancel_breakpoints_callback)
12056 (db_wants_lwp_stopped, linux_wait_1, need_step_over_p)
12057 (proceed_one_lwp): Adjust.
12058 (linux_async): Add debug output.
12059 (linux_thread_stopped): New.
12060 (linux_pause_all): New.
12061 (linux_target_ops): Install linux_mourn, linux_thread_stopped and
12062 linux_pause_all.
12063 * linux-low.h (struct lwp_info): Delete last_resume_kind field.
12064 (thread_db_free): Delete declaration.
12065 (thread_db_detach, thread_db_mourn): Declare.
12066 * thread-db.c (thread_db_init): Use thread_db_mourn.
12067 (thread_db_free): Delete, split in two.
12068 (disable_thread_event_reporting): New.
12069 (thread_db_detach): New.
12070 (thread_db_mourn): New.
12071
12072 * server.h (struct thread_info) <last_resume_kind>: New field.
12073 <attached>: Add comment.
12074 <gdb_detached>: New field.
12075 (handler_func): Change return type to int.
12076 (handle_serial_event, handle_target_event): Ditto.
12077 (gdb_connected): Declare.
12078 (tracing): Delete.
12079 (disconnected_tracing): Declare.
12080 (stop_tracing): Declare.
12081
12082 * server.c (handle_query) <qSupported>: Report support for
12083 disconnected tracing.
12084 (queue_stop_reply_callback): Account for running threads.
12085 (gdb_wants_thread_stopped): New.
12086 (gdb_wants_all_threads_stopped): New.
12087 (gdb_reattached_process): New.
12088 (handle_status): Clear the `gdb_detached' flag of all processes.
12089 In all-stop, stop all threads.
12090 (main): Be sure to leave tfind mode. Handle disconnected tracing.
12091 (process_serial_event): If the remote connection breaks, or if an
12092 exit was forced with "monitor exit", force an event loop exit.
12093 Handle disconnected tracing on detach.
12094 (handle_serial_event): Adjust.
12095 (handle_target_event): If GDB isn't connected, forward events back
12096 to the inferior, unless the last process exited, in which case,
12097 exit gdbserver. Adjust interface.
12098
12099 * remote-utils.c (remote_open): Don't block in accept. Instead
12100 register an event loop source on the listen socket file
12101 descriptor. Refactor bits into ...
12102 (listen_desc): ... this new global.
12103 (gdb_connected): ... this new function.
12104 (enable_async_notification): ... this new function.
12105 (handle_accept_event): ... this new function.
12106 (remote_close): Clear remote_desc.
12107
12108 * inferiors.c (add_thread): Set the new thread's last_resume_kind.
12109
12110 * target.h (struct target_ops) <mourn, thread_stopped, pause_all>:
12111 New fields.
12112 (mourn_inferior): Define.
12113 (target_process_qsupported): Avoid the dangling else problem.
12114 (thread_stopped): Define.
12115 (pause_all): Define.
12116 (target_waitstatus_to_string): Declare.
12117 * target.c (target_waitstatus_to_string): New.
12118
12119 * tracepoint.c (tracing): Make extern.
12120 (disconnected_tracing): New.
12121 (stop_tracing): Make extern. Handle tracing stops due to GDB
12122 disconnecting.
12123 (cmd_qtdisconnected): New.
12124 (cmd_qtstatus): Report disconnected tracing status in trace reply.
12125 (handle_tracepoint_general_set): Handle QTDisconnected.
12126
12127 * event-loop.c (event_handler_func): Change return type to int.
12128 (process_event): Bail out if the event handler wants the event
12129 loop to stop.
12130 (handle_file_event): Ditto.
12131 (start_event_loop): Bail out if the event handler wants the event
12132 loop to stop.
12133
12134 * nto-low.c (nto_target_ops): Adjust.
12135 * spu-low.c (spu_wait): Don't remove the process here.
12136 (spu_target_ops): Adjust.
12137 * win32-low.c (win32_wait): Don't remove the process here.
12138 (win32_target_ops): Adjust.
12139
12140 2010-04-11 Pedro Alves <pedro@codesourcery.com>
12141
12142 * regcache.c (realloc_register_cache): Invalidate inferior's
12143 regcache before recreating it.
12144
12145 2010-04-09 Pedro Alves <pedro@codesourcery.com>
12146
12147 * tracepoint.c (cmd_qtstatus): Report trace buffer circularity.
12148
12149 2010-04-09 Stan Shebs <stan@codesourcery.com>
12150 Pedro Alves <pedro@codesourcery.com>
12151
12152 * server.h (LONGEST): New.
12153 (struct thread_info) <while_stepping>: New field.
12154 (unpack_varlen_hex, xrealloc, pulongest, plongest, phex_nz):
12155 Declare.
12156 (initialize_tracepoint, handle_tracepoint_general_set)
12157 (handle_tracepoint_query, tracepoint_finished_step)
12158 (tracepoint_was_hit, release_while_stepping_state_list):
12159 (current_traceframe): Declare.
12160 * server.c (handle_general_set): Handle tracepoint packets.
12161 (read_memory): New.
12162 (write_memory): New.
12163 (handle_search_memory_1): Use read_memory.
12164 (handle_query): Report support for conditional tracepoints, trace
12165 state variables, and tracepoint sources. Handle tracepoint
12166 queries.
12167 (main): Initialize the tracepoints module.
12168 (process_serial_event): Handle traceframe reads/writes.
12169
12170 * linux-low.c (handle_tracepoints): New.
12171 (linux_wait_1): Call it.
12172 (linux_resume_one_lwp): Handle while-stepping.
12173 (linux_supports_tracepoints, linux_read_pc, linux_write_pc): New.
12174 (linux_target_ops): Install them.
12175 * linux-low.h (struct linux_target_ops) <supports_tracepoints>:
12176 New field.
12177 * linux-x86-low.c (x86_supports_tracepoints): New.
12178 (the_low_target). Install it.
12179
12180 * mem-break.h (delete_breakpoint): Declare.
12181 * mem-break.c (delete_breakpoint): Make external.
12182
12183 * target.h (struct target_ops): Add `supports_tracepoints',
12184 `read_pc', and `write_pc' fields.
12185 (target_supports_tracepoints): Define.
12186 * utils.c (xrealloc, decimal2str, pulongest, plongest, thirty_two)
12187 (phex_nz): New.
12188
12189 * regcache.h (struct regcache) <registers_owned>: New field.
12190 (init_register_cache, regcache_cpy): Declare.
12191 (regcache_read_pc, regcache_write_pc): Declare.
12192 (register_cache_size): Declare.
12193 (supply_regblock): Declare.
12194 * regcache.c (init_register_cache): New.
12195 (new_register_cache): Use it.
12196 (regcache_cpy): New.
12197 (register_cache_size): New.
12198 (supply_regblock): New.
12199 (regcache_read_pc, regcache_write_pc): New.
12200
12201 * tracepoint.c: New.
12202
12203 * Makefile.in (OBS): Add tracepoint.o.
12204 (tracepoint.o): New rule.
12205
12206 2010-04-08 H.J. Lu <hongjiu.lu@intel.com>
12207
12208 * Makefile.in (clean): Also remove i386-mmx.c i386-mmx-linux.c.
12209 (i386-mmx.o): New.
12210 (i386-mmx.c): Likewise.
12211 (i386-mmx-linux.o): Likewise.
12212 (i386-mmx-linux.c): Likewise.
12213
12214 * configure.srv (srv_i386_regobj): Add i386-mmx.o.
12215 (srv_i386_linux_regobj): Add i386-mmx-linux.o.
12216 (srv_i386_xmlfiles): Add i386/i386-mmx.xml.
12217 (srv_i386_linux_xmlfiles): Add i386/i386-mmx-linux.xml.
12218
12219 * linux-x86-low.c (init_registers_i386_mmx_linux): New.
12220 (x86_linux_update_xmltarget): Call init_registers_i386_mmx_linux
12221 and return if ptrace PTRACE_GETFPXREGS failed in 32bit.
12222
12223 2010-04-07 H.J. Lu <hongjiu.lu@intel.com>
12224
12225 * Makefile.in (clean): Updated.
12226 (i386-avx.o): New.
12227 (i386-avx.c): Likewise.
12228 (i386-avx-linux.o): Likewise.
12229 (i386-avx-linux.c): Likewise.
12230 (amd64-avx.o): Likewise.
12231 (amd64-avx.c): Likewise.
12232 (amd64-avx-linux.o): Likewise.
12233 (amd64-avx-linux.c): Likewise.
12234
12235 * configure.srv (srv_i386_regobj): Add i386-avx.o.
12236 (srv_i386_linux_regobj): Add i386-avx-linux.o.
12237 (srv_amd64_regobj): Add amd64-avx.o.
12238 (srv_amd64_linux_regobj): Add amd64-avx-linux.o.
12239 (srv_i386_32bit_xmlfiles): Add i386/32bit-avx.xml.
12240 (srv_i386_64bit_xmlfiles): Add i386/64bit-avx.xml.
12241 (srv_i386_xmlfiles): Add i386/i386-avx.xml.
12242 (srv_amd64_xmlfiles): Add i386/amd64-avx.xml.
12243 (srv_i386_linux_xmlfiles): Add i386/i386-avx-linux.xml.
12244 (srv_amd64_linux_xmlfiles): Add i386/amd64-avx-linux.xml.
12245
12246 * i387-fp.c: Include "i386-xstate.h".
12247 (i387_xsave): New.
12248 (i387_cache_to_xsave): Likewise.
12249 (i387_xsave_to_cache): Likewise.
12250 (x86_xcr0): Likewise.
12251
12252 * i387-fp.h (i387_cache_to_xsave): Likewise.
12253 (i387_xsave_to_cache): Likewise.
12254 (x86_xcr0): Likewise.
12255
12256 * linux-arm-low.c (target_regsets): Initialize nt_type to 0.
12257 * linux-crisv32-low.c (target_regsets): Likewise.
12258 * linux-m68k-low.c (target_regsets): Likewise.
12259 * linux-mips-low.c (target_regsets): Likewise.
12260 * linux-ppc-low.c (target_regsets): Likewise.
12261 * linux-s390-low.c (target_regsets): Likewise.
12262 * linux-sh-low.c (target_regsets): Likewise.
12263 * linux-sparc-low.c (target_regsets): Likewise.
12264 * linux-xtensa-low.c (target_regsets): Likewise.
12265
12266 * linux-low.c: Include <sys/uio.h>.
12267 (regsets_fetch_inferior_registers): Support nt_type.
12268 (regsets_store_inferior_registers): Likewise.
12269 (linux_process_qsupported): New.
12270 (linux_target_ops): Add linux_process_qsupported.
12271
12272 * linux-low.h (regset_info): Add nt_type.
12273 (linux_target_ops): Add process_qsupported.
12274
12275 * linux-x86-low.c: Include "i386-xstate.h", "elf/common.h"
12276 and <sys/uio.h>.
12277 (init_registers_i386_avx_linux): New.
12278 (init_registers_amd64_avx_linux): Likewise.
12279 (xmltarget_i386_linux_no_xml): Likewise.
12280 (xmltarget_amd64_linux_no_xml): Likewise.
12281 (PTRACE_GETREGSET): Likewise.
12282 (PTRACE_SETREGSET): Likewise.
12283 (x86_fill_xstateregset): Likewise.
12284 (x86_store_xstateregset): Likewise.
12285 (use_xml): Likewise.
12286 (x86_linux_update_xmltarget): Likewise.
12287 (x86_linux_process_qsupported): Likewise.
12288 (target_regsets): Add NT_X86_XSTATE entry and Initialize nt_type.
12289 (x86_arch_setup): Don't call init_registers_amd64_linux nor
12290 init_registers_i386_linux here. Call
12291 x86_linux_update_xmltarget.
12292 (the_low_target): Add x86_linux_process_qsupported.
12293
12294 * server.c (handle_query): Call target_process_qsupported.
12295
12296 * target.h (target_ops): Add process_qsupported.
12297 (target_process_qsupported): New.
12298
12299 2010-04-03 Pedro Alves <pedro@codesourcery.com>
12300
12301 * inferiors.c (add_thread): Set last_status kind to
12302 TARGET_WAITKIND_IGNORE.
12303 * linux-low.c (cancel_breakpoint): Remove unnecessary regcache
12304 fetch. Use ptid_of. Avoid unnecessary get_lwp_thread calls.
12305 (linux_wait_1): Move `thread' local definition to block that uses
12306 it. Don't NULL initialize `event_child'.
12307 (linux_resume_one_thread): Avoid unnecessary get_lwp_thread calls.
12308 Alway set the thread's last_status to TARGET_WAITKIND_IGNORE.
12309 * linux-x86-low.c (x86_breakpoint_at): Read raw memory.
12310
12311 2010-04-01 Pedro Alves <pedro@codesourcery.com>
12312
12313 * linux-low.c (get_stop_pc): Don't adjust the PC if stopped with
12314 an extended waitstatus, or by a watchpoint.
12315 (cancel_breakpoints_callback): Don't cancel a breakpoint if the
12316 thread was stepping or has been stopped by a watchpoint.
12317
12318 2010-04-01 Pedro Alves <pedro@codesourcery.com>
12319
12320 * mem-break.c (struct raw_breakpoint): New field shlib_disabled.
12321 (set_gdb_breakpoint_at): If GDB is inserting a breakpoint on top
12322 of another, then delete the previous, and validate all
12323 breakpoints.
12324 (validate_inserted_breakpoint): New.
12325 (delete_disabled_breakpoints): New.
12326 (validate_breakpoints): New.
12327 (check_mem_read): Validate breakpoints before trusting their
12328 shadow. Delete disabled breakpoints.
12329 (check_mem_write): Validate breakpoints before trusting they
12330 should be inserted. Delete disabled breakpoints.
12331 * mem-break.h (validate_breakpoints):
12332 * server.c (handle_query): Validate breakpoints when we see a
12333 qSymbol query.
12334
12335 2010-04-01 Pedro Alves <pedro@codesourcery.com>
12336
12337 * linux-low.c (linux_wait_1): Avoid setting need_step_over is
12338 there's a GDB breakpoint at stop_pc. Always report a trap to GDB
12339 if we could tell there's a GDB breakpoint at stop_pc.
12340 (need_step_over_p): Don't do a step over if we find a GDB
12341 breakpoint at the resume PC.
12342
12343 * mem-break.c (struct raw_breakpoint): New.
12344 (enum bkpt_type): New type `gdb_breakpoint'.
12345 (struct breakpoint): Delete the `PC', `old_data' and `inserted'
12346 fields. New field `raw'.
12347 (find_raw_breakpoint_at): New.
12348 (set_raw_breakpoint_at): Handle refcounting. Create a raw
12349 breakpoint instead.
12350 (set_breakpoint_at): Adjust.
12351 (delete_raw_breakpoint): New.
12352 (release_breakpoint): New.
12353 (delete_breakpoint): Rename to...
12354 (delete_breakpoint_1): ... this. Add proc parameter. Use
12355 release_breakpoint. Return ENOENT.
12356 (delete_breakpoint): Reimplement.
12357 (find_breakpoint_at): Delete.
12358 (find_gdb_breakpoint_at): New.
12359 (delete_breakpoint_at): Delete.
12360 (set_gdb_breakpoint_at): New.
12361 (delete_gdb_breakpoint_at): New.
12362 (gdb_breakpoint_here): New.
12363 (set_reinsert_breakpoint): Use release_breakpoint.
12364 (uninsert_breakpoint): Rename to ...
12365 (uninsert_raw_breakpoint): ... this.
12366 (uninsert_breakpoints_at): Adjust to handle raw breakpoints.
12367 (reinsert_raw_breakpoint): Change parameter type to
12368 raw_breakpoint.
12369 (reinsert_breakpoints_at): Adjust to handle raw breakpoints
12370 instead.
12371 (check_breakpoints): Adjust. Use release_breakpoint.
12372 (breakpoint_here): Rewrite using find_raw_breakpoint_at.
12373 (breakpoint_inserted_here): Ditto.
12374 (check_mem_read): Adjust to iterate over raw breakpoints instead.
12375 Don't trust the breakpoint's shadow if it is not inserted.
12376 (check_mem_write): Adjust to iterate over raw breakpoints instead.
12377 (delete_all_breakpoints): Adjust.
12378 (free_all_breakpoints): Mark all breakpoints as uninserted, and
12379 use delete_breakpoint_1.
12380
12381 * mem-break.h (breakpoints_supported): Delete declaration.
12382 (set_gdb_breakpoint_at): Declare.
12383 (gdb_breakpoint_here): Declare.
12384 (delete_breakpoint_at): Delete.
12385 (delete_gdb_breakpoint_at): Declare.
12386
12387 * server.h (struct raw_breakpoint): Forward declare.
12388 (struct process_info): New field `raw_breakpoints'.
12389
12390 * linux-x86-low.c (x86_insert_point, x86_remote_point): Handle Z0
12391 breakpoints.
12392
12393 2010-03-24 Pedro Alves <pedro@codesourcery.com>
12394
12395 * linux-low.c (status_pending_p_callback): Fix comment.
12396 (linux_wait_for_event_1): Move most of the internal breakpoint
12397 handling from here...
12398 (linux_wait_1): ... to here.
12399 (count_events_callback): New.
12400 (select_singlestep_lwp_callback): New.
12401 (select_event_lwp_callback): New.
12402 (cancel_breakpoints_callback): New.
12403 (select_event_lwp): New.
12404 (linux_wait_1): Simplify internal breakpoint handling. Give equal
12405 priority to all LWPs that have had events that should be reported
12406 to the client. Cancel breakpoints when about to reporting the
12407 event to the client, not while stopping lwps. No longer cancel
12408 finished single-steps here.
12409 (cancel_finished_single_step): Delete.
12410 (cancel_finished_single_steps): Delete.
12411
12412 2010-03-24 Pedro Alves <pedro@codesourcery.com>
12413
12414 * mem-break.c (enum bkpt_type): New.
12415 (struct breakpoint): New field `type'.
12416 (set_breakpoint_at): Change return type to struct breakpoint
12417 pointer. Set type to `other_breakpoint' by default.
12418 (delete_breakpoint): Rewrite, supporting more than one breakpoint
12419 in the breakpoint list.
12420 (delete_reinsert_breakpoints): Only delete reinsert breakpoints.
12421 (reinsert_breakpoint): Rename to ...
12422 (reinsert_raw_breakpoint): ... this.
12423 (reinsert_breakpoints_at): Adjust.
12424 * mem-break.h (struct breakpoint): Declare.
12425 (set_breakpoint_at): Change return type to struct breakpoint
12426 pointer.
12427
12428 2010-03-24 Pedro Alves <pedro@codesourcery.com>
12429
12430 * server.c (handle_query): Assign, not compare.
12431
12432 2010-03-24 Pedro Alves <pedro@codesourcery.com>
12433
12434 Teach linux gdbserver to step-over-breakpoints.
12435
12436 * linux-low.c (can_hardware_single_step): New.
12437 (supports_breakpoints): New.
12438 (handle_extended_wait): If stopping threads, read the stop pc of
12439 the new cloned LWP.
12440 (get_pc): New.
12441 (get_stop_pc): Add `lwp' parameter. Handle it. Bail out if the
12442 low target doesn't support retrieving the PC.
12443 (add_lwp): Set last_resume_kind to resume_continue.
12444 (linux_attach_lwp_1): Adjust comments. Always set stop_expected.
12445 (linux_attach): Don't clear stop_expected. Set the lwp's
12446 last_resume_kind to resume_stop.
12447 (linux_detach_one_lwp): Don't check for removed breakpoints.
12448 (check_removed_breakpoint): Delete.
12449 (status_pending_p): Rename to ...
12450 (status_pending_p_callback): ... this. Don't check for removed
12451 breakpoints. Don't consider threads that are stopped from GDB's
12452 perspective.
12453 (linux_wait_for_lwp): Always read the stop_pc here.
12454 (cancel_breakpoint): New.
12455 (step_over_bkpt): New global.
12456 (linux_wait_for_event_1): Implement stepping over breakpoints.
12457 (gdb_wants_lwp_stopped): New.
12458 (gdb_wants_all_stopped): New.
12459 (linux_wait_1): Tag threads as gdb-wants-stopped. Cancel finished
12460 single-step traps here. Store the thread's last reported target
12461 wait status.
12462 (send_sigstop): Don't clear stop_expected. Always set it,
12463 instead.
12464 (mark_lwp_dead): Remove reference to pending_is_breakpoint.
12465 (cancel_finished_single_step): New.
12466 (cancel_finished_single_steps): New.
12467 (wait_for_sigstop): Don't cancel finished single-step traps here.
12468 (linux_resume_one_lwp): Don't check for removed breakpoints.
12469 Don't set `step' on non-hardware step archs.
12470 (linux_set_resume_request): Ignore resume_stop requests if already
12471 stopping or stopped. Set the lwp's last_resume_kind.
12472 (resume_status_pending_p): Don't check for removed breakpoints.
12473 (need_step_over_p): New.
12474 (start_step_over): New.
12475 (finish_step_over): New.
12476 (linux_resume_one_thread): Always queue a sigstop for resume_stop
12477 requests. Clear the thread's last reported target waitstatus.
12478 Don't use the `suspended' flag. Don't consider pending breakpoints.
12479 (linux_resume): Start a step-over if necessary.
12480 (proceed_one_lwp): New.
12481 (proceed_all_lwps): New.
12482 (unstop_all_lwps): New.
12483 * linux-low.h (struct lwp_info): Rewrite comment for the
12484 `suspended' flag. Add the `stop_pc' field. Delete the
12485 `pending_stop_pc' field. Tweak the `stepping' flag's comment.
12486 Add `'last_resume_kind' and `need_step_over' fields.
12487 * inferiors.c (struct thread_info): Delete, moved elsewhere.
12488 * mem-break.c (struct breakpoint): Delete `reinserting' flag.
12489 Delete `breakpoint_to_reinsert' field. New flag `inserted'.
12490 (set_raw_breakpoint_at): New.
12491 (set_breakpoint_at): Rewrite to use it.
12492 (reinsert_breakpoint_handler): Delete.
12493 (set_reinsert_breakpoint): New.
12494 (reinsert_breakpoint_by_bp): Delete.
12495 (delete_reinsert_breakpoints): New.
12496 (uninsert_breakpoint): Rewrite.
12497 (uninsert_breakpoints_at): New.
12498 (reinsert_breakpoint): Rewrite.
12499 (reinsert_breakpoints_at): New.
12500 (check_breakpoints): Rewrite.
12501 (breakpoint_here): New.
12502 (breakpoint_inserted_here): New.
12503 (check_mem_read): Adjust.
12504 * mem-break.h (breakpoints_supported, breakpoint_here)
12505 (breakpoint_inserted_here, set_reinsert_breakpoint): Declare.
12506 (reinsert_breakpoint_by_bp): Delete declaration.
12507 (delete_reinsert_breakpoints): Declare.
12508 (reinsert_breakpoint): Delete declaration.
12509 (reinsert_breakpoints_at): Declare.
12510 (uninsert_breakpoint): Delete declaration.
12511 (uninsert_breakpoints_at): Declare.
12512 (check_breakpoints): Adjust prototype.
12513 * server.h: Adjust include order.
12514 (struct thread_info): Declare here. Add a `last_status' field.
12515
12516 2010-03-23 Michael Snyder <msnyder@vmware.com>
12517
12518 * server.c (crc32): New function.
12519 (handle_query): Add handling for 'qCRC:' request.
12520
12521 2010-03-23 Pedro Alves <pedro@codesourcery.com>
12522
12523 * linux-x86-low.c (x86_linux_prepare_to_resume): Clear DR6 if the
12524 lwp had been stopped by a watchpoint.
12525
12526 2010-03-16 Pedro Alves <pedro@codesourcery.com>
12527
12528 * server.h (internal_error): Declare.
12529 (gdb_assert, ASSERT_FUNCTION, gdb_assert_fail): Define.
12530 * utils.c (internal_error): New function.
12531
12532 2010-03-15 Andreas Schwab <schwab@redhat.com>
12533
12534 * configure.srv: Fix typo setting srv_regobj.
12535
12536 2010-03-15 Pedro Alves <pedro@codesourcery.com>
12537
12538 * linux-low.c (fetch_register): Avoid passing a non string literal
12539 format to `error'.
12540 (usr_store_inferior_registers): Ditto.
12541
12542 2010-03-14 Pedro Alves <pedro@codesourcery.com>
12543
12544 * linux-low.c (linux_write_memory): Bail out early if peeking
12545 memory failed.
12546
12547 2010-03-14 Pedro Alves <pedro@codesourcery.com>
12548
12549 * linux-low.h (struct lwp_info): New fields
12550 `stopped_by_watchpoint' and `stopped_data_address'.
12551 * linux-low.c (linux_wait_for_lwp): Check for watchpoint triggers
12552 here, and cache them in the lwp object.
12553 (wait_for_sigstop): Check stopped_by_watchpoint lwp field
12554 directly.
12555 (linux_resume_one_lwp): Clear the lwp's stopped_by_watchpoint
12556 field.
12557 (linux_stopped_by_watchpoint): Rewrite.
12558 (linux_stopped_data_address): Rewrite.
12559
12560 2010-03-06 Simo Melenius <simo.melenius@iki.fi>
12561
12562 * linux-low.c (linux_wait_for_lwp): Fetch the regcache after
12563 switching the current inferior, not before.
12564
12565 2010-03-01 H.J. Lu <hongjiu.lu@intel.com>
12566
12567 * Makefile.in (clean): Replace reg-i386.c, reg-x86-64.c,
12568 reg-i386-linux.c and reg-x86-64-linux.c with i386.c, amd64.c,
12569 i386-linux.c and amd64-linux.c.
12570 (reg-i386.o): Removed.
12571 (reg-i386.c): Likewise.
12572 (reg-i386-linux.o): Likewise.
12573 (reg-i386-linux.c): Likewise.
12574 (reg-x86-64.o): Likewise.
12575 (reg-x86-64.c): Likewise.
12576 (reg-x86-64-linux.o): Likewise.
12577 (reg-x86-64-linux.c): Likewise.
12578 (i386.o): New.
12579 (i386.c): Likewise.
12580 (i386-linux.o): Likewise.
12581 (i386-linux.c): Likewise.
12582 (amd64.o): Likewise.
12583 (amd64.c): Likewise.
12584 (amd64-linux.o): Likewise.
12585 (amd64-linux.c): Likewise.
12586
12587 * configure.srv (srv_i386_regobj): New.
12588 (srv_i386_linux_regobj): Likewise.
12589 (srv_amd64_regobj): Likewise.
12590 (srv_amd64_linux_regobj): Likewise.
12591 (srv_i386_32bit_xmlfiles): Likewise.
12592 (srv_i386_64bit_xmlfiles): Likewise.
12593 (srv_i386_xmlfiles): Likewise.
12594 (srv_amd64_xmlfiles): Likewise.
12595 (srv_i386_linux_xmlfiles): Likewise.
12596 (srv_amd64_linux_xmlfiles): Likewise.
12597 (i[34567]86-*-cygwin*): Set srv_regobj to $srv_i386_regobj. Set
12598 srv_xmlfiles to $srv_i386_xmlfiles.
12599 (i[34567]86-*-mingw32ce*): Likewise.
12600 (i[34567]86-*-mingw*): Likewise.
12601 (i[34567]86-*-nto*): Likewise.
12602 (i[34567]86-*-linux*): Set srv_regobj to $srv_i386_linux_regobj
12603 and $srv_amd64_linux_regobj. Set srv_xmlfiles to
12604 $srv_i386_linux_xmlfiles and $srv_amd64_linux_xmlfiles.
12605 (x86_64-*-linux*): Likewise.
12606
12607 * linux-x86-low.c (init_registers_x86_64_linux): Removed.
12608 (init_registers_amd64_linux): New.
12609 (x86_arch_setup): Replace init_registers_x86_64_linux with
12610 init_registers_amd64_linux.
12611
12612 2010-02-23 Maxim Kuvyrkov <maxim@codesourcery.com>
12613
12614 * configure.ac: Check for libdl. If it is not available link against
12615 static libthread_db.
12616 * configure: Regenerate.
12617
12618 2010-02-22 Pedro Alves <pedro@codesourcery.com>
12619
12620 PR9605
12621
12622 * i386-low.c (i386_length_and_rw_bits): Throw a fatal error if
12623 handing a read watchpoint.
12624 (i386_low_insert_watchpoint): Read watchpoints aren't supported.
12625
12626 2010-02-12 Doug Evans <dje@google.com>
12627
12628 * linux-low.c (linux_supports_tracefork_flag): Document.
12629 (linux_look_up_symbols): Add comment.
12630
12631 2010-02-03 H.J. Lu <hongjiu.lu@intel.com>
12632
12633 * regcache.c (supply_register): Clear regcache if buf is NULL.
12634
12635 2010-02-02 Nicolas Roche <roche@sourceware.org>
12636 Joel Brobecker <brobecker@adacore.com>
12637
12638 * inferiors.c (find_inferior): Add function documentation.
12639 (unloaded_dll): Handle the case where the unloaded dll has not
12640 been previously registered in the dll list.
12641
12642 2010-02-01 Daniel Jacobowitz <dan@codesourcery.com>
12643
12644 * linux-arm-low.c (thumb_breakpoint_len): Delete.
12645 (thumb2_breakpoint): New.
12646 (arm_breakpoint_at): Check for Thumb-2 breakpoints.
12647
12648 2010-01-29 Daniel Jacobowitz <dan@codesourcery.com>
12649
12650 * linux-low.c (get_stop_pc): Check for SIGTRAP.
12651 (linux_wait_for_event_1): Handle SIGILL and SIGSEGV as possible
12652 breakpoints.
12653
12654 2010-01-21 Pedro Alves <pedro@codesourcery.com>
12655
12656 * linux-ppc-low.c (ppc_arch_setup): Adjust to regcache changes.
12657
12658 2010-01-21 Jan Kratochvil <jan.kratochvil@redhat.com>
12659
12660 * linux-s390-low.c (s390_collect_ptrace_register)
12661 (s390_supply_ptrace_register): Adjust it for the new regcache parameter.
12662
12663 2010-01-21 Doug Evans <dje@google.com>
12664
12665 * linux-low.c (PTRACE_ARG3_TYPE): Change from long to void*.
12666 (PTRACE_ARG4_TYPE): New macro.
12667 (handle_extended_wait): Cast ptrace arg4 to PTRACE_ARG4_TYPE.
12668 (linux_wait_for_event_1, linux_resume_one_lwp): Ditto.
12669 (fetch_register): Cast to uintptr_t before casting to PTRACE_ARG3_TYPE.
12670 (usr_store_inferior_registers): Ditto.
12671 (linux_read_memory, linux_write_memory): Ditto.
12672 (linux_test_for_tracefork): Ditto.
12673
12674 * linux-arm-low.c: Remove redundant include of gdb_proc_service.h.
12675 Only include elf.h if gdb_proc_service.h didn't include linux/elf.h.
12676
12677 2010-01-21 Pedro Alves <pedro@codesourcery.com>
12678
12679 * proc-service.c (ps_lgetregs): Don't refetch registers from the
12680 target.
12681
12682 2010-01-21 Pedro Alves <pedro@codesourcery.com>
12683
12684 * spu-low.c (spu_fetch_registers, spu_store_registers): Change
12685 prototype to take a regcache. Adjust.
12686
12687 2010-01-20 Pedro Alves <pedro@codesourcery.com>
12688
12689 * regcache.h (struct thread_info): Forward declare.
12690 (struct regcache): New.
12691 (new_register_cache): Adjust prototype.
12692 (get_thread_regcache): Declare.
12693 (free_register_cache): Adjust prototype.
12694 (registers_to_string, registers_from_string): Ditto.
12695 (supply_register, supply_register_by_name, collect_register)
12696 (collect_register_as_string, collect_register_by_name): Ditto.
12697 * regcache.c (struct inferior_regcache_data): Delete.
12698 (get_regcache): Rename to ...
12699 (get_thread_regcache): ... this. Adjust. Switch inferior before
12700 fetching registers.
12701 (regcache_invalidate_one): Adjust.
12702 (regcache_invalidate): Fix prototype.
12703 (new_register_cache): Return the new register cache.
12704 (free_register_cache): Change prototype.
12705 (realloc_register_cache): Adjust.
12706 (registers_to_string): Change prototype to take a regcache. Adjust.
12707 (registers_from_string): Ditto.
12708 (register_data): Ditto.
12709 (supply_register): Ditto.
12710 (supply_register_by_name): Ditto.
12711 (collect_register): Ditto.
12712 (collect_register_as_string): Ditto.
12713 (collect_register_by_name): Ditto.
12714 * server.c (process_serial_event): Adjust.
12715 * linux-low.h (regset_fill_func, regset_store_func): Change
12716 prototype.
12717 (get_pc, set_pc, collect_ptrace_register, supply_ptrace_register):
12718 Change prototype.
12719 * linux-low.c (get_stop_pc): Adjust.
12720 (check_removed_breakpoint): Adjust.
12721 (linux_wait_for_event): Adjust.
12722 (linux_resume_one_lwp): Adjust.
12723 (fetch_register): Add regcache parameter. Adjust.
12724 (usr_store_inferior_registers): Ditto.
12725 (regsets_fetch_inferior_registers): Ditto.
12726 (regsets_store_inferior_registers): Ditto.
12727 (linux_fetch_registers, linux_store_registers): Ditto.
12728 * i387-fp.c (i387_cache_to_fsave): Change prototype to take a
12729 regcache. Adjust.
12730 (i387_fsave_to_cache, i387_cache_to_fxsave, i387_fxsave_to_cache):
12731 Ditto.
12732 * i387-fp.h (i387_cache_to_fsave, i387_fsave_to_cache): Change
12733 prototype to take a regcache.
12734 (i387_cache_to_fxsave, i387_fxsave_to_cache): Ditto.
12735 * remote-utils.c (convert_ascii_to_int, outreg)
12736 (prepare_resume_reply): Change prototype to take a regcache.
12737 Adjust.
12738 * target.h (struct target_ops) <fetch_registers, store_registers>:
12739 Change prototype to take a regcache.
12740 (fetch_inferior_registers, store_inferior_registers): Change
12741 prototype to take a regcache. Adjust.
12742 * proc-service.c (ps_lgetregs): Adjust.
12743 * linux-x86-low.c (x86_fill_gregset, x86_store_gregset)
12744 (x86_fill_fpregset, x86_store_fpregset, x86_fill_fpxregset)
12745 (x86_store_fpxregset, x86_get_pc, x86_set_pc): Change prototype to
12746 take a regcache. Adjust.
12747 * linux-arm-low.c (arm_fill_gregset, arm_store_gregset)
12748 (arm_fill_wmmxregset, arm_store_wmmxregset, arm_fill_vfpregset)
12749 (arm_store_vfpregset, arm_get_pc, arm_set_pc):
12750 (arm_breakpoint_at): Change prototype to take a regcache. Adjust.
12751 * linux-cris-low.c (cris_get_pc, cris_set_pc)
12752 (cris_cannot_fetch_register):
12753 (cris_breakpoint_at): Change prototype to take a regcache.
12754 Adjust.
12755 * linux-crisv32-low.c (cris_get_pc, cris_set_pc,
12756 cris_reinsert_addr, cris_write_data_breakpoint): Change prototype
12757 to take a regcache. Adjust.
12758 (cris_breakpoint_at, cris_insert_point, cris_remove_point):
12759 Adjust.
12760 * linux-m32r-low.c (m32r_get_pc, m32r_set_pc): Change prototype to
12761 take a regcache. Adjust.
12762 * linux-m68k-low.c (m68k_fill_gregset, m68k_store_gregset)
12763 (m68k_fill_fpregset, m68k_store_fpregset, m68k_get_pc,
12764 (m68k_set_pc): Change prototype to take a regcache. Adjust.
12765 * linux-mips-low.c (mips_get_pc):
12766 (mips_set_pc): Change prototype to take a regcache. Adjust.
12767 (mips_reinsert_addr): Adjust.
12768 (mips_collect_register): Change prototype to take a regcache.
12769 Adjust.
12770 (mips_supply_register):
12771 (mips_collect_register_32bit, mips_supply_register_32bit)
12772 (mips_fill_gregset, mips_store_gregset, mips_fill_fpregset)
12773 (mips_store_fpregset): Ditto.
12774 * linux-ppc-low.c (ppc_supply_ptrace_register)
12775 (ppc_supply_ptrace_register): Ditto.
12776 (parse_spufs_run): Adjust.
12777 (ppc_get_pc, ppc_set_pc, ppc_fill_gregset, ppc_fill_vsxregset)
12778 (ppc_store_vsxregset, ppc_fill_vrregset, ppc_store_vrregset)
12779 (ppc_fill_evrregset, ppc_store_evrregset): Change prototype to
12780 take a regcache. Adjust.
12781 * linux-s390-low.c (s390_collect_ptrace_register)
12782 (s390_supply_ptrace_register, s390_fill_gregset, s390_get_pc)
12783 (s390_set_pc): Change prototype to take a regcache. Adjust.
12784 (s390_arch_setup): Adjust.
12785 * linux-sh-low.c (sh_get_pc, sh_breakpoint_at)
12786 (sh_fill_gregset): Change prototype to take a regcache. Adjust.
12787 * linux-sparc-low.c (sparc_fill_gregset_to_stack)
12788 (sparc_fill_gregset, sparc_store_gregset_from_stack)
12789 (sparc_store_gregset, sparc_get_pc): Change prototype to take a
12790 regcache. Adjust.
12791 (sparc_breakpoint_at): Adjust.
12792 * linux-xtensa-low.c (xtensa_fill_gregset):
12793 (xtensa_store_gregset):
12794 (xtensa_fill_xtregset, xtensa_store_xtregset, xtensa_get_pc)
12795 (xtensa_set_pc): Change prototype to take a regcache. Adjust.
12796 * nto-low.c (nto_fetch_registers, nto_store_registers): Change
12797 prototype to take a regcache. Adjust.
12798 * win32-arm-low.c (arm_fetch_inferior_register)
12799 (arm_store_inferior_register): Change prototype to take a
12800 regcache. Adjust.
12801 * win32-i386-low.c (i386_fetch_inferior_register)
12802 (i386_store_inferior_register): Change prototype to take a
12803 regcache. Adjust.
12804 * win32-low.c (child_fetch_inferior_registers)
12805 (child_store_inferior_registers): Change prototype to take a
12806 regcache. Adjust.
12807 (win32_wait): Adjust.
12808 (win32_fetch_inferior_registers): Change prototype to take a
12809 regcache. Adjust.
12810 (win32_store_inferior_registers): Adjust.
12811 * win32-low.h (struct win32_target_ops) <fetch_inferior_register,
12812 store_inferior_register>: Change prototype to take a regcache.
12813
12814 2010-01-20 Doug Evans <dje@google.com>
12815
12816 * linux-low.c (linux_create_inferior): Wrap use of __SIGRTMIN in
12817 #ifdef.
12818 (linux_wait_for_event1, linux_init_signals): Ditto.
12819 (W_STOPCODE): Provide definition if missing.
12820
12821 2010-01-13 Vladimir Prus <vladimir@codesourcery.com>
12822
12823 * linux-low.c (linux_core_of_thread): New.
12824 (compare_ints, show_process, list_threads): New.
12825 (linux_qxfer_osdata): Report threads and cores.
12826 (linux_target_op): Register linux_core_of_thread.
12827 * remote-utils.c (prepare_resume_reply): Report the core.
12828 (buffer_xml_printf): Support %d specifier.
12829 * server.c (handle_threads_qxfer_proper, handle_threads_qxfer):
12830 New.
12831 (handle_query): Handle qXfer:threads. Announce availability
12832 thereof.
12833 * target.h (struct target_ops): New field core_of_thread.
12834
12835 2010-01-04 Ulrich Weigand <uweigand@de.ibm.com>
12836
12837 * Makefile.in (clean): Remove new generated files.
12838 (reg-s390.o, reg-s390.c): Remove rules.
12839 (reg-s390x.o, reg-s390x.c): Likewise.
12840 (s390-linux32.o, s390-linux32.c): Add rules.
12841 (s390-linux64.o, s390-linux64.c): Likewise.
12842 (s390x-linux64.o, s390x-linux64.c): Likewise.
12843 * configure.srv (s390*-*-linux*): Update srv_regobj and srv_xmlfiles.
12844 * linux-s390-low.c: Include <elf.h>.
12845 (HWCAP_S390_HIGH_GPRS): Define if undefined.
12846 (init_registers_s390): Remove prototype.
12847 (init_registers_s390x): Likewise.
12848 (init_registers_s390_linux32): Add prototype.
12849 (init_registers_s390_linux64): Likewise.
12850 (init_registers_s390x_linux64): Likewise.
12851 (s390_num_regs_3264): New define.
12852 (s390_regmap_3264): New global variable.
12853 (s390_cannot_fetch_register): Remove obsolete check.
12854 (s390_cannot_store_register): Likewise.
12855 (s390_collect_ptrace_register): Handle upper/lower register halves.
12856 (s390_supply_ptrace_register): Likewise.
12857 (s390_fill_gregset): Update to register number changes.
12858 (s390_get_hwcap): New routine.
12859 (s390_arch_setup): Detect 32-bit process running on 64-bit system.
12860 Install appropriate regmap and register set.
12861
12862 2010-01-01 Joel Brobecker <brobecker@adacore.com>
12863
12864 * server.c (gdbserver_version): Update copyright year to 2010.
12865 * gdbreplay.c (gdbreplay_version): Likewise.
12866
12867 2009-12-28 Doug Evans <dje@google.com>
12868
12869 * linux-low.c: Delete inclusion of ansidecl.h, elf/common.h,
12870 elf/external.h. Include <elf.h> instead but only if necessary.
12871
12872 2009-12-28 Pedro Alves <pedro@codesourcery.com>
12873
12874 * linux-low.c (linux_remove_process): Remove `detaching'
12875 parameter. Don't release/detach from thread_db here.
12876 (linux_kill): Release/detach from thread_db here, ...
12877 (linux_detach): ... and here, before actually detaching.
12878 (linux_wait_1): ... and here, when a process exits.
12879 * thread-db.c (any_thread_of): New.
12880 (thread_db_free): Switch the current inferior to a thread of the
12881 passed in process.
12882
12883 2009-12-21 Doug Evans <dje@google.com>
12884
12885 * linux-x86-low.c: Delete outdated comment about Elf32_Phdr.
12886
12887 * linux-low.c (kill_lwp): Use __NR_tkill instead of SYS_tkill.
12888 Move definition of tkill_failed to ifdef __NR_tkill to avoid gcc
12889 warning ifndef __NR_tkill. Move setting of errno there too.
12890 Delete unnecessary resetting of errno after syscall.
12891 Minor comment changes to match gdb/linux-nat.c:kill_lwp.
12892
12893 * configure.ac: Check for dladdr.
12894 * config.in: Regenerate.
12895 * configure: Regenerate.
12896 * thread-db.c (dladdr_to_soname): Only define ifdef HAVE_DLADDR.
12897 (try_thread_db_load): Update.
12898
12899 * linux-low.c (my_waitpid): Delete unnecessary prototype.
12900
12901 2009-12-18 Doug Evans <dje@google.com>
12902
12903 * event-loop.c: Include unistd.h if it exists.
12904
12905 * linux-low.c (my_waitpid): Move definition away from being in
12906 between linux_tracefork_child/linux_test_for_tracefork.
12907
12908 * gdb_proc_service.h (psaddr_t): Fix type.
12909 * thread-db.c (thread_db_info.td_thr_tls_get_addr_p): Fix
12910 signature to match glibc.
12911
12912 2009-12-16 Doug Evans <dje@google.com>
12913
12914 * linux-low.c (linux_read_memory): Fix argument to read.
12915
12916 2009-11-26 Pedro Alves <pedro@codesourcery.com>
12917
12918 * win32-low.c (get_child_debug_event): On EXIT_THREAD_DEBUG_EVENT
12919 events, don't leave current_inferior pointing at null.
12920
12921 2009-11-26 Pedro Alves <pedro@codesourcery.com>
12922
12923 * win32-low.c (LOG): Delete.
12924 (OUTMSG): Output to stderr.
12925 (OUTMSG2): Conditionalize on `debug_threads' variable, instead of
12926 on compile time LOG macro.
12927 (win32_wait): Fix debug output.
12928
12929 2009-11-26 Pedro Alves <pedro@codesourcery.com>
12930
12931 * win32-low.c (win32_add_one_solib): If the dll name is
12932 "ntdll.dll", prepend the system directory to the dll path.
12933
12934 2009-11-17 Daniel Jacobowitz <dan@codesourcery.com>
12935
12936 * m68k-tdep.c (m68k_gdbarch_init): Reuse previous initialization.
12937
12938 2009-11-17 Nathan Sidwell <nathan@codesourcery.com>
12939 Vladimir Prus <vladimir@codesourcery.com>
12940
12941 * Makefile.in (reg-cf.o, reg-cf.c): New targets.
12942 * configure.ac: Check for __mcoldfire__ and set
12943 gdb_cv_m68k_is_coldfire.
12944 * configure.srv: Use gdb_cv_m68k_is_coldfire to select between
12945 reg-cf.o and reg-m68k.o.
12946 * configure: Regenerated.
12947
12948 2009-11-16 Pedro Alves <pedro@codesourcery.com>
12949
12950 * linux-low.c (linux_remove_process): Add `detaching' parameter.
12951 Pass it to thread_db_free.
12952 (linux_kill, linux_detach, linux_wait_1): Adjust to pass the
12953 proper `detaching' argument to linux_remove_process.
12954 * linux-low.h (thread_db_free): Add `detaching' parameter.
12955 * thread-db.c (thread_db_init): Pass false as `detaching' argument
12956 to thread_db_free.
12957 (thread_db_free): Add `detaching' parameter. Only
12958 call td_ta_clear_event if detaching from process.
12959
12960 2009-11-12 Maxim Kuvyrkov <maxim@codesourcery.com>
12961
12962 * thread-db.c (thread_db_free): Fix typo.
12963
12964 2009-11-11 Paul Pluzhnikov <ppluzhnikov@google.com>
12965
12966 PR gdb/10838
12967 * thread-db.c (thread_db_free): Call td_ta_clear_event.
12968
12969 2009-11-03 Nathan Sidwell <nathan@codesourcery.com>
12970
12971 * configure.ac (i[34567]86-*): Check if we're targetting x86-64
12972 with an i686 compiler.
12973 * configure.srv (i[34567]86-*-linux*): Pull in x86-64 handling if
12974 needed.
12975 * configure: Rebuilt.
12976
12977 2009-10-29 Sandra Loosemore <sandra@codesourcery.com>
12978
12979 PR gdb/10783
12980
12981 * server.c (handle_search_memory_1): Correct read_addr initialization
12982 in loop for searching subsequent chunks.
12983
12984 2009-10-29 Paul Pluzhnikov <ppluzhnikov@google.com>
12985
12986 * configure.ac: New --with-libthread-db option.
12987 * thread-db.c: Allow direct dependence on libthread_db.
12988 (thread_db_free): Adjust.
12989 * config.in: Regenerate.
12990 * configure: Likewise.
12991
12992 2009-10-28 Paul Pluzhnikov <ppluzhnikov@google.com>
12993
12994 PR gdb/10757
12995 * thread-db.c (attach_thread): New function.
12996 (maybe_attach_thread): Return success/failure.
12997 (find_new_threads_callback): Adjust.
12998 (thread_db_find_new_threads): Loop until no new threads.
12999
13000 2009-10-13 Pedro Alves <pedro@codesourcery.com>
13001
13002 * proc-service.c (ps_lgetregs): Formatting.
13003
13004 2009-10-08 Paul Pluzhnikov <ppluzhnikov@google.com>
13005
13006 * acinclude.m4: (SRV_CHECK_THREAD_DB, SRV_CHECK_TLS_GET_ADDR): Remove.
13007 * configure.ac: Adjust.
13008 * linux-low.h (struct process_info_private): Move members to struct
13009 thread_db.
13010 (thread_db_free, thread_db_handle_monitor_command): New prototype.
13011 * linux-low.c (linux_remove_process): Adjust.
13012 (linux_wait_for_event_1, linux_look_up_symbols): Likewise.
13013 * server.c (handle_query): Move code ...
13014 (handle_monitor_command): ... here. New function.
13015 * target.h (struct target_ops): New member.
13016 * thread-db.c (struct thread_db): New.
13017 (libthread_db_search_path): New variable.
13018 (thread_db_create_event, thread_db_enable_reporting)
13019 (find_one_thread, maybe_attach_thread, find_new_threads_callback)
13020 (thread_db_find_new_threads, (thread_db_get_tls_address): Adjust.
13021 (try_thread_db_load_1, dladdr_to_soname): New functions.
13022 (try_thread_db_load, thread_db_load_search): New functions.
13023 (thread_db_init): Search for libthread_db.
13024 (thread_db_free): New function.
13025 (thread_db_handle_monitor_command): Likewise.
13026 * config.in: Regenerate.
13027 * configure: Regenerate.
13028
13029 2009-09-27 Ulrich Weigand <uweigand@de.ibm.com>
13030
13031 * spu-low.c (spu_kill): Wait for inferior to terminate.
13032 Call clear_inferiors.
13033 (spu_detach): Call clear_inferiors.
13034
13035 2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13036
13037 * aclocal.m4: Regenerate.
13038 * config.in: Likewise.
13039 * configure: Likewise.
13040
13041 2009-07-31 Ulrich Weigand <uweigand@de.ibm.com>
13042
13043 * linux-ppc-low.c (INSTR_SC, NR_spu_run): Define.
13044 (parse_spufs_run): New function.
13045 (ppc_get_pc, ppc_set_pc): Detect and handle SPU PC.
13046 (ppc_breakpoint_at): Handle SPU breakpoints.
13047
13048 2009-07-31 Ulrich Weigand <uweigand@de.ibm.com>
13049
13050 * linux-low.c: Include <sys/stat.h> and <sys/vfs.h>.
13051 (SPUFS_MAGIC): Define.
13052 (spu_enumerate_spu_ids): New function.
13053 (linux_qxfer_spu): New function.
13054 (linux_target_ops): Install linux_qxfer_spu.
13055
13056 2009-07-31 Ulrich Weigand <uweigand@de.ibm.com>
13057
13058 * configure.srv (powerpc*-*-linux*): Add powerpc-cell32l.o
13059 and powerpc-cell64l.o to srv_regobj. Add rs6000/powerpc-cell32l.xml
13060 and rs6000/powerpc-cell64l.xml to srv_xmlfiles.
13061 * Makefile.in (powerpc-cell32l.o, powerpc-cell32l.c): New rules.
13062 (powerpc-cell64l.o, powerpc-cell64l.c): Likewise.
13063 (clean): Handle powerpc-cell32l.c and powerpc-cell64l.c.
13064 * linux-ppc-low.c (PPC_FEATURE_CELL): Define.
13065 (init_registers_powerpc_cell32l): Add prototype.
13066 (init_registers_powerpc_cell64l): Likewise.
13067 (ppc_arch_setup): Detect Cell/B.E. architecture.
13068
13069 2009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13070
13071 * Makefile.in (datarootdir): New variable.
13072
13073 2009-07-28 Daniel Jacobowitz <dan@codesourcery.com>
13074
13075 * linux-low.c (linux_write_memory): Update debugging output.
13076 * Makefile.in (clean): Add new descriptions.
13077 (arm-with-vfpv2.o, arm-with-vfpv2.c, arm-with-vfpv3.o)
13078 (arm-with-vfpv3.c, arm-with-neon.o, arm-with-neon.c): New rules.
13079 * configure.srv: Add new files for arm*-*-linux*.
13080 * linux-arm-low.c: Add new declarations.
13081 (PTRACE_GETVFPREGS, PTRACE_SETVFPREGS): Define if undefined.
13082 (arm_hwcap, HWCAP_VFP, HWCAP_IWMMXT, HWCAP_NEON, HWCAP_VFPv3)
13083 (HWCAP_VFPv3D16): New.
13084 (arm_fill_wmmxregset, arm_store_wmmxregset): Check HWCAP_IWMMXT
13085 instead of __IWMMXT__.
13086 (arm_fill_vfpregset, arm_store_vfpregset, arm_get_hwcap)
13087 (arm_arch_setup): New.
13088 (target_regsets): Remove #ifdef. Add VFP regset.
13089 (the_low_target): Use arm_arch_setup.
13090
13091 2009-07-28 Daniel Jacobowitz <dan@codesourcery.com>
13092
13093 * linux-low.c (linux_kill_one_lwp): Adjust kernel workaround to skip
13094 the main thread again.
13095
13096 2009-07-06 Aleksandar Ristovski <aristovski@qnx.com>
13097
13098 Adding Neutrino gdbserver.
13099 * configure: Regenerated.
13100 * configure.ac: Add case for srv_qnx and set LIBS accordingly.
13101 * configure.srv (i[34567]86-*-nto*): New target.
13102 * nto-low.c, nto-low.h, nto-x86-low.c: New files.
13103 * remote-utils.c [__QNX__]: Include sys/iomgr.h
13104 (nto_comctrl) [__QNX__]: New function.
13105 (enable_async_io, disable_async_io) [__QNX__]: Call nto_comctrl.
13106
13107 2009-07-05 Danny Backx <dannybackx@users.sourceforge.net>
13108
13109 * configure.srv (i[34567]86-*-mingw32ce*): Add i386-low.o to
13110 srv_tgtobj.
13111
13112 2009-07-04 Danny Backx <dannybackx@users.sourceforge.net>
13113 Pedro Alves <pedro@codesourcery.com>
13114
13115 * win32-i386-low.c (i386_get_thread_context): Handle systems that
13116 don't support CONTEXT_EXTENDED_REGISTERS.
13117 (i386_win32_breakpoint, i386_win32_breakpoint_len): New.
13118 (the_low_target): Install them.
13119 * win32-low.c (get_child_debug_event): Handle WaitForDebugEvent
13120 failing with ERROR_PIPE_NOT_CONNECTED.
13121
13122 2009-06-30 Doug Evans <dje@google.com>
13123 Pierre Muller <muller@ics.u-strasbg.fr>
13124
13125 Add h/w watchpoint support to x86-linux, win32-i386.
13126 * Makefile.in (SFILES): Add i386-low.c
13127 (i386_low_h): Define.
13128 (i386-low.o): Add dependencies.
13129 (linux-x86-low.o): Add i386-low.h dependency.
13130 (win32-i386-low.o): Ditto.
13131 * i386-low.c: New file.
13132 * i386-low.h: New file.
13133 * configure.srv (i[34567]86-*-cygwin*): Add i386-low.o to srv_tgtobj.
13134 (i[34567]86-*-linux*, i[34567]86-*-mingw*, x86_64-*-linux*): Ditto.
13135 * linux-low.c (linux_add_process): Initialize arch_private.
13136 (linux_remove_process): Free arch_private.
13137 (add_lwp): Initialize arch_private.
13138 (delete_lwp): Free arch_private.
13139 (linux_resume_one_lwp): Call the_low_target.prepare_to_resume if
13140 provided.
13141 * linux-low.h (process_info_private): New member arch_private.
13142 (lwp_info): New member arch_private.
13143 (linux_target_ops): New members new_process, new_thread,
13144 prepare_to_resume.
13145 (ptid_of): New macro.
13146 * linux-x86-low.c: Include stddef.h, i386-low.h.
13147 (arch_process_info): New struct.
13148 (arch_lwp_info): New struct.
13149 (x86_linux_dr_get, x86_linux_dr_set): New functions.
13150 (i386_dr_low_set_addr, i386_dr_low_set_control): New functions.
13151 (i386_dr_low_get_status): New function.
13152 (x86_insert_point, x86_remove_point): New functions.
13153 (x86_stopped_by_watchpoint): New function.
13154 (x86_stopped_data_address): New function.
13155 (x86_linux_new_process, x86_linux_new_thread): New functions.
13156 (x86_linux_prepare_to_resume): New function.
13157 (the_low_target): Add entries for insert_point, remove_point,
13158 stopped_by_watchpoint, stopped_data_address, new_process, new_thread,
13159 prepare_to_resume.
13160 * server.c (debug_hw_points): New global.
13161 (monitor_show_help): Document set debug-hw-points.
13162 (handle_query): Process "set debug-hw-points".
13163 * server.h (debug_hw_points): Declare.
13164 (paddress): Declare.
13165 * utils.c (NUMCELLS, CELLSIZE): New macros.
13166 (get_sell, xsnprintf, paddress): New functions.
13167 * win32-arm-low.c (the_low_target): Add entries for insert_point,
13168 remove_point, stopped_by_watchpoint, stopped_data_address.
13169 * win32-i386-low.c: Include i386-low.h.
13170 (debug_reg_state): Replaces dr.
13171 (i386_dr_low_set_addr, i386_dr_low_set_control): New functions.
13172 (i386_dr_low_get_status): New function.
13173 (i386_insert_point, i386_remove_point): New functions.
13174 (i386_stopped_by_watchpoint): New function.
13175 (i386_stopped_data_address): New function.
13176 (i386_initial_stuff): Update.
13177 (get_thread_context,set_thread_context,i386_thread_added): Update.
13178 (the_low_target): Add entries for insert_point,
13179 remove_point, stopped_by_watchpoint, stopped_data_address.
13180 * win32-low.c (win32_insert_watchpoint): New function.
13181 (win32_remove_watchpoint): New function.
13182 (win32_stopped_by_watchpoint): New function.
13183 (win32_stopped_data_address): New function.
13184 (win32_target_ops): Add entries for insert_watchpoint,
13185 remove_watchpoint, stopped_by_watchpoint, stopped_data_address.
13186 * win32-low.h (win32_target_ops): New members insert_point,
13187 remove_point, stopped_by_watchpoint, stopped_data_address.
13188
13189 2009-06-25 Pedro Alves <pedro@codesourcery.com>
13190
13191 * server.c (process_serial_event): Re-return unsupported, not
13192 error, if the type isn't recognized. Re-allow supporting only
13193 insert or remove packets. Also call require_running for
13194 breakpoints. Add missing break statement to default case. Tidy.
13195 * target.h (struct target_ops): Rename insert_watchpoint to
13196 insert_point, and remove_watchpoint to remove_point.
13197
13198 * linux-low.h (struct linux_target_ops): Likewise.
13199 * linux-low.c (linux_insert_watchpoint): Rename to ...
13200 (linux_insert_point): ... this. Adjust.
13201 (linux_remove_watchpoint): Rename to ...
13202 (linux_remove_point): ... this. Adjust.
13203 (linux_target_ops): Adjust.
13204 * linux-crisv32-low.c (cris_insert_watchpoint): Rename to ...
13205 (cris_insert_point): ... this.
13206 (cris_remove_watchpoint): Rename to ...
13207 (cris_remove_point): ... this.
13208 (the_low_target): Adjust.
13209
13210 2009-06-24 Pierre Muller <muller@ics.u-strasbg.fr>
13211
13212 * server.c (handle_v_kill): Pass signal_pid to
13213 kill_inferior if multi_process is zero.
13214
13215 2009-06-23 Aleksandar Ristovski <aristovski@qnx.com>
13216
13217 * server.c (process_serial_event): Add support for Z0 and Z1 packet.
13218 * target.h (target_ops): Comment for *_watchpoint to make it clear
13219 the functions can get types '0' and '1'.
13220
13221 2009-06-22 Aleksandar Ristovski <aristovski@qnx.com>
13222
13223 * linux-low.c (usr_fetch_inferior_registers): Remove check for regno 0.
13224 * proc-service.c (ps_lgetregs): Pass -1 to fetch all registers.
13225 * regcache.c (get_regcache): Likewise.
13226 * spu-low.c (spu_fetch_registers): Remove 0 to -1 conversion.
13227 * win32-low.c (child_fetch_inferior_registers): Remove check for
13228 regno 0.
13229
13230 2009-06-19 Aleksandar Ristovski <aristovski@qnx.com>
13231 Pedro Alves <pedro@codesourcery.com>
13232
13233 * target.h (struct target_ops) <supports_multi_process>: New
13234 callback.
13235 (target_supports_multi_process): New.
13236 * server.c (handle_query): Even if GDB reports support, only
13237 enable multi-process if the target also supports it. Report
13238 multi-process support only if the target backend supports it.
13239 * linux-low.c (linux_supports_multi_process): New function.
13240 (linux_target_ops): Install it as target_supports_multi_process
13241 callback.
13242
13243 2009-05-24 Doug Evans <dje@google.com>
13244
13245 Global renaming of find_thread_pid to find_thread_ptid.
13246 * server.h (find_thread_ptid): Renamed from find_thread_pid.
13247 * inferiors.c (find_thread_ptid): Renamed from find_thread_pid.
13248 All callers updated.
13249
13250 * linux-low.c (handle_extended_wait): Use linux_resume_one_lwp
13251 to resume the newly created thread, don't call ptrace (PTRACE_CONT)
13252 directly.
13253
13254 * linux-low.c (get_stop_pc): Print pc if debug_threads.
13255 (check_removed_breakpoint, linux_wait_for_lwp): Ditto.
13256 (linux_resume_one_lwp): Ditto.
13257
13258 2009-05-23 Doug Evans <dje@google.com>
13259
13260 * linux-low.c (linux_resume_one_lwp): Change type of first arg
13261 from struct inferior_list_entry * to struct lwp_info *.
13262 All callers updated.
13263
13264 2009-05-13 Doug Evans <dje@google.com>
13265
13266 * linux-x86-low.c: Don't include assert.h.
13267 (x86_siginfo_fixup): Use fatal, not assert.
13268 (x86_arch_setup): Fix comment.
13269
13270 2009-05-12 Doug Evans <dje@google.com>
13271
13272 Biarch support for i386/amd64 gdbserver.
13273 * Makefile.in (SFILES): Remove linux-i386-low.c, linux-x86-64-low.c.
13274 Add linux-x86-low.c.
13275 (linux-i386-low.o, linux-x86-64-low.o): Delete.
13276 (linux-x86-low.o): Add.
13277 * linux-x86-64-low.c: Delete.
13278 * linux-i386-low.c: Delete.
13279 * linux-x86-low.c: New file.
13280 * configure.srv (i?86-linux srv_tgtobj): Replace linux-i386-low.o with
13281 linux-x86-low.o.
13282 (x86_64-linux srv_tgtobj): Replace linux-x86-64-low.o with
13283 linux-x86-low.o.
13284 (x86_64-linux srv_regobj): Add reg-i386-linux.o.
13285 * linux-low.c: Include ansidecl.h, elf/common.h, elf/external.h.
13286 (linux_child_pid_to_exec_file): New function.
13287 (elf_64_header_p, elf_64_file_p): New functions.
13288 (siginfo_fixup): New function.
13289 (linux_xfer_siginfo): New local inf_siginfo. Call siginfo_fixup to
13290 give target a chance to convert layout.
13291 * linux-low.h (linux_target_ops): New member siginfo_fixup.
13292 (linux_child_pid_to_exec_file, elf_64_file_p): Declare.
13293
13294 2009-05-07 Doug Evans <dje@google.com>
13295
13296 * linux-low.c (regsets_fetch_inferior_registers): Fix memory leak.
13297 (regsets_store_inferior_registers): Ditto.
13298
13299 2009-05-06 Pedro Alves <pedro@codesourcery.com>
13300
13301 PR server/10048
13302
13303 * linux-low.c (must_set_ptrace_flags): Delete.
13304 (linux_create_inferior): Set `lwp->must_set_ptrace_flags' instead
13305 of the global.
13306 (linux_attach_lwp_1): Don't set PTRACE_SETOPTIONS here. Set
13307 `lwp->must_set_ptrace_flags' instead.
13308 (linux_wait_for_event_1): Set ptrace options here.
13309 (linux_wait_1): ... not here.
13310
13311 2009-04-30 Doug Evans <dje@google.com>
13312
13313 * inferiors.c (started_inferior_callback): New function.
13314 (attached_inferior_callback): New function.
13315 (have_started_inferiors_p, have_attached_inferiors_p): New functions.
13316 * server.c (print_started_pid, print_attached_pid): New functions.
13317 (detach_or_kill_for_exit): New function.
13318 (main): Call it instead of for_each_inferior (kill_inferior_callback).
13319 * server.h (have_started_inferiors_p): Declare.
13320 (have_attached_inferiors_p): Declare.
13321
13322 * inferiors.c (remove_process): Fix memory leak, free process.
13323 * linux-low.c (linux_remove_process): New function.
13324 (linux_kill): Call it instead of remove_process.
13325 (linux_detach, linux_wait_1): Ditto.
13326
13327 2009-04-19 Danny Backx <dannybackx@users.sourceforge.net>
13328
13329 * configure.srv: Add x86 Windows CE target.
13330
13331 2009-04-03 Ulrich Weigand <uweigand@de.ibm.com>
13332
13333 * inferiors.c (get_thread_process): Make global.
13334 * server.h (get_thread_process): Add prototype.
13335 * thread-db.c (find_one_thread): Use get_thread_process
13336 instead of current_process.
13337 (thread_db_get_tls_address): Do not crash if called when
13338 thread layer is not yet initialized.
13339
13340 2009-04-03 Ulrich Weigand <uweigand@de.ibm.com>
13341
13342 * remote-utils.c (prepare_resume_reply): Null-terminate packet.
13343 * spu-low.c (current_tid): Rename to ...
13344 (current_ptid): ... this.
13345 (fetch_ppc_register, fetch_ppc_memory, store_ppc_memory,
13346 spu_proc_xfer_spu, spu_resume, spu_request_interrupt): Use
13347 ptid_get_lwp (current_ptid) instead of current_tid.
13348 (spu_kill, spu_detach, spu_join, spu_wait): Use pid argument
13349 instead of current_tid. Use find_process_pid to verify pid
13350 argument is valid. Pass proper argument to remove_process.
13351 (spu_thread_alive): Compare current_ptid instead of current_tid.
13352 (spu_resume): Likewise.
13353
13354 2009-04-02 Pedro Alves <pedro@codesourcery.com>
13355
13356 * linux-low.c (usr_store_inferior_registers): Declare local `pid'
13357 variable.
13358
13359 2009-04-01 Pedro Alves <pedro@codesourcery.com>
13360
13361 Implement the multiprocess extensions, and add linux multiprocess
13362 support.
13363
13364 * server.h (ULONGEST): Declare.
13365 (struct ptid, ptid_t): New.
13366 (minus_one_ptid, null_ptid): Declare.
13367 (ptid_build, pid_to_ptid, ptid_get_pid, ptid_get_lwp)
13368 (ptid_get_tid, ptid_equal, ptid_is_pid): Declare.
13369 (struct inferior_list_entry): Change `id' type from unsigned from
13370 to ptid_t.
13371 (struct sym_cache, struct breakpoint, struct
13372 process_info_private): Forward declare.
13373 (struct process_info): Declare.
13374 (current_process): Declare.
13375 (all_processes): Declare.
13376 (initialize_inferiors): Declare.
13377 (add_thread): Adjust to use ptid_t.
13378 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id): Ditto.
13379 (add_process, remove_process, find_thread_pid): Declare.
13380 (find_inferior_id): Adjust to use ptid_t.
13381 (cont_thread, general_thread, step_thread): Change type to ptid_t.
13382 (multi_process): Declare.
13383 (push_event): Adjust to use ptid_t.
13384 (read_ptid, write_ptid): Declare.
13385 (prepare_resume_reply): Adjust to use ptid_t.
13386 (clear_symbol_cache): Declare.
13387 * inferiors.c (all_processes): New.
13388 (null_ptid, minus_one_ptid): New.
13389 (ptid_build, pid_to_ptid, ptid_get_pid, ptid_get_lwp)
13390 (ptid_get_tid, ptid_equal, ptid_is_pid): New.
13391 (add_thread): Change unsigned long to ptid. Remove gdb_id
13392 parameter. Adjust.
13393 (thread_id_to_gdb_id, thread_to_gdb_id): Change unsigned long to ptid.
13394 (gdb_id_to_thread): Rename to ...
13395 (find_thread_pid): ... this. Change unsigned long to ptid.
13396 (gdb_id_to_thread_id, find_inferior_id): Change unsigned long to ptid.
13397 (loaded_dll, pull_pid_from_list): Adjust.
13398 (add_process, remove_process, find_process_pid)
13399 (get_thread_process, current_process, initialize_inferiors): New.
13400 * target.h (struct thread_resume) <thread>: Change type to ptid_t.
13401 (struct target_waitstatus) <related_pid>: Ditto.
13402 (struct target_ops) <kill, detach>: Add `pid' argument. Change
13403 return type to int.
13404 (struct target_ops) <join>: Add `pid' argument.
13405 (struct target_ops) <thread_alive>: Change pid's type to ptid_t.
13406 (struct target_ops) <wait>: Add `ptid' field. Change return type
13407 to ptid.
13408 (kill_inferior, detach_inferior, join_inferior): Add `pid' argument.
13409 (mywait): Add `ptid' argument. Change return type to ptid_t.
13410 (target_pid_to_str): Declare.
13411 * target.c (set_desired_inferior): Adjust to use ptids.
13412 (mywait): Add new `ptid' argument. Adjust.
13413 (target_pid_to_str): New.
13414 * mem-break.h (free_all_breakpoints): Declare.
13415 * mem-break.c (breakpoints): Delelete.
13416 (set_breakpoint_at, delete_breakpoint, find_breakpoint_at)
13417 (check_mem_read, check_mem_write, delete_all_breakpoints): Adjust
13418 to use per-process breakpoint list.
13419 (free_all_breakpoints): New.
13420 * remote-utils.c (struct sym_cache) <name>: Drop `const'.
13421 (symbol_cache, all_symbols_looked_up): Delete.
13422 (hexchars): New.
13423 (ishex, unpack_varlen_hex, write_ptid, hex_or_minus_one,
13424 read_ptid): New.
13425 (prepare_resume_reply): Change ptid argument's type from unsigned
13426 long to ptid_t. Adjust. Implement W;process and X;process.
13427 (free_sym_cache, clear_symbol_cache): New.
13428 (look_up_one_symbol): Adjust to per-process symbol cache. *
13429 * server.c (cont_thread, general_thread, step_thread): Change type
13430 to ptid_t.
13431 (attached): Delete.
13432 (multi_process): New.
13433 (last_ptid): Change type to ptid_t.
13434 (struct vstop_notif) <ptid>: Change type to ptid_t.
13435 (queue_stop_reply, push_event): Change `ptid' argument's type to
13436 ptid_t.
13437 (discard_queued_stop_replies): Add `pid' argument.
13438 (start_inferior): Adjust to use ptids. Adjust to mywait interface
13439 changes. Don't reference the `attached' global.
13440 (attach_inferior): Adjust to mywait interface changes.
13441 (handle_query): Adjust to use ptids. Parse GDB's qSupported
13442 features. Handle and report "multiprocess+". Handle
13443 "qAttached:PID".
13444 (handle_v_cont): Adjust to use ptids. Adjust to mywait interface
13445 changes.
13446 (handle_v_kill): New.
13447 (handle_v_stopped): Adjust to use target_pid_to_str.
13448 (handle_v_requests): Allow multiple attaches and runs when
13449 multiprocess extensions are in effect. Handle "vKill".
13450 (myresume): Adjust to use ptids.
13451 (queue_stop_reply_callback): Add `arg' parameter. Handle it.
13452 (handle_status): Adjust to discard_queued_stop_replies interface
13453 change.
13454 (first_thread_of, kill_inferior_callback)
13455 (detach_or_kill_inferior_callback, join_inferiors_callback): New.
13456 (main): Call initialize_inferiors. Adjust to use ptids, killing
13457 and detaching from all inferiors. Handle multiprocess packet
13458 variants.
13459 * linux-low.h: Include gdb_proc_service.h.
13460 (struct process_info_private): New.
13461 (struct linux_target_ops) <pid_of>: Use ptid_get_pid.
13462 <lwpid_of>: Use ptid_get_lwp.
13463 (get_lwp_thread): Adjust.
13464 (struct lwp_info): Add `dead' member.
13465 (find_lwp_pid): Declare.
13466 * linux-low.c (thread_db_active): Delete.
13467 (new_inferior): Adjust comment.
13468 (inferior_pid): Delete.
13469 (linux_add_process): New.
13470 (handle_extended_wait): Adjust.
13471 (add_lwp): Change unsigned long to ptid.
13472 (linux_create_inferior): Add process to processes table. Adjust
13473 to use ptids. Don't set new_inferior here.
13474 (linux_attach_lwp): Rename to ...
13475 (linux_attach_lwp_1): ... this. Add `initial' argument. Handle
13476 it. Adjust to use ptids.
13477 (linux_attach_lwp): New.
13478 (linux_attach): Add process to processes table. Don't set
13479 new_inferior here.
13480 (struct counter): New.
13481 (second_thread_of_pid_p, last_thread_of_process_p): New.
13482 (linux_kill_one_lwp): Add `args' parameter. Handle it. Adjust to
13483 multiple processes.
13484 (linux_kill): Add `pid' argument. Handle it. Adjust to multiple
13485 processes. Remove process from process table.
13486 (linux_detach_one_lwp): Add `args' parameter. Handle it. Adjust
13487 to multiple processes.
13488 (any_thread_of): New.
13489 (linux_detach): Add `pid' argument, and handle it. Remove process
13490 from processes table.
13491 (linux_join): Add `pid' argument. Handle it.
13492 (linux_thread_alive): Change unsighed long argument to ptid_t.
13493 Consider dead lwps as not being alive.
13494 (status_pending_p): Rename `dummy' argument to `arg'. Filter out
13495 threads we're not interested in.
13496 (same_lwp, find_lwp_pid): New.
13497 (linux_wait_for_lwp): Change `pid' argument's type from int to
13498 ptid_t. Adjust.
13499 (linux_wait_for_event): Rename to ...
13500 (linux_wait_for_event_1): ... this. Change `pid' argument's type
13501 from int to ptid_t. Adjust.
13502 (linux_wait_for_event): New.
13503 (linux_wait_1): Add `ptid' argument. Change return type to
13504 ptid_t. Adjust. Use last_thread_of_process_p. Remove processes
13505 that exit from the process table.
13506 (linux_wait): Add `ptid' argument. Change return type to ptid_t.
13507 Adjust.
13508 (mark_lwp_dead): New.
13509 (wait_for_sigstop): Adjust to use ptids. If a process exits while
13510 stopping all threads, mark its main lwp as dead.
13511 (linux_set_resume_request, linux_resume_one_thread): Adjust to use
13512 ptids.
13513 (fetch_register, usr_store_inferior_registers)
13514 (regsets_fetch_inferior_registers)
13515 (regsets_store_inferior_registers, linux_read_memory)
13516 (linux_write_memory): Inline `inferior_pid'.
13517 (linux_look_up_symbols): Adjust to use per-process
13518 `thread_db_active'.
13519 (linux_request_interrupt): Adjust to use ptids.
13520 (linux_read_auxv): Inline `inferior_pid'.
13521 (initialize_low): Don't reference thread_db_active.
13522 * gdb_proc_service.h (struct ps_prochandle) <pid>: Remove.
13523 * proc-service.c (ps_lgetregs): Use find_lwp_pid.
13524 (ps_getpid): Return the pid of the current inferior.
13525 * thread-db.c (proc_handle, thread_agent): Delete.
13526 (thread_db_create_event, thread_db_enable_reporting): Adjust to
13527 per-process data.
13528 (find_one_thread): Change argument type to ptid_t. Adjust to
13529 per-process data.
13530 (maybe_attach_thread): Adjust to per-process data and ptids.
13531 (thread_db_find_new_threads): Ditto.
13532 (thread_db_init): Ditto.
13533 * spu-low.c (spu_create_inferior, spu_attach): Add process to
13534 processes table. Adjust to use ptids.
13535 (spu_kill, spu_detach): Adjust interface. Remove process from
13536 processes table.
13537 (spu_join, spu_thread_alive): Adjust interface.
13538 (spu_wait): Adjust interface. Remove process from processes
13539 table. Adjust to use ptids.
13540 * win32-low.c (current_inferior_tid): Delete.
13541 (current_inferior_ptid): New.
13542 (debug_event_ptid): New.
13543 (thread_rec): Take a ptid. Adjust.
13544 (child_add_thread): Add `pid' argument. Adjust to use ptids.
13545 (child_delete_thread): Ditto.
13546 (do_initial_child_stuff): Add `attached' argument. Add process to
13547 processes table.
13548 (child_fetch_inferior_registers, child_store_inferior_registers):
13549 Adjust.
13550 (win32_create_inferior): Pass 0 to do_initial_child_stuff.
13551 (win32_attach): Pass 1 to do_initial_child_stuff.
13552 (win32_kill): Adjust interface. Remove process from processes
13553 table.
13554 (win32_detach): Ditto.
13555 (win32_join): Adjust interface.
13556 (win32_thread_alive): Take a ptid.
13557 (win32_resume): Adjust to use ptids.
13558 (get_child_debug_event): Ditto.
13559 (win32_wait): Adjust interface. Remove exiting process from
13560 processes table.
13561
13562 2009-04-01 Pedro Alves <pedro@codesourcery.com>
13563
13564 Non-stop mode support.
13565
13566 * server.h (non_stop): Declare.
13567 (gdb_client_data, handler_func): Declare.
13568 (delete_file_handler, add_file_handler, start_event_loop):
13569 Declare.
13570 (handle_serial_event, handle_target_event, push_event)
13571 (putpkt_notif): Declare.
13572 * target.h (enum resume_kind): New.
13573 (struct thread_resume): Replace `step' field by `kind' field.
13574 (TARGET_WNOHANG): Define.
13575 (struct target_ops) <wait>: Add `options' argument.
13576 <supports_non_stop, async, start_non_stop>: New fields.
13577 (target_supports_non_stop, target_async): New.
13578 (start_non_stop): Declare.
13579 (mywait): Add `options' argument.
13580 * target.c (mywait): Add `options' argument. Print child exit
13581 notifications here.
13582 (start_non_stop): New.
13583 * server.c (non_stop, own_buf, mem_buf): New globals.
13584 (struct vstop_notif): New.
13585 (notif_queue): New global.
13586 (queue_stop_reply, push_event, discard_queued_stop_replies)
13587 (send_next_stop_reply): New.
13588 (start_inferior): Adjust to use resume_kind. Adjust to mywait
13589 interface changes.
13590 (attach_inferior): In non-stop mode, don't wait for the target
13591 here.
13592 (handle_general_set): Handle QNonStop.
13593 (handle_query): When handling qC, return the current general
13594 thread, instead of the first thread of the list.
13595 (handle_query): If the backend supports non-stop mode, include
13596 QNonStop+ in the qSupported query response.
13597 (handle_v_cont): Adjust to use resume_kind. Handle resume_stop
13598 and non-stop mode.
13599 (handle_v_attach, handle_v_run): Handle non-stop mode.
13600 (handle_v_stopped): New.
13601 (handle_v_requests): Report support for vCont;t. Handle vStopped.
13602 (myresume): Adjust to use resume_kind. Handle non-stop.
13603 (queue_stop_reply_callback): New.
13604 (handle_status): Handle non-stop mode.
13605 (main): Clear non_stop flag on reconnection. Use the event-loop.
13606 Refactor serial protocol handling from here ...
13607 (process_serial_event): ... to this new function. When GDB
13608 selects any thread, select one here. In non-stop mode, wait until
13609 GDB acks all pending events before exiting.
13610 (handle_serial_event, handle_target_event): New.
13611 * remote-utils.c (remote_open): Install remote_desc in the event
13612 loop.
13613 (remote_close): Remove remote_desc from the event loop.
13614 (putpkt_binary): Rename to...
13615 (putpkt_binary_1): ... this. Add `is_notic' argument. Handle it.
13616 (putpkt_binary): New as wrapper around putpkt_binary_1.
13617 (putpkt_notif): New.
13618 (prepare_resume_reply): In non-stop mode, don't change the
13619 general_thread.
13620 * event-loop.c: New.
13621 * Makefile.in (OBJ): Add event-loop.o.
13622 (event-loop.o): New rule.
13623
13624 * linux-low.h (pid_of): Moved here.
13625 (lwpid_of): New.
13626 (get_lwp_thread): Use lwpid_of.
13627 (struct lwp_info): Delete `lwpid' field. Add `suspended' field.
13628 * linux-low.c (pid_of): Delete.
13629 (inferior_pid): Use lwpid_of.
13630 (linux_event_pipe): New.
13631 (target_is_async_p): New.
13632 (delete_lwp): New.
13633 (handle_extended_wait): Use lwpid_of.
13634 (add_lwp): Don't set lwpid field.
13635 (linux_attach_lwp): Adjust debug output. Use lwpid_of.
13636 (linux_kill_one_lwp): If killing a running lwp, stop it first.
13637 Use lwpid_of. Adjust to linux_wait_for_event interface changes.
13638 (linux_detach_one_lwp): If detaching from a running lwp, stop it
13639 first. Adjust to linux_wait_for_event interface changes. Use
13640 lwpid_of.
13641 (linux_detach): Don't delete the main lwp here.
13642 (linux_join): Use my_waitpid. Avoid signal_pid. Use lwpid_of.
13643 (status_pending_p): Don't consider explicitly suspended lwps.
13644 (linux_wait_for_lwp): Take an integer pid instead of a lwp_info
13645 pointer. Add OPTIONS argument. Change return type to int. Use
13646 my_waitpid instead of sleeping. Handle WNOHANG. Use lwpid_of.
13647 (linux_wait_for_event): Take an integer pid instead of a lwp_info
13648 pointer. Add status pointer argument. Return a pid instead of a
13649 status. Use lwpid_of. Adjust to linux_wait_for_lwp interface
13650 changes. In non-stop mode, don't switch to a random thread.
13651 (linux_wait): Rename to...
13652 (linux_wait_1): ... this. Add target_options argument, and handle
13653 it. Adjust to use resume_kind. Use lwpid_of. In non-stop mode,
13654 don't handle the continue thread. Handle TARGET_WNOHANG. Merge
13655 clean exit and signal exit code. Don't stop all threads in
13656 non-stop mode. In all-stop mode, only stop all threads when
13657 reporting a stop to GDB. Handle explicit thread stop requests.
13658 (async_file_flush, async_file_mark): New.
13659 (linux_wait): New.
13660 (send_sigstop): Use lwpid_of.
13661 (wait_for_sigstop): Use lwpid_of. Adjust to linux_wait_for_event
13662 interface changes. In non-stop mode, don't switch to a random
13663 thread.
13664 (linux_resume_one_lwp): Use lwpid_of.
13665 (linux_continue_one_thread, linux_queue_one_thread): Merge into ...
13666 (linux_resume_one_thread): ... this. Handle resume_stop. In
13667 non-stop mode, don't look for pending flag in all threads.
13668 (resume_status_pending_p): Don't consider explicitly suspended
13669 threads.
13670 (my_waitpid): Reimplement. Emulate __WALL.
13671 (linux_request_interrupt, linux_read_offsets, linux_xfer_siginfo):
13672 Use lwpid_of.
13673 (sigchld_handler, linux_supports_non_stop, linux_async)
13674 (linux_start_non_stop): New.
13675 (linux_target_ops): Register linux_supports_non_stop, linux_async
13676 and linux_start_non_stop.
13677 (initialize_low): Install SIGCHLD handler.
13678 * thread-db.c (thread_db_create_event, find_one_thread)
13679 (thread_db_get_tls_address): Use lwpid_of.
13680 * win32-low.c (win32_detach): Adjust to use resume_kind.
13681 (win32_wait): Add `options' argument.
13682 * spu-low.c (spu_resume): Adjust to use resume_kind.
13683 (spu_wait): Add `options' argument.
13684
13685 2009-04-01 Pedro Alves <pedro@codesourcery.com>
13686
13687 Decouple target code from remote protocol.
13688
13689 * target.h (enum target_waitkind): New.
13690 (struct target_waitstatus): New.
13691 (struct target_ops) <wait>: Return an unsigned long. Take a
13692 target_waitstatus pointer instead of a char pointer.
13693 (mywait): Likewise.
13694 * target.c (mywait): Change prototype to return an unsigned long.
13695 Take a target_waitstatus pointer instead of a char pointer. Adjust.
13696 * server.h (thread_from_wait, old_thread_from_wait): Delete
13697 declarations.
13698 (prepare_resume_reply): Change prototype to take a
13699 target_waitstatus.
13700 * server.c (thread_from_wait, old_thread_from_wait): Delete.
13701 (last_status, last_ptid): New.
13702 (start_inferior): Remove "statusptr" argument. Adjust. Return a
13703 pid instead of a signal.
13704 (attach_inferior): Remove "status" and "signal" parameters.
13705 Adjust.
13706 (handle_query): For qGetTLSAddr, parse the thread id with strtol,
13707 not as an address.
13708 (handle_v_cont, handle_v_attach, handle_v_run, handle_v_kill)
13709 (handle_v_requests, myresume): Remove "status" and "signal"
13710 parameters. Adjust.
13711 (handle_status): New.
13712 (main): Delete local `status'. Adjust.
13713 * remote-utils.c: Include target.h.
13714 (prepare_resume_reply): Change prototype to take a
13715 target_waitstatus. Adjust.
13716
13717 * linux-low.c (linux_wait): Adjust to new target_ops->wait
13718 interface.
13719 * spu-low.c (spu_wait): Adjust.
13720 * win32-low.c (enum target_waitkind, struct target_waitstatus):
13721 Delete.
13722 (win32_wait): Adjust.
13723
13724 2009-04-01 Pedro Alves <pedro@codesourcery.com>
13725
13726 * target.h (struct thread_resume): Delete leave_stopped member.
13727 (struct target_ops): Add a `n' argument to the `resume' callback.
13728 * server.c (start_inferior): Adjust.
13729 (handle_v_cont, myresume): Adjust.
13730 * linux-low.c (check_removed_breakpoint): Adjust to resume
13731 interface change, and to removed leave_stopped field.
13732 (resume_ptr): Delete.
13733 (struct thread_resume_array): New.
13734 (linux_set_resume_request): Add new `arg' parameter. Adjust to
13735 resume interface change.
13736 (linux_continue_one_thread, linux_queue_one_thread)
13737 (resume_status_pending_p): Check if the resume field is NULL
13738 instead of checking the leave_stopped member.
13739 (linux_resume): Adjust to the target resume interface change.
13740 * spu-low.c (spu_resume): Adjust to the target resume interface
13741 change.
13742 * win32-low.c (win32_detach, win32_resume): Ditto.
13743
13744 2009-04-01 Pedro Alves <pedro@codesourcery.com>
13745
13746 * linux-low.c (linux_wait_for_event): Don't clear the `stepping'
13747 flag.
13748 (wait_for_sigstop): Don't leave a finished single-step SIGTRAP
13749 pending.
13750 (linux_continue_one_thread): Only preserve the stepping flag if
13751 there's a pending breakpoint.
13752
13753 2009-03-31 Pedro Alves <pedro@codesourcery.com>
13754
13755 * server.c (main): After the inferior having exited, call
13756 remote_close before exiting gdbserver.
13757
13758 2009-03-25 Thiago Jung Bauermann <bauerman@br.ibm.com>
13759
13760 Fix size of FPSCR in Power 7 processors.
13761 * linux-ppc-low.c (PPC_FEATURE_ARCH_2_05): Remove #define.
13762 (PPC_FEATURE_HAS_DFP): New #define.
13763 (ppc_arch_setup): Check for DFP feature instead of ISA 2.05 to decide on
13764 size of the FPSCR.
13765
13766 2009-03-23 Pedro Alves <pedro@codesourcery.com>
13767
13768 * server.c (handle_query) Whitespace and formatting.
13769
13770 2009-03-22 Pedro Alves <pedro@codesourcery.com>
13771
13772 * i387-fp.c, linux-arm-low.c, linux-cris-low.c,
13773 linux-crisv32-low.c, linux-i386-low.c, linux-low.c,
13774 linux-mips-low.c, linux-s390-low.c, linux-sparc-low.c,
13775 linux-x86-64-low.c, linux-xtensa-low.c, proc-service.c,
13776 regcache.c, remote-utils.c, server.c, spu-low.c, target.h,
13777 thread-db.c, win32-low.c, xtensa-xtregs.c, gdbreplay.c,
13778 Makefile.in, configure.ac: Fix whitespace throughout.
13779 * configure: Regenerate.
13780
13781 2009-03-22 Pedro Alves <pedro@codesourcery.com>
13782
13783 * inferiors.c (find_inferior): Make it safe for the callback
13784 function to delete the currently iterated inferior.
13785
13786 2009-03-22 Pedro Alves <pedro@codesourcery.com>
13787
13788 * Makefile.in (linuw_low_h): Move higher.
13789 (thread-db.o): Depend on $(linux_low_h).
13790
13791 2009-03-17 Pedro Alves <pedro@codesourcery.com>
13792
13793 Rename "process" to "lwp" throughout.
13794
13795 * linux-low.c (all_processes): Rename to...
13796 (all_lwps): ... this.
13797 (inferior_pid, handle_extended_wait, get_stop_pc): Adjust.
13798 (add_process): Rename to ...
13799 (add_lwp): ... this. Adjust.
13800 (linux_create_inferior): Adjust.
13801 (linux_attach_lwp): Adjust.
13802 (linux_attach): Adjust.
13803 (linux_kill_one_process): Rename to ...
13804 (linux_kill_one_lwp): ... this. Adjust.
13805 (linux_kill): Adjust.
13806 (linux_detach_one_process): Rename to ...
13807 (linux_detach_one_lwp): ... this. Adjust.
13808 (linux_detach): Adjust.
13809 (check_removed_breakpoint): Adjust.
13810 (status_pending_p): Adjust.
13811 (linux_wait_for_process): Rename to ...
13812 (linux_wait_for_lwp): ... this. Adjust.
13813 (linux_wait_for_event): Adjust.
13814 (send_sigstop): Adjust.
13815 (wait_for_sigstop): Adjust.
13816 (stop_all_processes): Rename to ...
13817 (stop_all_lwps): ... this.
13818 (linux_resume_one_process): Rename to ...
13819 (linux_resume_one_lwp): ... this. Adjust.
13820 (linux_set_resume_request, linux_continue_one_thread)
13821 (linux_queue_one_thread, resume_status_pending_p)
13822 (usr_store_inferior_registers, regsets_store_inferior_registers)
13823 (linux_request_interrupt, linux_read_offsets, linux_xfer_siginfo):
13824 Adjust.
13825 * linux-low.h (get_process): Rename to ...
13826 (get_lwp): ... this. Adjust.
13827 (get_thread_process): Rename to ...
13828 (get_thread_lwp): ... this. Adjust.
13829 (get_process_thread): Rename to ...
13830 (get_lwp_thread): ... this. Adjust.
13831 (struct process_info): Rename to ...
13832 (struct lwp_info): ... this.
13833 (all_processes): Rename to ...
13834 (all_lwps): ... this.
13835 * proc-service.c (ps_lgetregs): Adjust.
13836 * thread-db.c (thread_db_create_event, find_one_thread)
13837 (maybe_attach_thread, thread_db_get_tls_address): Adjust.
13838
13839 2009-03-14 Pedro Alves <pedro@codesourcery.com>
13840
13841 * server.c (handle_query): Handle "qAttached".
13842
13843 2009-03-13 Nathan Sidwell <nathan@codesourcery.com>
13844
13845 * Makefile.in, hostio-errno.c, errno.c, xtensa-xtregs.c: Change to
13846 GPLv3, update license URL.
13847
13848 2009-03-01 Doug Evans <dje@google.com>
13849
13850 * Makefile.in (INCLUDE_CFLAGS): Add -I$(srcdir)/../common.
13851 (server_h): Add gdb_signals.h.
13852 (signals.o): Update.
13853 * server.h (target_signal_from_host,target_signal_to_host_p)
13854 (target_signal_to_host,target_signal_to_name): Moved to gdb_signals.h.
13855
13856 2009-02-14 Pierre Muller <muller@ics.u-strasbg.fr>
13857
13858 * remote-utils.c (getpkt): Also generate remote-debug
13859 information if noack_mode is set.
13860
13861 2009-02-06 Pedro Alves <pedro@codesourcery.com>
13862
13863 * server.c (handle_query): Report qXfer:siginfo:read and
13864 qXfer:siginfo:write as supported and handle them.
13865 * target.h (struct target_ops) <qxfer_siginfo>: New field.
13866 * linux-low.c (linux_xfer_siginfo): New.
13867 (linux_target_ops): Set it.
13868
13869 2009-01-26 Pedro Alves <pedro@codesourcery.com>
13870
13871 * server.c (gdbserver_usage): Mention --remote-debug.
13872 (main): Accept '--remote-debug' switch.
13873
13874 2009-01-18 Doug Evans <dje@google.com>
13875
13876 * regcache.c (new_register_cache): No need to check result of xcalloc.
13877 * server.c (handle_search_memory): Back out calls to xmalloc,
13878 result is checked and error is returned to user upon failure.
13879 (handle_query): Ditto. Add more checks for result of malloc.
13880 (handle_v_cont): Check result of malloc, report error back to
13881 user upon failure.
13882 (handle_v_run): Ditto. Call freeargv.
13883 * server.h (freeargv): Declare.
13884 * utils.c (freeargv): New fn.
13885
13886 2009-01-15 Doug Evans <dje@google.com>
13887
13888 * gdbreplay.c (perror_with_name): Make arg const char *.
13889 * server.h (target_signal_to_name): Make return type const char *.
13890 * thread-db.c (thread_db_err_str): Make return type const char *.
13891 * utils.c (perror_with_name): Make arg const char *.
13892
13893 2009-01-14 Pedro Alves <pedro@codesourcery.com>
13894
13895 * win32-low.c (get_child_debug_event): Issue a final DBG_CONTINUE
13896 when handling a EXIT_PROCESS_DEBUG_EVENT.
13897
13898 2009-01-06 Joel Brobecker <brobecker@adacore.com>
13899
13900 * gdbreplay.c (gdbreplay_version): Update copyright year.
13901 * server.c (gdbserver_version): Likewise.
13902
13903 2009-01-05 Doug Evans <dje@google.com>
13904
13905 * linux-low.c (linux_attach_lwp): Add some comments/fixmes.
13906 (handle_extended_wait): Improve comment.
13907
13908 2008-12-13 Doug Evans <dje@google.com>
13909
13910 * utils.c (xmalloc,xcalloc,xstrdup): New fns.
13911 * server.h (ATTR_MALLOC): New macro.
13912 (xmalloc,xcalloc,xstrdup): Declare.
13913 * hostio.c: Replace malloc,calloc,strdup with xmalloc,xcalloc,xstrdup.
13914 * inferiors.c: Ditto.
13915 * linux-low.c: Ditto.
13916 * mem-break.c: Ditto.
13917 * regcache.c: Ditto.
13918 * remote-utils.c: Ditto.
13919 * server.c: Ditto.
13920 * target.c: Ditto.
13921 * win32-low.c: Ditto.
13922
13923 2008-12-12 Doug Evans <dje@google.com>
13924
13925 * linux-low.c (linux_wait_for_process): Don't clobber current_inferior
13926 in debugging printf.
13927
13928 * linux-low.c (handle_extended_wait): Simplify, use my_waitpid.
13929
13930 2008-12-09 Doug Evans <dje@google.com>
13931
13932 * linux-low.h (struct process_info): Delete member tid, unused.
13933 * thread-db.c (find_one_thread): Update.
13934 (maybe_attach_thread): Update.
13935
13936 2008-12-02 Pedro Alves <pedro@codesourcery.com>
13937
13938 * target.h (struct target_ops): Add qxfer_osdata member.
13939 * linux-low.c: Include ctype.h and pwd.h and sys/types.h
13940 and dirent.h.
13941 (linux_qxfer_osdata): New functions.
13942 (linux_target_ops): Register linux_qxfer_osdata as qxfer_osdata
13943 callback.
13944 * server.c (handle_query): Handle "qXfer:osdata:read:".
13945 * remote-utils.c (buffer_grow, buffer_free, buffer_init, buffer_finish)
13946 (buffer_xml_printf): New functions.
13947 * server.h (struct buffer): New.
13948 (buffer_grow_str, buffer_grow_str0): New macros.
13949 (buffer_grow, buffer_free, buffer_init, buffer_finish)
13950 (buffer_xml_printf): Declare.
13951
13952 2008-11-24 Doug Evans <dje@google.com>
13953
13954 * Makefile.in (VERSION,DIST,LINT,LINTFLAGS): Delete, unused.
13955
13956 2008-11-24 Daniel Jacobowitz <dan@codesourcery.com>
13957
13958 * server.c (handle_v_run): Always use the supplied argument list.
13959
13960 2008-11-19 Bob Wilson <bob.wilson@acm.org>
13961
13962 * xtensa-xtregs.c (XTENSA_ELF_XTREG_SIZE): Change to 4.
13963 (xtensa_regmap_table): Add entry for scompare1.
13964
13965 2008-11-18 Thiago Jung Bauermann <bauerman@br.ibm.com>
13966
13967 * Makefile.in (powerpc-isa205-32l.o, powerpc-isa205-32l.c,
13968 powerpc-isa205-altivec32l.o, powerpc-isa205-altivec32l.c,
13969 powerpc-isa205-vsx32l.o, powerpc-isa205-vsx32l.c,
13970 powerpc-isa205-64l.o, powerpc-isa205-64l.c,
13971 powerpc-isa205-altivec64l.o, powerpc-isa205-altivec64l.c,
13972 powerpc-isa205-vsx64l.o, powerpc-isa205-vsx64l.c): New targets.
13973 * configure.srv (powerpc*-*-linux*): Add ISA 2.05 object files and
13974 XML target descriptions.
13975 * linux-ppc-low.c (ppc_arch_setup): Init registers with 64-bit FPSCR
13976 when inferior is running on an ISA 2.05 or later processor. Add
13977 special case to return offset for full 64-bit slot of FPSCR when
13978 in 32-bits.
13979
13980 2008-11-14 Daniel Gutson <dgutson@codesourcery.com>
13981
13982 * Makefile.in (SFILES, clean): Added sparc64 files.
13983 (reg-sparc64.o, reg-sparc64.c): New.
13984 * configure.srv (sparc*-*-linux*): New configuration.
13985 * linux-low.c (regsets_fetch_inferior_registers): Swap ptrace
13986 syscall arguments for SPARC.
13987 (regsets_store_inferior_registers): Likewise.
13988 * linux-sparc-low.c: New file.
13989
13990 2008-10-21 Doug Evans <dje@google.com>
13991
13992 * Makefile.in (BFD_DIR,BFD,BFD_SRC,BFD_CFLAGS): Delete.
13993 (READLINE_DIR,READLINE_DEP): Delete.
13994 (INTERNAL_CFLAGS): Update.
13995 (LINTFLAGS): Update.
13996
13997 2008-10-10 Pedro Alves <pedro@codesourcery.com>
13998
13999 * server.c (handle_v_run): If GDB didn't specify an argv, use the
14000 whole argv from the last run, not just argv[0].
14001
14002 2008-09-08 Pedro Alves <pedro@codesourcery.com>
14003
14004 * regcache.c (new_register_cache): Return NULL if the register
14005 cache size isn't known yet.
14006 (free_register_cache): Avoid dereferencing a NULL regcache.
14007
14008 2008-09-04 Daniel Jacobowitz <dan@codesourcery.com>
14009
14010 * configure.srv: Merge MIPS and MIPS64.
14011
14012 2008-08-24 Maciej W. Rozycki <macro@linux-mips.org>
14013
14014 * Makefile.in (uninstall): Apply $(EXEEXT) too.
14015
14016 2008-08-18 Luis Machado <luisgpm@br.ibm.com>
14017
14018 * Makefile.in: Add required vsx dependencies.
14019
14020 * linux-ppc-low: Define PPC_FEATURE_HAS_VSX.
14021 Declare init_registers_powerpc_vsx32l.
14022 Declare init_registers_powerpc_vsx64l.
14023 Define PTRACE_GETVSXREGS and PTRACE_SETVSXREGS.
14024 (ppc_arch_setup): Check for VSX in hwcap.
14025 (ppc_fill_vsxregset): New function.
14026 (ppc_store_vsxregset): New function.
14027 Add new VSX entry in regset_info target_regsets.
14028
14029 * configure.srv: Add new VSX dependencies.
14030
14031 2008-08-12 Pedro Alves <pedro@codesourcery.com>
14032
14033 * remote-utils.c (noack_mode, transport_is_reliable): New globals.
14034 (remote_open): Set or clear transport_is_reliable.
14035 (putpkt_binary): Don't expect acks in noack mode.
14036 (getpkt): Don't send ack/nac in noack mode.
14037 * server.c (handle_general_set): Handle QStartNoAckMode.
14038 (handle_query): If connected by tcp pass QStartNoAckMode+ in
14039 qSupported.
14040 (main): Reset noack_mode on every connection.
14041 * server.h (noack_mode): Declare.
14042
14043 2008-08-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14044
14045 * Makefile.in (GDBREPLAY_OBS): New variable.
14046 (gdbreplay$(EXEEXT)): Use it to avoid unportable $^.
14047
14048 2008-08-05 Ulrich Weigand <uweigand@de.ibm.com>
14049 Daniel Jacobowitz <dan@codesourcery.com>
14050
14051 * linux-low.c (linux_resume_one_process): Ignore ESRCH.
14052 (usr_store_inferior_registers): Likewise.
14053 (regsets_store_inferior_registers): Likewise.
14054
14055 2008-07-31 Rolf Jansen <rj@surtec.com>
14056 Pedro Alves <pedro@codesourcery.com>
14057
14058 * configure.ac: Check for memmem declaration.
14059 * server.c [HAVE_MALLOC_H]: Include malloc.h.
14060 (disable_packet_vCont, disable_packet_Tthread, disable_packet_qC)
14061 (disable_packet_qfThreadInfo): Unconditionally compile.
14062 * server.h [!HAVE_DECL_MEMMEM]: Declare memmem.
14063 * configure, config.in: Regenerate.
14064
14065 2008-07-28 Doug Kwan <dougkwan@google.com>
14066
14067 * linux-low.c (sys/dir.h, sys/user.h): Remove includes.
14068 (linux_write_memory): Remove declaration of errno.
14069
14070 2008-07-12 Ulrich Weigand <uweigand@de.ibm.com>
14071
14072 * linux-low.c (handle_extended_wait): Do not use "status"
14073 variable uninitialized.
14074
14075 2008-07-07 Pedro Alves <pedro@codesourcery.com>
14076
14077 * server.c (handle_v_attach): Inhibit reporting dll changes.
14078
14079 2008-06-27 Pedro Alves <pedro@codesourcery.com>
14080
14081 * remote-utils.c (prepare_resume_reply): If requested, don't
14082 output "thread:TID" in the T stop reply.
14083
14084 * server.c (disable_packet_vCont, disable_packet_Tthread)
14085 (disable_packet_qC, disable_packet_qfThreadInfo): New globals.
14086 (handle_query): If requested, disable support for qC, qfThreadInfo
14087 and qsThreadInfo.
14088 (handle_v_requests): If requested, disable support for vCont.
14089 (gdbserver_show_disableable): New.
14090 (main): Handle --disable-packet and --disable-packet=LIST.
14091
14092 * server.h (disable_packet_vCont, disable_packet_Tthread)
14093 (disable_packet_qC, disable_packet_qfThreadInfo): Declare.
14094
14095 2008-06-20 Carlos O'Donell <carlos@codesourcery.com>
14096
14097 * server.c (gdbserver_usage): Mention --version.
14098
14099 2008-06-06 Daniel Jacobowitz <dan@codesourcery.com>
14100
14101 * Makefile.in (gdbreplay.o): New rule.
14102
14103 2008-06-06 Joseph Myers <joseph@codesourcery.com>
14104
14105 * gdbreplay.c (gdbreplay_version): Say gdbreplay in version
14106 message, not gdbserver.
14107
14108 2008-06-05 Vladimir Prus <vladimir@codesourcery.com>
14109 Nathan Sidwell <nathan@codesourcery.com>
14110 Joseph Myers <joseph@codesourcery.com>
14111
14112 * acinclude.m4: Include ../../config/acx.m4.
14113 * configure.ac: Use ACX_PKGVERSION and ACX_BUGURL.
14114 * configure, config.in: Regenerate.
14115 * Makefile.in (gdbreplay$(EXEEXT)): Add version.o.
14116 * server.c (gdbserver_version): Print PKGVERSION.
14117 (gdbsrever_usage): Add stream parameter. Print REPORT_BUGS_TO.
14118 (main): Adjust gdbserver_usage calls.
14119 * gdbreplay.c (version, host_name): Add declarations.
14120 (gdbreplay_version, gdbreplay_usage): New.
14121 (main): Accept --version and --help options.
14122
14123 2008-06-04 Daniel Jacobowitz <dan@codesourcery.com>
14124
14125 * linux-arm-low.c (thumb_breakpoint, thumb_breakpoint_len): New.
14126 (arm_breakpoint_at): Handle Thumb.
14127 (the_low_target): Add comment.
14128
14129 2008-05-29 Ulrich Weigand <uweigand@de.ibm.com>
14130
14131 * linux-ppc-low.c (ppc_collect_ptrace_register): Clear buffer.
14132
14133 2008-05-09 Doug Evans <dje@google.com>
14134
14135 * server.h (decode_search_memory_packet): Declare.
14136 * remote-utils.c (decode_search_memory_packet): New fn.
14137 * server.c (handle_search_memory_1): New fn.
14138 (handle_search_memory): New fn.
14139 (handle_query): Process qSearch:memory packets.
14140
14141 2008-05-08 Ulrich Weigand <uweigand@de.ibm.com>
14142
14143 * regcache.c (registers_length): Remove.
14144 (set_register_cache): Verify that PBUFSIZ is large enough to hold a
14145 full register packet.
14146 * regcache.h (registers_length): Remove prototype.
14147 * server.h (PBUFSIZ): Define to 16384.
14148
14149 2008-05-03 Ulrich Weigand <uweigand@de.ibm.com>
14150
14151 * configure.srv (powerpc*-*-linux*): Set srv_regobj to
14152 powerpc-32l.o, powerpc-altivec32l.o, powerpc-e500l.o,
14153 powerpc-64l.o, and powerpc-altivec64l.o.
14154 Remove rs6000/powerpc-32.xml, rs6000/powerpc-64.xml, and
14155 rs6000/powerpc-e500.xml; add rs6000/powerpc-32l.xml,
14156 rs6000/powerpc-altivec32l.xml, rs6000/powerpc-e500l.xml,
14157 rs6000/powerpc-64l.xml, rs6000/powerpc-altivec64l.xml,
14158 rs6000/power-linux.xml, and rs6000/power64-linux.xml
14159 to srv_xmlfiles.
14160
14161 * Makefile.in (reg-ppc.o, reg-ppc.c): Remove, replace by ...
14162 (powerpc-32l.o, powerpc-32l.c): ... these new rules.
14163 (powerpc-32.o, powerpc-32.c): Remove, replace by ...
14164 (powerpc-altivec32l.o, powerpc-altivec32l.c): ... these new rules.
14165 (powerpc-e500.o, powerpc-e500.c): Remove, replace by ...
14166 (powerpc-e500l.o, powerpc-e500l.c): ... these new rules.
14167 (reg-ppc64.o, reg-ppc64.c): Remove, replace by ...
14168 (powerpc-64l.o, powerpc-64l.c): ... these new rules.
14169 (powerpc-64.o, powerpc-64.c): Remove, replace by ...
14170 (powerpc-altivec64l.o, powerpc-altivec64l.c): ... these new rules.
14171 (clean): Update.
14172
14173 * linux-ppc-low.c (init_registers_ppc): Remove, replace by ...
14174 (init_registers_powerpc_32l): ... this new prototype.
14175 (init_registers_powerpc_32): Remove, replace by ...
14176 (init_registers_powerpc_altivec32l): ... this new prototype.
14177 (init_registers_powerpc_e500): Remove, replace by ...
14178 (init_registers_powerpc_e500l): ... this new prototype.
14179 (init_registers_ppc64): Remove, replace by ...
14180 (init_registers_powerpc_64l): ... this new prototype.
14181 (init_registers_powerpc_64): Remove, replace by ...
14182 (init_registers_powerpc_altivec64l): ... this new prototype.
14183 (ppc_num_regs): Set to 73.
14184 (PT_ORIG_R3, PT_TRAP): Define if necessary.
14185 (ppc_regmap, ppc_regmap_e500): Add values for orig_r3 and trap.
14186 (ppc_cannot_store_register): Handle orig_r3 and trap.
14187 (ppc_arch_setup): Update init_registers_... calls.
14188 (ppc_fill_gregset): Handle orig_r3 and trap.
14189
14190 * inferiors.c (clear_inferiors): Reset current_inferior.
14191
14192 2008-04-23 Paolo Bonzini <bonzini@gnu.org>
14193
14194 * acinclude.m4: Add override.m4.
14195 * configure: Regenerate.
14196
14197 2008-04-21 Ulrich Weigand <uweigand@de.ibm.com>
14198
14199 * linux-ppc-low.c (ppc_arch_setup): Reset ppc_hwcap after the
14200 initial call to init_register_ppc64.
14201
14202 2008-04-21 Ulrich Weigand <uweigand@de.ibm.com>
14203
14204 * configure.srv (powerpc64-*-linux*, powerpc-*-linux*): Merge into
14205 single powerpc*-*-linux* case.
14206 (s390-*-linux*, s390x-*-linux*): Merge into single s390*-*-linux* case.
14207
14208 2008-04-17 Ulrich Weigand <uweigand@de.ibm.com>
14209
14210 * configure.srv [powerpc64-*-linux*]: Remove powerpc-e500.o from
14211 srv_regobj. Remove rs6000/powerpc-e500.xml and rs6000/power-spe.xml
14212 from reg_xmlfiles.
14213 * linux-ppc-low.c: Include <elf.h>.
14214 (PPC_FEATURE_HAS_ALTIVEC, PPC_FEATURE_HAS_SPE): Define.
14215 (ppc_hwcap): New global variable.
14216 (ppc_regmap): Remove __SPE__ #ifdef sections.
14217 (ppc_regmap_e500): New global variable.
14218 (ppc_cannot_store_register): Update __SPE__ special case.
14219 (ppc_get_hwcap): New function.
14220 (ppc_arch_setup): Use it to determine whether inferior supports
14221 AltiVec or SPE registers. Set the_low_target.regmap if appropriate.
14222 (ppc_fill_vrregset, ppc_store_vrregset): Define unconditionally.
14223 Do not access registers if target does not support AltiVec.
14224 (ppc_fill_evrregset, ppc_store_evrregset): Define unconditionally.
14225 Do not access registers if target does not support SPE.
14226 (target_regsets): Unconditionally include AltiVec and SPE regsets.
14227
14228 2008-04-17 Daniel Jacobowitz <dan@codesourcery.com>
14229
14230 * linux-low.c (disabled_regsets, num_regsets): New.
14231 (use_regsets_p): Delete.
14232 (linux_wait_for_process): Clear disabled_regsets.
14233 (regsets_fetch_inferior_registers): Check and set it.
14234 (regsets_store_inferior_registers): Likewise.
14235 (linux_fetch_registers, linux_store_registers): Do not use
14236 use_regsets_p.
14237 (initialize_low): Allocate disabled_regsets.
14238
14239 2008-04-14 Daniel Jacobowitz <dan@codesourcery.com>
14240
14241 * Makefile.in (LIBOBJS): New.
14242 (OBS): Use LIBOBJS.
14243 (memmem.o): New rule.
14244 * configure.ac: Use AC_CONFIG_LIBOBJ_DIR and check for memmem.
14245 * configure: Regenerated.
14246
14247 2008-04-04 Ulrich Weigand <uweigand@de.ibm.com>
14248
14249 * server.c (handle_query): Never return "unsupported" for
14250 qXfer:features:read queries.
14251
14252 2008-03-27 Ulrich Weigand <uweigand@de.ibm.com>
14253
14254 * server.c (get_features_xml): Fix inverted condition.
14255 (handle_query): Always support qXfer:feature:read.
14256
14257 2008-03-10 Daniel Jacobowitz <dan@codesourcery.com>
14258
14259 * server.c (wrapper_argv): New.
14260 (start_inferior): Handle wrapper_argv. If set, expect an extra
14261 trap.
14262 (gdbserver_usage): Document --wrapper.
14263 (main): Parse --wrapper.
14264
14265 2008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
14266
14267 * configure.srv [powerpc64-*-linux*]: Add all files mentioned for
14268 powerpc-*-linux* to srv_regobj and reg_xmlfiles.
14269 * linux-ppc-low.c (ppc_get_pc): Support bi-arch operation.
14270 (ppc_set_pc): Likewise.
14271 (ppc_arch_setup): New function.
14272 (ppc_fill_gregset): Call ppc_collect_ptrace_register instead
14273 of collect_register.
14274 (the_low_target): Use ppc_arch_setup as arch_setup initializer.
14275
14276 2008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
14277
14278 * configure.srv [powerpc64-*-linux*]: Use linux-ppc-low.o
14279 instead of linux-ppc64-low.o.
14280 * linux-ppc64-low.c: Remove file.
14281 * Makefile.in (SFILES): Remove linux-ppc64-low.c.
14282 (linux-ppc64-low.o): Remove rule.
14283
14284 * linux-ppc-low.c (init_registers_ppc64): Add prototype.
14285 (init_registers_powerpc_64): Likewise.
14286 (ppc_regmap): Conditionally define depending on __powerpc64__.
14287 (ppc_cannot_store_register): Do not special-case "fpscr" when
14288 compiled on __powerpc64__.
14289 (ppc_collect_ptrace_register): New function.
14290 (ppc_supply_ptrace_register): New function.
14291 (ppc_breakpoint): Change type to "unsigned int".
14292 (ppc_breakpoint_at): Change type of "insn" to "unsigned int".
14293 (the_low_target): Conditionally provide initializers for the
14294 arch_setup member depending on __powerpc64__. Install
14295 collect_ptrace_register and supply_ptrace_register members.
14296
14297 2008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
14298
14299 * regcache.h (gdbserver_xmltarget): Add extern declaration.
14300 * server.c (gdbserver_xmltarget): Define.
14301 (get_features_xml): Use it to replace "target.xml" and arch_string.
14302
14303 * configure.srv: Remove srv_xmltarget. Add XML files that were
14304 mentioned there to srv_xmlfiles instead. Remove conditional tests
14305 on gdb_cv_arm_iwmmxt, gdb_cv_ppc_altivec, gdb_cv_ppc_spe; set
14306 srv_xmlfiles and srv_regobj to include all possible choices.
14307 * configure.ac (srv_xmltarget): Remove.
14308 (srv_xmlfiles): Do not add "target.xml".
14309 (gdb_cv_arm_iwmmxt, gdb_cv_ppc_altivec, gdb_cv_ppc_spe): Remove
14310 checks for supplementary target information.
14311 * configure: Regenerate.
14312 * Makefile.in (XML_TARGET): Remove.
14313 (target.xml): Remove rule.
14314 (clean): Do not clean up target.xml.
14315 (.PRECIOUS): Do not mention target.xml.
14316
14317 * target.h (struct target_ops): Remove arch_string member.
14318 * linux-low.c (linux_arch_string): Remove.
14319 (linux_target_ops): Remove arch_string initializer.
14320 * linux-low.h (struct linux_target_ops): Remove arch_string member.
14321 * linux-i386-low.c (the_low_target): Remove arch_string initializer.
14322 * linux-x86-64-low.c (the_low_target): Remove arch_string initializer.
14323 * spu-low.c (spu_arch_string): Remove.
14324 (spu_target_ops): Remove arch_string initializer.
14325 * win32-low.c (win32_arch_string): Remove.
14326 (win32_target_ops): Remove arch_string initializer.
14327 * win32-low.h (struct win32_target_ops): Remove arch_string member.
14328 * win32-arm-low.c (the_low_target): Remove arch_string initializer.
14329 * win32-i368-low.c (the_low_target): Remove arch_string initializer.
14330
14331 2008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
14332
14333 * linux-low.h (struct linux_target_ops): Replace left_pad_xfer field
14334 by collect_ptrace_register and supply_ptrace_register hooks.
14335 * linux-low.c (fetch_register): Use supply_ptrace_register callback
14336 instead of checking for the_low_target.left_pad_xfer.
14337 (usr_store_inferior_registers): Use collect_ptrace_register callback
14338 instead of checking for the_low_target.left_pad_xfer.
14339
14340 * linux-s390-low.c (s390_collect_ptrace_register): New function.
14341 (s390_supply_ptrace_register): Likewise.
14342 (s390_fill_gregset): Call s390_collect_ptrace_register.
14343 (the_low_target): Update.
14344
14345 * linux-ppc64-low.c (ppc_collect_ptrace_register): New function.
14346 (ppc_supply_ptrace_register): Likewise.
14347 (the_low_target): Update.
14348
14349 * linux-i386-low.c (the_low_target): Update.
14350 * linux-x86-64-low.c (the_low_target): Update.
14351
14352 2008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
14353
14354 * configure.srv [s390x-*-linux*]: Set srv_regobj to include both
14355 reg-s390.o and reg-s390x.o.
14356
14357 * linux-low.c (new_inferior): New global variable.
14358 (linux_create_inferior, linux_attach): Set it.
14359 (linux_wait_for_process): Call the_low_target.arch_setup after the
14360 target has stopped for the first time.
14361 (initialize_low): Do not call the_low_target.arch_setup.
14362
14363 * linux-s390-low.c (s390_get_pc): Support bi-arch operation.
14364 (s390_set_pc): Likewise.
14365 (s390_arch_setup): New function.
14366 (the_low_target): Use s390_arch_setup as arch_setup routine.
14367
14368 * regcache.c (realloc_register_cache): New function.
14369 (set_register_cache): Call it for each existing regcache.
14370
14371 2008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
14372
14373 * server.h (init_registers): Remove prototype.
14374
14375 * linux-low.h (struct linux_target_ops): Add arch_setup field.
14376 * linux-low.c (initialize_low): Call the_low_target.arch_setup ()
14377 instead of init_registers ().
14378 * linux-arm-low.c (init_registers_arm): Add prototype.
14379 (init_registers_arm_with_iwmmxt): Likewise.
14380 (the_low_target): Add initializer for arch_setup field.
14381 * linux-cris-low.c (init_registers_cris): Add prototype.
14382 (the_low_target): Add initializer for arch_setup field.
14383 * linux-crisv32-low.c (init_registers_crisv32): Add prototype.
14384 (the_low_target): Add initializer for arch_setup field.
14385 * linux-i386-low.c (init_registers_i386_linux): Add prototype.
14386 (the_low_target): Add initializer for arch_setup field.
14387 * linux-ia64-low.c (init_registers_ia64): Add prototype.
14388 (the_low_target): Add initializer for arch_setup field.
14389 * linux-m32r-low.c (init_registers_m32r): Add prototype.
14390 (the_low_target): Add initializer for arch_setup field.
14391 * linux-m68k-low.c (init_registers_m68k): Add prototype.
14392 (the_low_target): Add initializer for arch_setup field.
14393 * linux-mips-low.c (init_registers_mips_linux): Add prototype.
14394 (init_registers_mips64_linux): Likewise.
14395 (the_low_target): Add initializer for arch_setup field.
14396 * linux-ppc-low.c (init_registers_ppc): Add prototype.
14397 (init_registers_powerpc_32, init_registers_powerpc_e500): Likewise.
14398 (the_low_target): Add initializer for arch_setup field.
14399 * linux-ppc64-low.c (init_registers_ppc64): Add prototype.
14400 (init_registers_powerpc_64): Likewise.
14401 (the_low_target): Add initializer for arch_setup field.
14402 * linux-s390-low.c (init_registers_s390): Add prototype.
14403 (init_registers_s390x): Likewise.
14404 (the_low_target): Add initializer for arch_setup field.
14405 * linux-sh-low.c (init_registers_sh): Add prototype.
14406 (the_low_target): Add initializer for arch_setup field.
14407 * linux-x86-64-low.c (init_registers_x86_64_linux): Add prototype.
14408 (the_low_target): Add initializer for arch_setup field.
14409 * linux-xtensa-low.c (init_registers_xtensa): Add prototype.
14410 (the_low_target): Add initializer for arch_setup field.
14411
14412 * win32-low.h (struct win32_target_ops): Add arch_setup field.
14413 * win32-low.c (initialize_low): Call the_low_target.arch_setup ()
14414 instead of init_registers ().
14415 * win32-arm-low.c (init_registers_arm): Add prototype.
14416 (the_low_target): Add initializer for arch_setup field.
14417 * win32-i386-low.c (init_registers_i386): Add prototype.
14418 (the_low_target): Add initializer for arch_setup field.
14419
14420 * spu-low.c (init_registers_spu): Add prototype.
14421 (initialize_low): Call initialie_registers_spu () instead of
14422 initialize_registers ().
14423
14424 2008-02-19 Pedro Alves <pedro@codesourcery.com>
14425
14426 * server.c (handle_v_requests): When handling the vRun and vAttach
14427 packets, if already debugging a process, don't kill it. Return an
14428 error instead.
14429
14430 2008-02-17 Daniel Jacobowitz <dan@codesourcery.com>
14431
14432 * server.c (handle_query): Correct length check.
14433
14434 2008-02-14 Pedro Alves <pedro_alves@portugalmail.pt>
14435
14436 * win32-low.c (do_initial_child_stuff): Add process handle
14437 parameter. Set current_process_handle and current_process_id from the
14438 parameters. Clear globals.
14439 (win32_create_inferior): Don't set current_process_handle and
14440 current_process_id here. Instead pass them on the call to
14441 do_initial_child_stuff.
14442 (win32_attach): Likewise.
14443 (win32_clear_inferiors): New.
14444 (win32_kill): Don't close the current process handle or the
14445 current thread handle here. Instead call win32_clear_inferiors.
14446 (win32_detach): Don't open a new handle to the process. Call
14447 win32_clear_inferiors.
14448 (win32_join): Don't rely on current_process_handle; open a new
14449 handle using the process id.
14450 (win32_wait): Call win32_clear_inferiors when the inferior process
14451 has exited.
14452
14453 2008-02-14 Daniel Jacobowitz <dan@codesourcery.com>
14454
14455 * server.c (monitor_show_help): Add "exit".
14456
14457 2008-02-11 Maxim Grigoriev <maxim2405@gmail.com>
14458
14459 * Makefile.in (SFILES): Add linux-xtensa-low.c.
14460 (clean): Add reg-xtensa.c.
14461 (linux-xtensa-low.o, reg-xtensa.o, reg-xtensa.c): New dependencies.
14462 * configure.srv (xtensa*-*-linux*) New target.
14463 * linux-xtensa-low.c: New.
14464 * xtensa-xtregs.c: New.
14465
14466 2008-02-01 Pedro Alves <pedro_alves@portugalmail.pt>
14467
14468 * hostio.c: Don't include errno.h.
14469 (errno_to_fileio_errno): Move to hostio-errno.
14470 * hostio.c: (hostio_error): Remove the error parameter. Defer the
14471 error number outputting to the target->hostio_last_error callback.
14472 (hostio_packet_error): Use FILEIO_EINVAL directly.
14473 (handle_open, handle_pread, hostio_error, handle_unlink): Update
14474 calls to hostio_error.
14475 * hostio-errno.c: New.
14476 * server.h (hostio_last_error_from_errno): Declare.
14477 * target.h (target_ops): Add hostio_last_error member.
14478 * linux-low.c (linux_target_op): Register hostio_last_error_from_errno
14479 as hostio_last_error handler.
14480 * spu-low.c (spu_target_ops): Likewise.
14481 * win32-low.c [_WIN32_WCE] (win32_error_to_fileio_error)
14482 (wince_hostio_last_error): New functions.
14483 (win32_target_ops) [_WIN32_WCE]: Register wince_hostio_last_error
14484 as hostio_last_error handler.
14485 (win32_target_ops) [!_WIN32_WCE]: Register
14486 hostio_last_error_from_errno as hostio_last_error handler.
14487 * Makefile.in (SFILES): Add hostio.c and hostio-errno.c.
14488 (hostio-errno.o): New rule.
14489 * configure.ac (GDBSERVER_DEPFILES): Add $srv_hostio_err_objs.
14490 * configure.srv (srv_hostio_err_objs): New variable. Default to
14491 hostio-errno.o.
14492 (arm*-*-mingw32ce*): Set srv_hostio_err_objs to "".
14493 * configure: Regenerate.
14494
14495 2008-01-29 Daniel Jacobowitz <dan@codesourcery.com>
14496
14497 * linux-low.c (linux_attach_lwp): Do not _exit after errors.
14498 (linux_kill, linux_detach): Clean up the process list.
14499 * remote-utils.c (remote_open): Improve port number parsing.
14500 (putpkt_binary, input_interrupt): Only send interrupts if the target
14501 is running.
14502 * server.c (extended_protocol): Make static.
14503 (attached): Define earlier.
14504 (exit_requested, response_needed, program_argv): New variables.
14505 (target_running): New.
14506 (start_inferior): Clear attached here.
14507 (attach_inferior): Set attached here.
14508 (require_running): Define.
14509 (handle_query): Use require_running and target_running. Implement
14510 "monitor exit".
14511 (handle_v_attach, handle_v_run): New.
14512 (handle_v_requests): Use require_running. Handle vAttach and vRun.
14513 (gdbserver_usage): Update.
14514 (main): Redo argument parsing. Handle --debug and --multi. Handle
14515 --attach along with other options or after the port. Save
14516 program_argv. Support no initial program. Resynchronize
14517 communication with GDB after an error. Handle "monitor exit".
14518 Use require_running and target_running. Always allow the extended
14519 protocol. Do not error out for Hc0 or Hc-1. Do not automatically
14520 restart in extended mode.
14521 * README: Refer to the GDB manual. Update --attach usage.
14522
14523 2007-12-20 Andreas Schwab <schwab@suse.de>
14524
14525 * linux-low.c (STACK_SIZE): Define.
14526 (linux_tracefork_child): Use it. Use __clone2 on ia64.
14527 (linux_test_for_tracefork): Likewise.
14528
14529 2007-12-18 Daniel Jacobowitz <dan@codesourcery.com>
14530
14531 * linux-low.c (linux_wait_for_event): Update messages. Do not
14532 reinsert auto-delete breakpoints.
14533 * mem-break.c (struct breakpoint): Change return type of handler to
14534 int.
14535 (set_breakpoint_at): Update handler type.
14536 (reinsert_breakpoint_handler): Return 1 instead of calling
14537 delete_breakpoint.
14538 (reinsert_breakpoint_by_bp): Check for the original breakpoint before
14539 setting a new one.
14540 (check_breakpoints): Delete auto-delete breakpoints and return 2.
14541 * mem-break.h (set_breakpoint_at): Update handler type.
14542 * thread-db.c (thread_db_create_event, thread_db_create_event): Update.
14543 * win32-low.c (auto_delete_breakpoint): New.
14544 (get_child_debug_event): Use it.
14545
14546 2007-12-16 Daniel Jacobowitz <dan@codesourcery.com>
14547
14548 * configure.ac: Check for pread and pwrite.
14549 * hostio.c (handle_pread): Fall back to lseek and read.
14550 (handle_pwrite): Fall back to lseek and write.
14551 * config.in, configure: Regenerated.
14552
14553 2007-12-07 Daniel Jacobowitz <dan@codesourcery.com>
14554
14555 * server.c (myresume): Add own_buf argument.
14556 (main): Update calls.
14557
14558 2007-12-06 Daniel Jacobowitz <dan@codesourcery.com>
14559
14560 * linux-low.c (linux_wait, linux_resume): Do not handle async I/O.
14561 * remote-utils.c (remote_open): Do not call disable_async_io.
14562 (block_async_io): Delete.
14563 (unblock_async_io): Make static.
14564 (initialize_async_io): New.
14565 * server.c (handle_v_cont): Handle async I/O here.
14566 (myresume): Likewise. Move other common resume tasks here...
14567 (main): ... from here. Call initialize_async_io. Disable async
14568 I/O before the main loop.
14569 * server.h (initialize_async_io): Declare.
14570 (block_async_io, unblock_async_io): Delete prototypes.
14571 * spu-low.c (spu_resume, spu_wait): Do not handle async I/O here.
14572
14573 2007-12-06 Mick Davis <mickd@goanna.iinet.net.au>
14574
14575 * remote-utils.c (readchar): Allow binary data in received messages.
14576
14577 2007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
14578
14579 * win32-low.c (attaching): New global.
14580 (win32_create_inferior): Clear the `attaching' global.
14581 (win32_attach): Set the `attaching' global.
14582 (get_child_debug_event) [_WIN32_WCE]: Stop the inferior when
14583 attaching. Only set a breakpoint at the entry point if not
14584 attaching.
14585
14586 2007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
14587
14588 * server.c (main): Don't report dll events on the initial
14589 connection on attaches.
14590
14591 2007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
14592
14593 * server.c (main): Relax numerical bases supported for the pid of
14594 the --attach command line argument.
14595
14596 2007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
14597
14598 * win32-low.c (win32_attach): Call OpenProcess before
14599 DebugActiveProcess, not after. Add last error output to error
14600 call.
14601
14602 2007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
14603
14604 * win32-low.c (win32_get_thread_context)
14605 (win32_set_thread_context): New functions.
14606 (thread_rec): Use win32_get_thread_context.
14607 (continue_one_thread, win32_resume): Use win32_set_thread_context.
14608 * win32-low.h (win32_thread_info) [_WIN32_WCE]: Add `base_context'
14609 field.
14610
14611 2007-12-03 Leo Zayas
14612 Pedro Alves <pedro_alves@portugalmail.pt>
14613
14614 * win32-low.c (soft_interrupt_requested, faked_breakpoint): New
14615 global variables.
14616 (child_add_thread): Minor cleanup.
14617 (child_continue): Resume artificially suspended threads before
14618 calling ContinueDebugEvent.
14619 (suspend_one_thread): New.
14620 (fake_breakpoint_event): New.
14621 (get_child_debug_event): Change return type to int. Check here if
14622 gdb sent an interrupt request. If a soft interrupt was requested,
14623 fake a breakpoint event. Return 0 if there is no event to handle,
14624 and 1 otherwise.
14625 (win32_wait): Don't check here if gdb sent an interrupt request.
14626 Ensure there is a valid event to handle.
14627 (win32_request_interrupt): Add soft interruption method as last
14628 resort.
14629
14630 2007-12-03 Leo Zayas
14631 Pedro Alves <pedro_alves@portugalmail.pt>
14632
14633 * win32-low.h (win32_thread_info): Add descriptions to the
14634 structure members. Replace `suspend_count' counter by a
14635 `suspended' flag.
14636 * win32-low.c (thread_rec): Update condition of when to get the
14637 context from the inferior. Rely on ContextFlags being set if it
14638 has already been retrieved. Only suspend the inferior thread if
14639 we haven't already. Warn if that fails.
14640 (continue_one_thread): s/suspend_count/suspended/. Only call
14641 ResumeThread once. Warn if that fails.
14642
14643 2007-12-02 Pedro Alves <pedro_alves@portugalmail.pt>
14644
14645 * win32-low.c (win32_wait): Don't read from the inferior when it
14646 has already exited.
14647
14648 2007-12-02 Pedro Alves <pedro_alves@portugalmail.pt>
14649
14650 * Makefile.in (win32_low_h): New variable.
14651 (win32-low.o): Add dependency on $(win32_low_h).
14652 (win32-arm-low.o, win32-i386-low.o): New rules.
14653
14654 2007-11-30 Daniel Jacobowitz <dan@codesourcery.com>
14655
14656 * hostio.c: Correct copyright year.
14657
14658 2007-11-30 Daniel Jacobowitz <dan@codesourcery.com>
14659
14660 * Makefile.in (OBS): Add hostio.o.
14661 (hostio.o): New rule.
14662 * server.h (handle_vFile): Declare.
14663 * hostio.c: New file.
14664 * server.c (handle_v_requests): Take packet_len and new_packet_len
14665 for binary packets. Call handle_vFile.
14666 (main): Update call to handle_v_requests.
14667
14668 2007-11-05 Daniel Jacobowitz <dan@codesourcery.com>
14669
14670 * linux-low.c: Include <sched.h>.
14671
14672 2007-11-01 Daniel Jacobowitz <dan@codesourcery.com>
14673
14674 * linux-low.c (linux_tracefork_grandchild): New.
14675 (linux_tracefork_child): Use clone.
14676 (linux_test_for_tracefork): Use clone; allocate and free a stack.
14677
14678 2007-10-31 Joel Brobecker <brobecker@adacore.com>
14679
14680 * Makefile.in: Use $(SHELL) instead of "sh" to call regdat.sh.
14681
14682 2007-10-24 Daniel Jacobowitz <dan@codesourcery.com>
14683
14684 * linux-low.c (handle_extended_wait): Handle unexpected signals.
14685
14686 2007-10-23 Daniel Jacobowitz <dan@codesourcery.com>
14687
14688 * inferiors.c (change_inferior_id): Delete.
14689 (add_pid_to_list, pull_pid_from_list): New.
14690 * linux-low.c (PTRACE_SETOPTIONS, PTRACE_GETEVENTMSG)
14691 (PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK, PTRACE_O_TRACEVFORK)
14692 (PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC, PTRACE_O_TRACEVFORKDONE)
14693 (PTRACE_O_TRACEEXIT, PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK)
14694 (PTRACE_EVENT_CLONE, PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE)
14695 (PTRACE_EVENT_EXIT, __WALL): Provide default definitions.
14696 (stopped_pids, thread_db_active, must_set_ptrace_flags): New variables.
14697 (using_threads): Always set to 1.
14698 (handle_extended_wait): New.
14699 (add_process): Do not set TID.
14700 (linux_create_inferior): Set must_set_ptrace_flags.
14701 (linux_attach_lwp): Remove TID argument. Do not check using_threads.
14702 Use PTRACE_SETOPTIONS. Call new_thread_notify. Update all callers.
14703 (linux_thread_alive): Rename TID argument to LWPID.
14704 (linux_wait_for_process): Handle unknown processes. Do not use TID.
14705 (linux_wait_for_event): Do not use TID or check using_threads. Update
14706 call to dead_thread_notify. Call handle_extended_wait.
14707 (linux_create_inferior): Use PTRACE_SETOPTIONS.
14708 (send_sigstop): Delete sigstop_sent.
14709 (wait_for_sigstop): Avoid TID.
14710 (linux_supports_tracefork_flag, linux_tracefork_child, my_waitpid)
14711 (linux_test_for_tracefork): New.
14712 (linux_lookup_signals): Use thread_db_active and
14713 linux_supports_tracefork_flag.
14714 (initialize_low): Use thread_db_active and linux_test_for_tracefork.
14715 * linux-low.h (get_process_thread): Avoid TID.
14716 (struct process_ifo): Move thread_known and tid to the end. Remove
14717 sigstop_sent.
14718 (linux_attach_lwp, thread_db_init): Update prototypes.
14719 * server.h (change_inferior_id): Delete prototype.
14720 (add_pid_to_list, pull_pid_from_list): New prototypes.
14721 * thread-db.c (thread_db_use_events): New.
14722 (find_first_thread): Rename to...
14723 (find_one_thread): ...this. Update callers and messages. Do not
14724 call fatal. Check thread_db_use_events. Do not call
14725 change_inferior_id or new_thread_notify.
14726 (maybe_attach_thread): Update. Do not call new_thread_notify.
14727 (thread_db_init): Set thread_db_use_events. Check use_events.
14728 * utils.c (fatal, warning): Correct message prefix.
14729
14730 2007-10-15 Daniel Jacobowitz <dan@codesourcery.com>
14731
14732 * Makefile.in (clean): Remove new files.
14733 (powerpc-32.o, powerpc-32.c, powerpc-e500.o, powerpc-e500.c)
14734 (powerpc-64.o, powerpc-64.c): New rules.
14735 * configure.srv: Use alternate register sets for powerpc64-*-linux*
14736 with AltiVec, powerpc-*-linux* with AltiVec, and powerpc-*-linux*
14737 with SPE.
14738 * linux-ppc-low.c (ppc_regmap): Do not fetch the FP registers for
14739 SPE targets.
14740 (ppc_cannot_store_register): Do not check for FPSCR for SPE targets.
14741 (PTRACE_GETVRREGS, PTRACE_SETVRREGS, SIZEOF_VRREGS, ppc_fill_vrregset)
14742 (ppc_store_vrregset, PTRACE_GETEVRREGS, PTRACE_SETEVRREGS)
14743 (struct gdb_evrregset_t, ppc_fill_evrregset, ppc_store_evrregset): New.
14744 (target_regsets): Add AltiVec and SPE register sets.
14745 * configure.ac: Check for AltiVec and SPE.
14746 * linux-ppc64-low.c (PTRACE_GETVRREGS, PTRACE_SETVRREGS, SIZEOF_VRREGS)
14747 (ppc_fill_vrregset, ppc_store_vrregset): New.
14748 (target_regsets): Add AltiVec register set.
14749 * configure: Regenerated.
14750
14751 2007-09-19 Daniel Jacobowitz <dan@codesourcery.com>
14752
14753 * linux-low.c (O_LARGEFILE): Define.
14754 (linux_read_memory): Use /proc/PID/mem.
14755 * configure.ac: Use AC_GNU_SOURCE. Check for pread64.
14756 * configure, config.in: Regenerated.
14757
14758 2007-09-04 Daniel Jacobowitz <dan@codesourcery.com>
14759
14760 * linux-low.c (linux_wait_for_event): Do not pass signals while
14761 single-stepping.
14762
14763 2007-09-03 Pedro Alves <pedro_alves@portugalmail.pt>
14764
14765 * win32-low.c (create_process): New.
14766 (win32_create_inferior): Use create_process instead of
14767 CreateProcess. If create_process failed retry appending an ".exe"
14768 suffix. Store the GetLastError result immediatelly after
14769 create_process calls and use it on the call to error.
14770
14771 2007-09-03 Pedro Alves <pedro_alves@portugalmail.pt>
14772
14773 * win32-low.c (handle_load_dll): Don't use toolhelp when waiting.
14774
14775 2007-08-23 Joel Brobecker <brobecker@adacore.com>
14776
14777 * configure.ac: Switch license to GPLv3.
14778
14779 2007-08-01 Michael Snyder <msnyder@access-company.com>
14780
14781 * remote-utils.c (putpkt_binary): Memory leak, free buf2.
14782
14783 2007-07-31 Pedro Alves <pedro_alves@portugalmail.pt>
14784
14785 * win32-low.c (winapi_CloseToolhelp32Snapshot) [_WIN32_WCE]: New
14786 typedef.
14787 (win32_CloseToolhelp32Snapshot) [_WIN32_WCE]: New global var.
14788 (load_toolhelp) [_WIN32_WCE]: Load TOOLHELP.DLL. Get
14789 CloseToolhelp32Snapshot.
14790 (toolhelp_get_dll_name) [_WIN32_WCE]: Close the snapshot with
14791 CloseToolhelp32Snapshot.
14792
14793 2007-07-27 Michael Snyder <michael.snyder@access-company.com>
14794
14795 * server.c (main): Check for inferior exit before main loop.
14796
14797 2007-07-18 Pedro Alves <pedro_alves@portugalmail.pt>
14798
14799 * remote-utils.c (remote_open): Set SO_KEEPALIVE on remote_desc
14800 instead of on tmp_desc.
14801
14802 2007-07-17 Pedro Alves <pedro_alves@portugalmail.pt>
14803 Daniel Jacobowitz <dan@codesourcery.com>
14804
14805 * inferiors.c (all_dlls, dlls_changed, get_dll): New.
14806 (add_thread): Minor cleanups.
14807 (clear_inferiors): Move lower in the file. Clear the DLL
14808 list.
14809 (free_one_dll, match_dll, loaded_dll, unloaded_dll, clear_list): New.
14810 * remote-utils.c (prepare_resume_reply): Check dlls_changed.
14811 (xml_escape_text): New.
14812 * server.c (handle_query): Handle qXfer:libraries:read. Report it
14813 for qSupported.
14814 (handle_v_cont): Report errors.
14815 (gdbserver_version): Update.
14816 (main): Correct size of own_buf. Do not report initial DLL events.
14817 * server.h (struct dll_info, all_dlls, dlls_changed, loaded_dll)
14818 (unloaded_dll, xml_escape_text): New.
14819 * win32-low.c (enum target_waitkind): Update comments.
14820 (win32_add_one_solib, get_image_name, winapi_EnumProcessModules)
14821 (winapi_GetModuleInformation, winapi_GetModuleFileNameExA)
14822 (win32_EnumProcessModules, win32_GetModuleInformation)
14823 (win32_GetModuleFileNameExA, load_psapi, psapi_get_dll_name)
14824 (winapi_CreateToolhelp32Snapshot, winapi_Module32First)
14825 (winapi_Module32Next, win32_CreateToolhelp32Snapshot)
14826 (win32_Module32First, win32_Module32Next, load_toolhelp)
14827 (toolhelp_get_dll_name, handle_load_dll, handle_unload_dll): New.
14828 (get_child_debug_event): Handle DLL events.
14829 (win32_wait): Likewise.
14830
14831 2007-07-12 Daniel Jacobowitz <dan@codesourcery.com>
14832
14833 * configure.srv: Set srv_linux_regsets for sh*-*-linux*.
14834 * linux-sh-low.c (sh_fill_gregset, target_regsets): New.
14835
14836 2007-07-08 Pedro Alves <pedro_alves@portugalmail.pt>
14837
14838 * win32-low.c (handle_output_debug_string): Ignore event if not
14839 waiting.
14840
14841 2007-07-08 Pedro Alves <pedro_alves@portugalmail.pt>
14842
14843 * win32-arm-low.c (arm_wince_breakpoint): Fix typo.
14844
14845 2007-07-03 Daniel Jacobowitz <dan@codesourcery.com>
14846
14847 * remote-utils.c (look_up_one_symbol): Handle 'm' packets.
14848
14849 2007-07-02 Daniel Jacobowitz <dan@codesourcery.com>
14850
14851 * inferiors.c (change_inferior_id): Add comment.
14852 * linux-low.c (check_removed_breakpoint): Add an early
14853 prototype. Improve debug output.
14854 (linux_attach): Doc update.
14855 (linux_detach_one_process, linux_detach): Clean up before releasing
14856 each process.
14857 (send_sigstop, wait_for_sigstop): Improve comments and debug output.
14858 * linux-low.h (struct process_info): Doc improvement.
14859 * mem-break.c (delete_all_breakpoints): New.
14860 * mem-break.h (delete_all_breakpoints): New prototype.
14861 * thread-db.c (find_first_thread): New.
14862 (thread_db_create_event): Call it instead of
14863 thread_db_find_new_threads. Clean up unused variables.
14864 (maybe_attach_thread): Remove first thread handling.
14865 (thread_db_find_new_threads): Use find_first_thread.
14866 (thread_db_get_tls_address): Likewise.
14867
14868 2007-06-27 Daniel Jacobowitz <dan@codesourcery.com>
14869
14870 * thread-db.c (thread_db_find_new_threads): Add prototype.
14871 (thread_db_create_event): Check for the main thread before adding
14872 a new thread.
14873 (maybe_attach_thread): Only enable event reporting if TID == 0.
14874 (thread_db_get_tls_address): Check for new threads.
14875
14876 2007-06-20 Daniel Jacobowitz <dan@codesourcery.com>
14877
14878 * linux-low.c (linux_create_inferior): Try execv before execvp.
14879 * spu-low.c (spu_create_inferior): Likewise.
14880
14881 2007-06-13 Mike Frysinger <vapier@gentoo.org>
14882
14883 * linux-low.c (linux_create_inferior): Change execv to execvp.
14884 * spu-low.c (spu_create_inferior): Likewies.
14885
14886 2007-06-13 Daniel Jacobowitz <dan@codesourcery.com>
14887
14888 * Makefile.in (clean): Clean new files instead of deleted ones.
14889 (reg-mips.o, reg-mips.c, reg-mips64.o, reg-mips64.c): Delete.
14890 (mips-linux.o, mips-linux.c, mips64-linux.o, mips64-linux.c): New
14891 rules.
14892 * configure.srv: Specify XML files and new regformats for MIPS and
14893 MIPS64 GNU/Linux.
14894 * linux-mips-low.c (mips_num_regs): Set to only used registers.
14895 (mips_regmap): Do not fetch $0. Remove unused registers. Add
14896 an entry for the restart register.
14897 (mips_cannot_fetch_register, mips_cannot_store_register)
14898 (mips_reinsert_addr, mips_fill_fpregset, mips_store_fpregset): Update
14899 register names to match the XML descriptions.
14900 (mips_fill_gregset, mips_store_gregset): Likewise. Handle the
14901 restart register instead of $0.
14902
14903 2007-06-12 Ulrich Weigand <uweigand@de.ibm.com>
14904 Markus Deuling <deuling@de.ibm.com>
14905
14906 * remote-utils.c (decode_xfer_write): New function.
14907 * server.h (decode_xfer_write): Add prototype.
14908 * server.c (handle_query): Add PACKET_LEN argument. Support
14909 qXfer:spu:read and qXfer:spu:write packets.
14910 (main): Pass packet_len to handle_query.
14911 * spu-low.c (spu_target_ops): Add spu_proc_xfer_spu.
14912 * target.h (target_ops): Add qxfer_spu.
14913
14914 2007-06-12 Ulrich Weigand <uweigand@de.ibm.com>
14915
14916 * spu-low.c (spu_proc_xfer_spu): Do not return failure when
14917 accessing non-seekable spufs files.
14918
14919 2007-05-16 Markus Deuling <deuling@de.ibm.com>
14920
14921 * server.c (handle_query): Add reply for qC packet.
14922
14923 2007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
14924 Leo Zayas <lerele@champenstudios@com>
14925
14926 * server.h (check_remote_input_interrupt_request): New function.
14927 * remote_utils.c (INVALID_DESCRIPTOR): New define.
14928 (remote_desc): Initialize with INVALID_DESCRIPTOR.
14929 (input_interrupt): Expose on USE_WIN32API too. Fix whitespace.
14930 (check_remote_input_interrupt_request): New function.
14931 * server.h (check_remote_input_interrupt_request): Declare.
14932 * win32-low.c (winapi_DebugBreakProcess,
14933 winapi_GenerateConsoleCtrlEvent): New typedefs.
14934 (get_child_debug_event): Lower Win32 debug event polling from 1 sec
14935 to 250 ms.
14936 (win32_wait): Check for remote interrupt request
14937 with check_remote_input_interrupt_request.
14938 (win32_request_interrupt): New function.
14939 (win32_target_op): Set request_interrupt to win32_request_interrupt.
14940
14941 2007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
14942
14943 * win32-low.c (debug_registers_changed,
14944 debug_registers_used, CONTEXT_EXTENDED_REGISTERS,
14945 CONTEXT_FLOATING_POINT, CONTEXT_DEBUG_REGISTERS,
14946 CONTEXT_DEBUGGER, CONTEXT_DEBUGGER_DR): Delete.
14947 (thread_rec): Get context using the low target.
14948 (child_add_thread): Call thread_added on the low target,
14949 which does the same thing.
14950 (regptr): Delete.
14951 (do_initial_child_stuff): Remove debug registers references.
14952 Set context using the low target. Resume threads after
14953 setting the contexts.
14954 (child_continue): Remove dead variable. Remove debug
14955 registers references.
14956 (child_fetch_inferior_registers): Go through the low target.
14957 (do_child_store_inferior_registers): Remove.
14958 (child_store_inferior_registers): Go through the low target.
14959 (win32_resume): Remove debug registers references.
14960 Set context using the low target.
14961 (handle_exception): Change return type to void. Don't record
14962 context here. Set status to TARGET_WAITKIND_SPURIOUS on a
14963 first chance exception.
14964 (get_child_debug_event): Change return type to void. Remove
14965 goto loop. Always return after waiting for debug event.
14966 (win32_wait): Convert to switch statement. Handle spurious
14967 events.
14968
14969 * win32-i386-low.c (debug_registers_changed,
14970 debug_registers_used): New.
14971 (initial_stuff): Rename to ...
14972 (i386_initial_stuff): ... this. Clear debug registers
14973 state variables.
14974 (store_debug_registers): Delete.
14975 (i386_get_thread_context): New.
14976 (load_debug_registers): Delete.
14977 (i386_set_thread_context): New.
14978 (i386_thread_added): New.
14979 (single_step): Rename to ...
14980 (i386_single_step): ... this.
14981 (do_fetch_inferior_registers): Rename to ...
14982 (i386_fetch_inferior_register): ... this.
14983 (i386_store_inferior_register): New.
14984 (the_low_target): Adapt to new interface.
14985
14986 * win32-arm-low.c (CONTEXT_FLOATING_POINT): Define.
14987 (arm_get_thread_context): New.
14988 (arm_set_thread_context): New.
14989 (regptr): New.
14990 (do_fetch_inferior_registers): Rename to ...
14991 (arm_fetch_inferior_register): ... this.
14992 (arm_store_inferior_register): New.
14993 (arm_wince_breakpoint): Reimplement as unsigned long.
14994 (arm_wince_breakpoint_len): Define.
14995 (the_low_target): Adapt to new interface.
14996
14997 * win32-low.h (target_ops): Remove regmap, store_debug_registers and
14998 load_debug_registers. Add get_thread_context, set_thread_context,
14999 thread_added and store_inferior_register. Rename
15000 fetch_inferior_registers to fetch_inferior_register.
15001 (regptr): Remove declaration.
15002
15003 2007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
15004
15005 * linux-low.c (linux_detach): Change return type to int. Return 0.
15006 * spu-low.c (spu_detach): Likewise.
15007
15008 2007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
15009
15010 * target.h (target_ops): Change return type of detach to int.
15011 Add join.
15012 (join_inferior): New.
15013 * server.c (main): Don't skip detach support on mingw32.
15014 If the inferior doesn't support detaching return error.
15015 Call join_inferior instead of using waitpid.
15016 * linux-low.c (linux_join): New.
15017 (linux_target_op): Add linux_join.
15018 * spu-low.c (spu_join): New.
15019 (spu_target_ops): Add spu_join.
15020 * win32-low.c (win32_detach): Adapt to new interface.
15021 Reopen current_process_handle before detaching. Issue a child
15022 resume before detaching.
15023 (win32_join): New.
15024 (win32_target_op): Add win32_join.
15025
15026 2007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
15027
15028 * win32-low.c (win32-attach): Fix return value.
15029 * target.h (target_ops): Describe ATTACH return values.
15030
15031 2007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
15032
15033 * win32-low.c (GETPROCADDRESS): Define.
15034 (winapi_DebugActiveProcessStop): Add WINAPI. typedef as pointer.
15035 (winapi_DebugSetProcessKillOnExit): Likewise.
15036 (win32_create_inferior): Force usage of ansi CreateProcessA.
15037 (win32_attach): Use GETPROCADDRESS.
15038 (win32_detach): Likewise.
15039
15040 2007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
15041
15042 * win32-low.c (win32_wait): Don't use WSTOPSIG.
15043
15044 2007-03-30 Pedro Alves <pedro_alves@portugalmail.pt>
15045
15046 * win32-low.c: Commit leftover changes from 2007-03-29.
15047
15048 2007-03-30 Daniel Jacobowitz <dan@codesourcery.com>
15049
15050 * i387-fp.c (struct i387_fsave, struct i387_fxsave): Make 16-bit
15051 fields short instead of int. Add explicit padding.
15052 (i387_cache_to_fsave): Remove unnecessary casts.
15053 (i387_fsave_to_cache): Doc fix.
15054 (i387_cache_to_fxsave): Remove unnecessary casts and masking.
15055
15056 2007-03-30 Daniel Jacobowitz <dan@codesourcery.com>
15057
15058 * i387-fp.c (i387_cache_to_fxsave): Reinitialize val2 before use.
15059 (i387_fxsave_to_cache): Check fp->ftag while building ftag value.
15060
15061 2007-03-29 Pedro Alves <pedro_alves@portugalmail.pt>
15062
15063 * configure.srv (arm*-*-mingw32ce*): Move near the other
15064 arm targets.
15065
15066 2007-03-29 Pedro Alves <pedro_alves@portugalmail.pt>
15067
15068 * configure.ac: Add errno checking.
15069 (AC_CHECK_HEADERS): Add errno.h, fcntl.h, signal.h,
15070 sys/file.h and malloc.h.
15071 (AC_CHECK_DECLS): Add perror.
15072 (srv_mingwce): Handle.
15073 * configure.srv (i[34567]86-*-cygwin*): Add
15074 win32-i386-low.o to srv_tgtobj.
15075 (i[34567]86-*-mingw*): Likewise.
15076 (arm*-*-mingw32ce*): Add case.
15077 * gdbreplay.c [HAVE_SYS_FILE_H, HAVE_SIGNAL_H,
15078 HAVE_FCNTL_H, HAVE_ERRNO_H, HAVE_MALLOC_H]: Check.
15079 [__MINGW32CE__] (strerror): New function.
15080 [__MINGW32CE__] (errno): Define to GetLastError.
15081 [__MINGW32CE__] (COUNTOF): New macro.
15082 (remote_open): Remove extra close call.
15083 * mem-break.c (delete_breakpoint_at): New function.
15084 * mem-break.h (delete_breakpoint_at): Declare.
15085 * remote-utils.c [HAVE_SYS_FILE_H, HAVE_SIGNAL_H,
15086 HAVE_FCNTL_H, HAVE_UNISTD_H, HAVE_ERRNO_H]: Check.
15087 [USE_WIN32API] (read, write): Add char* casts.
15088 * server.c [HAVE_UNISTD_H, HAVE_SIGNAL_H]: Check.
15089 * server.h: Include wincecompat.h on Windows CE.
15090 [HAVE_ERRNO_H]: Check.
15091 (perror): Declare if not declared.
15092 * utils.c: Add stdlib.h, errno.h and malloc.h includes.
15093 (perror_with_name): Remove errno declaration.
15094 * wincecompat.h: New.
15095 * wincecompat.c: New.
15096 * win32-low.h: New.
15097 * win32-arm-low.c: New.
15098 * win32-i386-low.c: New.
15099 (win32-low.c): Include mem-break.h and win32-low.h, and winnt.h.
15100 (OUTMSG2): Make it safe.
15101 (_T): New macro.
15102 (COUNTOF): New macro.
15103 (NUM_REGS): Get it from the low target.
15104 (CONTEXT_EXTENDED_REGISTERS, CONTEXT_FLOATING_POINT,
15105 CONTEXT_DEBUG_REGISTERS): Add fallbacks to 0.
15106 (thread_rec): Let low target handle debug registers.
15107 (child_add_thread): Likewise.
15108 (child_init_thread_list): Likewise.
15109 (continue_one_thread): Likewise.
15110 (regptr): New.
15111 (do_child_fetch_inferior_registers): Move to ...
15112 * win32-i386-low.c: ... here, and rename to ...
15113 (do_fetch_inferior_registers): ... this.
15114 * win32-low.c (child_fetch_inferior_registers):
15115 Go through the low target.
15116 (do_child_store_inferior_registers): Use regptr.
15117 (strwinerror): New function.
15118 (win32_create_inferior): Handle Windows CE.
15119 Use strwinerror instead of strerror on Windows error
15120 codes. Add program to the error output.
15121 Don't close the main thread handle on Windows CE.
15122 (win32_attach): Use coredll.dll on Windows CE.
15123 (win32_kill): Close current process and current
15124 thread handles.
15125 (win32_detach): Use coredll.dll on Windows CE.
15126 (win32_resume): Let low target handle debug registers, and
15127 step request.
15128 (handle_exception): Add/Remove initial breakpoint. Avoid
15129 non-existant WSTOPSIG on Windows CE.
15130 (win32_read_inferior_memory): Cast to remove warning.
15131 (win32_arch_string): Go through the low target.
15132 (initialize_low): Call set_breakpoint_data with the low
15133 target's breakpoint.
15134 * win32-low.c (dr, FLAG_TRACE_BIT, FCS_REGNUM,
15135 FOP_REGNUM, mappings): Move to ...
15136 * win32-i386-low.c: ... here.
15137 * win32-low.c (win32_thread_info): Move to ...
15138 * win32-low.h: ... here.
15139 * Makefile.in (SFILES): Add win32-low.c, win32-i386-low.c,
15140 win32-arm-low.c and wincecompat.c.
15141 (all:): Add $EXEEXT.
15142 (install-only:): Likewise.
15143 (gdbserver:): Likewise.
15144 (gdbreplay:): Likewise.
15145 * config.in: Regenerate.
15146 * configure: Regenerate.
15147
15148 2007-03-28 Pedro Alves <pedro_alves@portugalmail.pt>
15149
15150 * win32-low.c: Rename typedef thread_info to
15151 win32_thread_info throughout.
15152
15153 2007-03-28 Pedro Alves <pedro_alves@portugalmail.pt>
15154
15155 * win32-i386-low.c: Rename to ...
15156 * win32-low.c: ... this.
15157 * configure.srv: Replace win32-i386-low.o with win32-low.o.
15158 * Makefile.in: Likewise.
15159
15160 2007-03-27 Pedro Alves <pedro_alves@portugalmail.pt>
15161
15162 * remote-utils.c (monitor_output): Constify msg parameter.
15163 * server.h (monitor_output): Likewise.
15164 * win32-i386-low.c (handle_output_debug_string): New.
15165 (win32_kill): Handle OUTPUT_DEBUG_STRING_EVENT events using
15166 handle_output_debug_string.
15167 (get_child_debug_event): Likewise.
15168
15169 2007-03-27 Mat Hostetter <mat@lcs.mit.edu>
15170
15171 * server.c (main): Correct strtoul check.
15172
15173 2007-03-27 Jon Ringle <jon@ringle.org>
15174
15175 * linux-low.c: Check __ARCH_HAS_MMU__ also.
15176
15177 2007-03-27 Brooks Moses <brooks.moses@codesourcery.com>
15178
15179 * Makefile.in: Add dummy "pdf" and "install-pdf" targets.
15180
15181 2007-02-27 Daniel Jacobowitz <dan@codesourcery.com>
15182
15183 * terminal.h: Check HAVE_SGTTY_H.
15184
15185 2007-02-27 Mat Hostetter <mat@lcs.mit.edu>
15186
15187 * remote-utils.c (remote_open): Print out the assigned port number.
15188
15189 2007-02-26 Daniel Jacobowitz <dan@codesourcery.com>
15190
15191 * remote-utils.c (monitor_output): New function.
15192 * server.c (debug_threads): Define here.
15193 (monitor_show_help): New function.
15194 (handle_query): Handle qRcmd.
15195 (main): Do not handle 'd' packet.
15196 * server.h (debug_threads, remote_debug, monitor_output): Declare.
15197 * linux-low.c, spu-low.c, win32-i386-low.c: Remove definitions
15198 of debug_threads.
15199
15200 2007-02-25 Pedro Alves <pedro_alves@portugalmail.pt>
15201
15202 * Makefile.in (EXEEXT): New.
15203 (clean): Use $(EXEEXT).
15204
15205 2007-02-25 Pedro Alves <pedro_alves@portugalmail.pt>
15206
15207 * target.h (target_ops): Rename send_signal to request_interrupt,
15208 and remove enum target_signal parameter.
15209 * linux-low.c (linux_request_interrupt): Rename from
15210 linux_send_signal, and always send SIGINT.
15211 * spu-low.c (spu_request_interrupt): Rename from spu_send_signal,
15212 and always send SIGINT.
15213 * remote-utils.c (putpkt_binary): Call request_interrupt, instead
15214 of send_signal.
15215 (input_interrupt): Likewise.
15216
15217 2007-02-25 Pedro Alves <pedro_alves@portugalmail.pt>
15218
15219 * server.c (get_features_xml): Check if target implemented
15220 arch_string.
15221 * win32-i386-low.c (win32_arch_string): New.
15222 (win32_target_ops): Add win32_arch_string as arch_string member.
15223
15224 2007-02-22 Markus Deuling <deuling@de.ibm.com>
15225
15226 * spu-low.c (spu_arch_string): New.
15227 (spu_target_ops): Add spu_arch_string.
15228
15229 2007-02-16 Daniel Jacobowitz <dan@codesourcery.com>
15230
15231 * remote-utils.c: Remove HAVE_TERMINAL_H check.
15232 * configure.ac: Do not check for terminal.h.
15233 * configure, config.in: Regenerated.
15234
15235 2007-02-08 Daniel Jacobowitz <dan@codesourcery.com>
15236
15237 * Makefile.in (OBS): Add $(XML_BUILTIN).
15238 (XML_DIR, XML_TARGET, XML_FILES, XML_BUILTIN): New.
15239 (clean): Update.
15240 (target.xml, xml-builtin.c, stamp-xml, arm-with-iwmmxt.o)
15241 (arm-with-iwmmxt.c): New.
15242 * config.in, configure: Regenerate.
15243 * configure.ac: Check for iWMMXt. Handle srv_xmltarget,
15244 srv_xmlbuiltin, and srv_xmlfiles. Define USE_XML.
15245 * configure.srv: Mention srv_xmltarget and srv_xmlfiles.
15246 (arm*-*-linux*): Add iWMMXt and regset support.
15247 * linux-arm-low.c (PTRACE_GETWMMXREGS, PTRACE_SETWMMXREGS): Define.
15248 (arm_fill_gregset, arm_store_gregset, arm_fill_wmmxregset)
15249 (arm_store_wmmxregset, target_regsets): New.
15250 * server.c (get_features_xml): Take annex argument. Check builtin
15251 XML documents.
15252 (handle_query): Handle multiple annexes.
15253
15254 2007-01-29 Daniel Jacobowitz <dan@codesourcery.com>
15255
15256 * remote-utils.c [USE_WIN32API] (read, write): Define.
15257 (putpkt_binary, input_interrupt, readchar, getpkt): Use read and
15258 write.
15259
15260 2007-01-09 Daniel Jacobowitz <dan@codesourcery.com>
15261
15262 * linux-i386-low.c (the_low_target): Set arch_string.
15263 * linux-x86-64-low.c (the_low_target): Likewise.
15264 * linux-low.c (linux_arch_string): New.
15265 (linux_target_ops): Add it.
15266 * linux-low.h (struct linux_target_ops): Add arch_string.
15267 * server.c (write_qxfer_response): Use const void * for DATA.
15268 (get_features_xml): New.
15269 (handle_query): Handle qXfer:features:read. Report it for qSupported.
15270 * target.h (struct target_ops): Add arch_string method.
15271
15272 2007-01-03 Denis Pilat <denis.pilat@st.com>
15273 Daniel Jacobowitz <dan@codesourcery.com>
15274
15275 * linux-low.c (linux_kill): Handle being called with no threads.
15276 * win32-i386-low.c (win32_kill): Likewise.
15277 (get_child_debug_event): Clear current_process_handle.
15278
15279 2006-12-30 Denis PILAT <denis.pilat@st.com>
15280 Daniel Jacobowitz <dan@codesourcery.com>
15281
15282 * remote-utils.c (remote_open): Check the type of specified
15283 serial port devices before opening them.
15284 * server.c (main): Kill the inferior if an error occurs during
15285 the first remote_open.
15286
15287 2006-12-05 Markus Deuling <deuling@de.ibm.com>
15288
15289 * README: Update supported targets.
15290
15291 2006-11-28 Daniel Jacobowitz <dan@codesourcery.com>
15292
15293 * Makefile.in (clean): Remove reg-mips64.c.
15294 (reg-mips64.c, reg-mips64.o): New rules.
15295 * configure.srv: Handle mips64. Include regset support for mips.
15296 * linux-mips-low.c (union mips_register): New.
15297 (mips_get_pc, mips_set_pc, mips_reinsert_addr): Use it.
15298 (mips_breakpoint, mips_breakpoint_at): Use int.
15299 (mips_collect_register, mips_supply_register)
15300 (mips_collect_register_32bit, mips_supply_register_32bit)
15301 (mips_fill_gregset, mips_store_gregset, mips_fill_fpregset)
15302 (mips_store_fpregset, target_regsets): New.
15303 * thread-db.c (thread_db_get_tls_address): Use uintptr_t.
15304
15305 2006-11-22 Ulrich Weigand <uweigand@de.ibm.com>
15306
15307 * configure.srv: Add target "spu*-*-*".
15308 * Makefile.in (clean): Remove reg-spu.c.
15309 (reg-spu.c, reg-spu.o, spu-low.o): Add dependencies.
15310 * spu-low.c: New file.
15311
15312 2006-11-16 Daniel Jacobowitz <dan@codesourcery.com>
15313
15314 * configure.ac: Correct td_thr_tls_get_addr test.
15315 * configure: Regenerated.
15316
15317 2006-11-16 Daniel Jacobowitz <dan@codesourcery.com>
15318
15319 * linux-low.c (linux_wait_for_event): Reformat. Use the
15320 pass_signals array.
15321 * remote-utils.c (decode_address_to_semicolon): New.
15322 * server.c (pass_signals, handle_general_set): New.
15323 (handle_query): Mention QPassSignals for qSupported.
15324 (main): Call handle_general_set.
15325 * server.h (pass_signals, decode_address_to_semicolon): New.
15326
15327 2006-11-06 Daniel Jacobowitz <dan@codesourcery.com>
15328
15329 * server.c (handle_query): Correct error handling for read_auxv.
15330
15331 2005-10-19 Ulrich Weigand <uweigand@de.ibm.com>
15332
15333 * configure.srv [s390-*-linux*, s390x-*-linux*]: Set srv_linux_regsets
15334 and srv_linux_thread_db to yes.
15335 * linux-s390-low.c (s390_fill_gregset): New function.
15336 (target_regsets): Define data structure.
15337
15338 2006-10-17 Daniel Jacobowitz <dan@codesourcery.com>
15339
15340 * acinclude.m4 (SRV_CHECK_TLS_GET_ADDR): New.
15341 * configure.ac: Use it. Define HAVE_TD_THR_TLS_GET_ADDR.
15342 * config.in, configure: Regenerated.
15343 * inferiors.c (gdb_id_to_thread): New function.
15344 (gdb_id_to_thread_id): Use it.
15345 * linux-low.c (linux_target_ops): Use thread_db_get_tls_address.
15346 * linux-low.h (struct process_info): Add th member.
15347 (thread_db_get_tls_address): New prototype.
15348 * remote-utils.c (decode_address): Make non-static.
15349 * server.c (handle_query): Handle qGetTLSAddr.
15350 * server.h (gdb_id_to_thread, decode_address): New prototypes.
15351 * target.h (struct target_ops): Add get_tls_address.
15352 * thread-db.c (maybe_attach_thread): Save the thread handle.
15353 (thread_db_get_tls_address): New.
15354
15355 2006-09-28 Daniel Jacobowitz <dan@codesourcery.com>
15356
15357 * linux-low.c (PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
15358 (linux_resume_one_process): Take a siginfo_t *. Update all
15359 callers. Queue it if necessary. Use PTRACE_SETSIGINFO.
15360 (struct pending_signals): Add a siginfo_t.
15361 (linux_wait_for_process): Always set last_status.
15362 (linux_wait_for_event): Use PTRACE_GETSIGINFO.
15363 (linux_queue_one_thread): Use PTRACE_GETSIGINFO.
15364 * linux-low.h (struct process_info): Add last_status.
15365
15366 2006-09-21 Daniel Jacobowitz <dan@codesourcery.com>
15367
15368 * remote-utils.c (try_rle): New function.
15369 (putpkt_binary): Use it.
15370
15371 2006-08-19 Daniel Jacobowitz <dan@codesourcery.com>
15372
15373 * Makefile.in (clean): Clean reg-x86-64-linux.c.
15374 (reg-x86-64-linux.o, reg-x86-64-linux.c): New.
15375 * configure.srv (x86_64-*-linux*): Use reg-x86-64-linux.o.
15376 * linux-x86-64-low.c (x86_64_regmap): Include ORIG_RAX.
15377 (x86_64_fill_gregset, x86_64_store_gregset): Skip floating
15378 point registers.
15379
15380 2006-08-08 Richard Sandiford <richard@codesourcery.com>
15381
15382 * server.c (terminal_fd): New variable.
15383 (old_foreground_pgrp): Likewise.
15384 (restore_old_foreground_pgrp): New function.
15385 (start_inferior): Record the terminal file descriptor in terminal_fd
15386 and its original foreground group in old_foreground_pgrp. Register
15387 restore_old_foreground_pgrp with atexit().
15388
15389 2006-07-26 Daniel Jacobowitz <dan@codesourcery.com>
15390
15391 * server.c (handle_query): Correct qPart to qXfer.
15392
15393 2006-07-22 Daniel Jacobowitz <dan@codesourcery.com>
15394
15395 * configure.ac: Check for more headers which are missing on
15396 Windows. Automatically supply -lwsock32 and USE_WIN32API.
15397 * configure.srv: Add Cygwin and mingw32.
15398 * remote-utils.c: Don't include headers unconditionally which
15399 are missing on mingw32. Include <winsock.h> for mingw32.
15400 (remote_open): Adjust for mingw32 support. Flush
15401 standard error after writing to it.
15402 (remote_close, putpkt_binary, input_interrupt, block_async_io)
15403 (unblock_async_io, enable_async_io, disable_async_io)
15404 (readchar, getpkt): Update for Winsock support.
15405 (prepare_resume_reply): Expect a protocol signal number.
15406 * server.c: Disable <sys/wait.h> on mingw32.
15407 (start_inferior): Adjust for mingw32 support. Flush
15408 standard error after writing to it.
15409 (attach_inferior): Likewise. Use protocol signal
15410 numbers.
15411 (main): Skip 'D' packet on mingw32. Use protocol signal numbers
15412 and names.
15413 * win32-i386-low.c: New file.
15414 * Makefile.in (XM_CLIBS): Set.
15415 (gdbserver, gdbreplay): Use $(INTERNAL_CFLAGS).
15416 (win32-i386-low.o): New dependency rule.
15417 * linux-low.c (linux_wait): Use target signal numbers.
15418 * target.h (struct target_ops): Doc fix.
15419 * server.h (target_signal_to_name): New prototype.
15420 * gdbreplay.c: Don't include headers unconditionally which
15421 are missing on mingw32. Include <winsock.h> for mingw32.
15422 (remote_close, remote_open): Adjust for Winsock support.
15423 * configure, config.in: Regenerated.
15424
15425 2006-07-12 Daniel Jacobowitz <dan@codesourcery.com>
15426
15427 * server.c (decode_xfer_read, write_qxfer_response): New.
15428 (handle_query): Take a packet length argument. Handle
15429 qXfer:auxv:read instead of qPart:auxv:read. Mention it in
15430 the qSupported response.
15431 (main): Update call to handle_query.
15432
15433 2006-06-22 Daniel Jacobowitz <dan@codesourcery.com>
15434
15435 * remote-utils.c (remote_escape_output, remote_unescape_input): New.
15436 (putpkt_binary): Renamed from putpkt and adjusted for binary
15437 data.
15438 (putpkt): New wrapper for putpkt_binary.
15439 (readchar): Don't mask off the high bit.
15440 (decode_X_packet): New function.
15441 * server.c (main): Call putpkt_binary if a handler sets the packet
15442 length. Save the length of the incoming packet. Handle 'X'.
15443 * server.h (gdb_byte, remote_escape_output, decode_X_packet): New.
15444
15445 2006-06-21 Daniel Jacobowitz <dan@codesourcery.com>
15446
15447 * server.c (handle_query): Handle qSupported.
15448
15449 2006-05-30 Daniel Jacobowitz <dan@codesourcery.com>
15450
15451 * remote-utils.c (all_symbols_looked_up): New variable.
15452 (look_up_one_symbol): Check it.
15453 * server.h (look_up_one_symbol): New declaration.
15454 * thread-db.c (thread_db_init): Set all_symbols_looked_up.
15455
15456 2006-05-30 Daniel Jacobowitz <dan@codesourcery.com>
15457
15458 * Makefile.in (linux-arm-low.o): Update dependencies.
15459 * linux-arm-low.c: Include "gdb_proc_service.h".
15460 (PTRACE_GET_THREAD_AREA): Define.
15461 (ps_get_thread_area): New function.
15462
15463 2006-05-09 Nathan Sidwell <nathan@codesourcery.com>
15464
15465 * configure.srv (m68k*-*-uclinux*): New target.
15466 * linux-low.c (linux_create_inferior): Use vfork on mmuless systems.
15467 (linux_resume_one_process): Remove extraneous cast.
15468 (linux_read_offsets): New.
15469 (linux_target_op): Add linux_read_offsets on mmuless systems.
15470 * server.c (handle_query): Add qOffsets logic.
15471 * target.h (struct target_ops): Add read_offsets.
15472
15473 2006-03-15 Daniel Jacobowitz <dan@codesourcery.com>
15474
15475 * linux-mips-low.c: Include <sys/ptrace.h> and "gdb_proc_service.h".
15476 (PTRACE_GET_THREAD_AREA): Define.
15477 (ps_get_thread_area): New function.
15478 * Makefile.in (linux-i386-low.o, linux-mips-low.o)
15479 (linux-x86-64-low.o): Update.
15480
15481 2006-03-15 Daniel Jacobowitz <dan@codesourcery.com>
15482
15483 * configure.ac: Remove checks for prfpregset_t.
15484 * gdb_proc_service.h: New file.
15485 * linux-i386-low.c, linux-x86-64-low.c, thread-db.c: Use the
15486 new "gdb_proc_service.h".
15487 * proc-service.c: Likewise.
15488 (ps_pglobal_lookup, ps_pdread, ps_pdwrite): Use psaddr_t.
15489 (ps_lgetfpregs, ps_lsetfpregs): Use a void* argument.
15490 * Makefile.in (gdb_proc_service_h): Updated.
15491 * configure, config.in: Regenerated.
15492
15493 2006-03-03 Daniel Jacobowitz <dan@codesourcery.com>
15494
15495 * remote-utils.c (prepare_resume_reply): Move declaration
15496 of gdb_id_from_wait to the top of the block.
15497
15498 2006-02-15 Daniel Jacobowitz <dan@codesourcery.com>
15499
15500 * linux-low.c (regsets_store_inferior_registers): Read the regset
15501 from the target before filling it.
15502
15503 2006-02-08 Daniel Jacobowitz <dan@codesourcery.com>
15504
15505 * server.c (attach_inferior): Return SIGTRAP for a successful
15506 attach.
15507
15508 2006-02-01 Daniel Jacobowitz <dan@codesourcery.com>
15509
15510 * Makefile.in (OBS): Add version.o.
15511 (STAGESTUFF): Delete.
15512 (version.o): Add dependencies.
15513 (version.c): Replace rule.
15514 (clean): Remove version.c.
15515 * server.c (gdbserver_version): New.
15516 (gdbserver_usage): Use printf.
15517 (main): Handle --version and --help.
15518 * server.h (version, host_name): Add declarations.
15519
15520 2005-12-23 Eli Zaretskii <eliz@gnu.org>
15521
15522 * linux-arm-low.c:
15523 * linux-arm-low.c:
15524 * inferiors.c:
15525 * i387-fp.h:
15526 * i387-fp.c:
15527 * gdbreplay.c:
15528 * regcache.c:
15529 * proc-service.c:
15530 * mem-break.h:
15531 * mem-break.c:
15532 * linux-x86-64-low.c:
15533 * linux-sh-low.c:
15534 * linux-s390-low.c:
15535 * linux-ppc64-low.c:
15536 * linux-ppc-low.c:
15537 * linux-mips-low.c:
15538 * linux-m68k-low.c:
15539 * linux-m32r-low.c:
15540 * linux-low.h:
15541 * linux-low.c:
15542 * linux-ia64-low.c:
15543 * linux-i386-low.c:
15544 * linux-crisv32-low.c:
15545 * thread-db.c:
15546 * terminal.h:
15547 * target.h:
15548 * target.c:
15549 * server.h:
15550 * server.c:
15551 * remote-utils.c:
15552 * regcache.h:
15553 * utils.c:
15554 * Makefile.in:
15555 * configure.ac:
15556 * gdbserver.1: Add (C) after Copyright. Update the FSF
15557 address.
15558
15559 2005-11-13 Daniel Jacobowitz <dan@codesourcery.com>
15560
15561 * linux-arm-low.c (arm_eabi_breakpoint): New variable.
15562 (arm_breakpoint_at): Recognize both breakpoints.
15563 (the_low_target): Use the correct breakpoint instruction.
15564
15565 2005-11-02 Daniel Jacobowitz <dan@codesourcery.com>
15566
15567 * configure.srv (x86_64-*-linux*): Turn on thread_db support.
15568 * linux-x86-64-low.c (x86_64_breakpoint, x86_64_breakpoint_len)
15569 (x86_64_get_pc, x86_64_set_pc, x86_64_breakpoint_at): New.
15570 (the_low_target): Update.
15571
15572 2005-10-25 Andreas Schwab <schwab@suse.de>
15573
15574 * server.c (main): Allocate mem_buf with PBUFSIZ bytes.
15575
15576 * linux-ia64-low.c (ia64_regmap): Remove NAT registers.
15577 (ia64_num_regs): Reduce to 462.
15578
15579 2005-09-17 Daniel Jacobowitz <dan@codesourcery.com>
15580
15581 * acinclude.m4: Correct quoting.
15582 * aclocal.m4: Regenerated.
15583
15584 Suggested by SZOKOVACS Robert <szo@ies.hu>:
15585 * thread-db.c (thread_db_err_str): Handle TD_VERSION.
15586 (thread_db_init): Call thread_db_err_str.
15587 * configure.ac: Check for TD_VERSION.
15588 * config.in, configure: Regenerated.
15589
15590 2005-07-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
15591
15592 * server.h (error, fatal, warning): Add ATTR_FORMAT.
15593
15594 2005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
15595
15596 * configure.ac: Define HAVE_LINUX_REGSETS even if PTRACE_GETREGS
15597 is not available. Define HAVE_PTRACE_GETREGS if it is.
15598 * config.in, configure: Regenerated.
15599 * configure.srv: Set srv_linux_regsets for PowerPC and PowerPC64.
15600 * linux-i386-low.c, linux-m68k-low.c: Update to use
15601 HAVE_PTRACE_GETREGS.
15602 * linux-low.c (regsets_fetch_inferior_registers)
15603 (regsets_store_inferior_registers): Only return 0 if we processed
15604 GENERAL_REGS.
15605 * linux-ppc-low.c (ppc_fill_gregset, target_regsets): New.
15606 * linux-ppc64-low.c (ppc_fill_gregset, target_regsets): New.
15607
15608 2005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
15609
15610 * inferiors.c (struct thread_info): Add gdb_id.
15611 (add_thread): Add gdb_id argument.
15612 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id): New.
15613 * linux-low.c (linux_create_inferior, linux_attach_lwp): Update
15614 calls to add_thread.
15615 * remote-utils.c (prepare_resume_reply: Use thread_to_gdb_id.
15616 * server.c (handle_query): Use thread_to_gdb_id.
15617 (handle_v_cont, main): Use gdb_id_to_thread_id.
15618 * server.h (add_thread): Update prototype.
15619 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id): New
15620 prototypes.
15621
15622 2005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
15623
15624 * linux-low.c (fetch_register, usr_store_inferior_registers): Handle
15625 left-padded registers.
15626 * linux-low.h (struct linux_target_ops): Add left_pad_xfer.
15627 * linux-ppc64-low.c (the_low_target): Set left_pad_xfer.
15628
15629 2005-07-01 Steve Ellcey <sje@cup.hp.com>
15630
15631 * configure.ac (BFD_NEED_DECLARATION): Replace with AC_CHECK_DECLS.
15632 * configure: Regenerate.
15633 * config.in: Regenerate.
15634 * server.h (NEED_DECLARATION_STRERROR):
15635 Replace with !HAVE_DECL_STRERROR.
15636
15637 2005-06-16 Daniel Jacobowitz <dan@codesourcery.com>
15638
15639 * linux-low.c (linux_wait, linux_send_signal): Don't test
15640 an unsigned long variable for > 0 if it could be MAX_ULONG.
15641 * server.c (myresume): Likewise.
15642 * target.c (set_desired_inferior): Likewise.
15643
15644 2005-06-13 Mark Kettenis <kettenis@gnu.org>
15645
15646 * configure.ac: Simplify and improve check for socklen_t.
15647 * configure, config.in: Regenerate.
15648
15649 2005-06-12 Daniel Jacobowitz <dan@codesourcery.com>
15650
15651 * acconfig.h: Remove.
15652 * configure.ac: Add a test for socklen_t. Use three-argument
15653 AC_DEFINE throughout.
15654 * config.in: Regenerated using autoheader 2.59.
15655 * configure: Regenerated.
15656
15657 * gdbreplay.c (socklen_t): Provide a default.
15658 (remote_open): Use socklen_t.
15659 * remote-utils.c (socklen_t): Provide a default.
15660 (remote_open): Use socklen_t.
15661 (convert_int_to_ascii, convert_ascii_to_int, decode_M_packet): Use
15662 unsigned char.
15663
15664 * i387-fp.c (struct i387_fsave, struct i387_fxsave): Use unsigned
15665 char for buffers.
15666 * linux-low.c (linux_read_memory, linux_write_memory)
15667 (linux_read_auxv): Likewise.
15668 * mem-break.c (breakpoint_data, set_breakpoint_data, check_mem_read)
15669 (check_mem_write): Likewise.
15670 * mem-break.h (set_breakpoint_data, check_mem_read, check_mem_write):
15671 Likewise.
15672 * regcache.c (struct inferior_rgcache_data, registers_to_string)
15673 (registers_from_string, register_data): Likewise.
15674 * server.c (handle_query, main): Likewise.
15675 * server.h (convert_ascii_to_int, convert_int_to_ascii)
15676 (decode_M_packet): Likewise.
15677 * target.c (read_inferior_memory, write_inferior_memory): Likewise.
15678 * target.h (struct target_ops): Update read_memory, write_memory,
15679 and read_auxv.
15680 (read_inferior_memory, write_inferior_memory): Update.
15681 * linux-low.h (struct linux_target_ops): Change type of breakpoint
15682 to unsigned char *.
15683 * linux-arm-low.c, linux-cris-low.c, linux-crisv32-low.c,
15684 linux-i386-low.c, linux-m32r-low.c, linux-m68k-low.c,
15685 linux-mips-low.c, linux-ppc-low.c, linux-ppc64-low.c,
15686 linux-s390-low.c, linux-sh-low.c: Update for changes in
15687 read_inferior_memory and the_low_target->breakpoint.
15688
15689 2005-05-28 Daniel Jacobowitz <dan@codesourcery.com>
15690
15691 * Makefile.in (SFILES): Add linux-ppc64-low.c.
15692 (linux-ppc64-low.o, reg-ppc64.c, reg-ppc64.o): New targets.
15693 * configure.srv: Add powerpc64-*-linux*.
15694 * linux-ppc64-low.c: New file.
15695
15696 2005-05-23 Orjan Friberg <orjanf@axis.com>
15697
15698 * linux-cris-low.c: New file with support for CRIS.
15699 * linux-crisv32-low.c: Ditto for CRISv32.
15700 * Makefile.in (SFILES): Add linux-cris-low.c, linux-crisv32-low.c.
15701 (clean): Add reg-cris.c and reg-crisv32.c.
15702 Add linux-cris-low.o, linux-crisv32-low.o, reg-cris.o, reg-cris.c,
15703 reg-crisv32.o, and reg-crisv32.c to make rules.
15704 * configure.srv: Add cris-*-linux* and crisv32-*-linux* to list of
15705 recognized targets.
15706
15707 2005-05-16 Ulrich Weigand <uweigand@de.ibm.com>
15708
15709 * linux-low.c (fetch_register): Ensure buffer size is a multiple
15710 of sizeof (PTRACE_XFER_TYPE).
15711 (usr_store_inferior_registers): Likewise. Zero out excess bytes.
15712
15713 2005-05-12 Orjan Friberg <orjanf@axis.com>
15714
15715 * target.h (struct target_ops): Add insert_watchpoint,
15716 remove_watchpoint, stopped_by_watchpoint, stopped_data_address function
15717 pointers for hardware watchpoint support.
15718 * linux-low.h (struct linux_target_ops): Ditto.
15719 * linux-low.c (linux_insert_watchpoint, linux_remove_watchpoint)
15720 (linux_stopped_by_watchpoint, linux_stopped_data_address): New. Add
15721 to linux_target_ops.
15722 * remote-utils.c (prepare_resume_reply): Add watchpoint information to
15723 reply packet.
15724 * server.c (main): Recognize 'Z' and 'z' packets.
15725
15726 2005-05-10 Ulrich Weigand <uweigand@de.ibm.com>
15727
15728 * linux-s390-low.c (s390_breakpoint, s390_breakpoint_len): Define.
15729 (s390_get_pc, s390_set_pc, s390_breakpoint_at): New functions.
15730 (the_low_target): Add new members.
15731
15732 2005-05-04 Daniel Jacobowitz <dan@codesourcery.com>
15733
15734 * proc-service.c (ps_lgetregs): Search all_processes instead of
15735 all_threads.
15736
15737 2005-05-04 Daniel Jacobowitz <dan@codesourcery.com>
15738
15739 * server.c (start_inferior): Change return type to int.
15740 (attach_inferior): Change sigptr to int *.
15741 (handle_v_cont, handle_v_requests): Change signal to int *.
15742 (main): Change signal to int.
15743
15744 2005-04-15 Kei Sakamoto <sakamoto.kei@renesas.com>
15745
15746 * Makefile.in: Add linux-m32r-low.o, reg-m32r.c and reg-m32r.o.
15747 * configure.srv: Add m32r*-*-linux*.
15748 * linux-m32r-low.c: New file.
15749
15750 2005-03-04 Daniel Jacobowitz <dan@codesourcery.com>
15751
15752 * Makefile.in (stamp-h): Set CONFIG_HEADERS explicitly.
15753
15754 2005-03-03 Daniel Jacobowitz <dan@codesourcery.com>
15755
15756 * inferiors.c (change_inferior_id, add_thread, find_inferior_id):
15757 Take unsigned long arguments for PIDs.
15758 * linux-low.c (add_process, linux_attach_lwp, linux_attach)
15759 (linux_thread_alive, linux_wait_for_event, kill_lwp, send_sigstop)
15760 (wait_for_sigstop, linux_resume_one_process)
15761 (regsets_fetch_inferior_registers, linux_send_signal)
15762 (linux_read_auxv): Likewise. Update the types of variables holding
15763 PIDs. Update format string specifiers.
15764 * linux-low.h (struct process_info, linux_attach_lwp): Likewise.
15765 * remote-utils.c (prepare_resume_reply): Likewise.
15766 * server.c (cont_thread, general_thread, step_thread)
15767 (thread_from_wait, old_thread_from_wait, signal_pid): Change type to
15768 unsigned long.
15769 (handle_query): Update format specifiers.
15770 (handle_v_cont, main): Use strtoul for thread IDs.
15771 * server.h (struct inferior_list_entry): Use unsigned long for ID.
15772 (add_thread, find_inferior_id, change_inferior_id, cont_thread)
15773 (general_thread, step_thread, thread_from_wait)
15774 (old_thread_from_wait): Update.
15775 * target.h (struct thread_resume): Use unsigned long for THREAD.
15776 (struct target_ops): Use unsigned long for arguments to attach and
15777 thread_alive.
15778
15779 2005-02-24 Daniel Jacobowitz <dan@codesourcery.com>
15780
15781 * acinclude.m4: Include bfd/bfd.m4 directly.
15782 * configure.ac: Use AC_ARG_PROGRAM. Suggested by Aron Griffis
15783 <agriffis@toolchain.org>.
15784 * aclocal.m4, configure: Regenerated.
15785
15786 2005-01-07 Andrew Cagney <cagney@gnu.org>
15787
15788 * configure.ac: Rename configure.in, require autoconf 2.59.
15789 * configure: Re-generate.
15790
15791 2004-12-08 Daniel Jacobowitz <dan@debian.org>
15792
15793 * acinclude.m4 (SRV_CHECK_THREAD_DB): Add ps_get_thread_area. Reset
15794 LIBS when finished.
15795 * aclocal.m4: Regenerated.
15796 * configure: Regenerated.
15797
15798 2004-11-21 Andreas Schwab <schwab@suse.de>
15799
15800 * linux-m68k-low.c (m68k_num_gregs): Define.
15801 (m68k_fill_gregset, m68k_store_gregset, m68k_fill_fpregset)
15802 (m68k_store_fpregset, target_regsets) [HAVE_LINUX_REGSETS]: New.
15803 (m68k_breakpoint, m68k_breakpoint_len, m68k_get_pc, m68k_set_pc)
15804 (m68k_breakpoint_at): New. Add to the_low_target.
15805
15806 * configure.srv (m68*-*-linux*): Set srv_linux_regsets and
15807 srv_linux_thread_db to yes.
15808
15809 2004-10-20 Joel Brobecker <brobecker@gnat.com>
15810
15811 * linux-x86-64-low.c (ARCH_SET_GS): Add definition if missing.
15812 (ARCH_SET_FS): Likewise.
15813 (ARCH_GET_FS): Likewise.
15814 (ARCH_GET_GS): Likewise.
15815
15816 2004-10-16 Daniel Jacobowitz <dan@debian.org>
15817
15818 * linux-i386-low.c (ps_get_thread_area): New.
15819 * linux-x86-64-low.c (ps_get_thread_area): New.
15820 * linux-low.c: Include <sys/syscall.h>.
15821 (linux_kill_one_process): Don't kill the first thread here.
15822 (linux_kill): Kill the first thread here.
15823 (kill_lwp): New function.
15824 (send_sigstop, linux_send_signal): Use it.
15825 * proc-service.c: Clean up #ifdefs.
15826 (fpregset_info): Delete.
15827 (ps_lgetregs): Update and enable implementation.
15828 (ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs): Remove disabled
15829 implementations.
15830 * remote-utils.c (struct sym_cache, symbol_cache): New.
15831 (input_interrupt): Print a clearer message.
15832 (async_io_enabled): New variable.
15833 (enable_async_io, disable_async_io): Use it. Update comments.
15834 (look_up_one_symbol): Use the symbol cache.
15835 * thread-db.c (thread_db_look_up_symbols): New function.
15836 (thread_db_init): Update comments. Call thread_db_look_up_symbols.
15837
15838 2004-10-16 Daniel Jacobowitz <dan@debian.org>
15839
15840 * configure.in: Test for -rdynamic.
15841 * configure: Regenerated.
15842 * Makefile (INTERNAL_LDFLAGS): New.
15843 (gdbserver, gdbreplay): Use it.
15844
15845 2004-09-02 Andrew Cagney <cagney@gnu.org>
15846
15847 * Makefile.in (TAGS): Replace TM_FILE with DEPRECATED_TM_FILE.
15848
15849 2004-03-23 Daniel Jacobowitz <drow@mvista.com>
15850
15851 * linux-low.c (linux_wait): Clear all_processes list also.
15852
15853 2004-03-12 Daniel Jacobowitz <drow@mvista.com>
15854
15855 * linux-low.c: Include <errno.h>. Remove extern declaration of
15856 errno.
15857
15858 2004-03-12 Daniel Jacobowitz <drow@mvista.com>
15859
15860 * gdbreplay.c, server.h, utils.c: Update copyright years.
15861
15862 2004-03-04 Nathan J. Williams <nathanw@wasabisystems.com>
15863
15864 * server.c (main): Print child status or termination signal from
15865 variable 'signal', not 'sig'.
15866
15867 2004-03-04 Nathan J. Williams <nathanw@wasabisystems.com>
15868
15869 * linux-low.c (linux_read_memory): Change return type to
15870 int. Check for and return error from ptrace().
15871 * target.c (read_inferior_memory): Change return type to int. Pass
15872 back return status from the_target->read_memory().
15873 * target.h (struct target_ops): Adapt *read_memory() prototype.
15874 Update comment.
15875 (read_inferior_memory): Adapt prototype.
15876 * server.c (main): Return an error packet if
15877 read_inferior_memory() returns an error.
15878
15879 2004-03-04 Daniel Jacobowitz <drow@mvista.com>
15880
15881 * Makefile.in (distclean): Remove config.h, stamp-h, and config.log.
15882 Unify with other clean targets.
15883
15884 2004-02-29 Daniel Jacobowitz <drow@mvista.com>
15885
15886 * server.c (handle_v_cont): Call set_desired_inferior.
15887
15888 2004-02-29 Daniel Jacobowitz <drow@mvista.com>
15889
15890 * remote-utils.c (prepare_resume_reply): Always supply "thread:".
15891
15892 2004-02-29 Daniel Jacobowitz <drow@mvista.com>
15893
15894 * linux-low.c (linux_wait): Unblock async I/O.
15895 (linux_resume): Block and enable async I/O.
15896 * remote-utils.c (block_async_io, unblock_async_io): New functions.
15897 * server.h (block_async_io, unblock_async_io): Add prototypes.
15898
15899 2004-02-29 Daniel Jacobowitz <drow@mvista.com>
15900
15901 * remote-utils.c (remote_open): Print a status notice after
15902 opening a TCP port.
15903 * server.c (attach_inferior): Print a status notice after
15904 attaching.
15905
15906 2004-02-29 Daniel Jacobowitz <drow@mvista.com>
15907
15908 * linux-arm-low.c (arm_get_pc): Print out stop PC in debug mode.
15909
15910 2004-02-26 Daniel Jacobowitz <drow@mvista.com>
15911
15912 * remote-utils.c (write_enn): Use "E01" instead of "ENN" for the
15913 error packet.
15914 * server.c, target.h: Update copyright years.
15915
15916 2004-02-25 Roland McGrath <roland@redhat.com>
15917
15918 * target.h (struct target_ops): New member `read_auxv'.
15919 * server.c (handle_query): Handle qPart:auxv:read: query using that.
15920 * linux-low.c (linux_read_auxv): New function.
15921 (linux_target_ops): Initialize `read_auxv' member to that.
15922
15923 2004-02-17 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
15924
15925 Committed by Jim Blandy <jimb@redhat.com>.
15926
15927 * linux-s390-low.c (s390_num_regs): Update.
15928 (s390_regmap): Remove control registers. Use __s390x__ predefine
15929 instead of GPR_SIZE to distiguish s390 and s390x targets.
15930
15931 2004-01-31 Daniel Jacobowitz <drow@mvista.com>
15932
15933 * linux-low.c: Update copyright year.
15934 (check_removed_breakpoint): Clear pending_is_breakpoint.
15935 (linux_set_resume_request, linux_queue_one_thread)
15936 (resume_status_pending_p): New functions.
15937 (linux_continue_one_thread): Use process->resume.
15938 (linux_resume): Only resume threads if there are no pending events.
15939 * linux-low.h (struct process_info): Add resume request
15940 pointer.
15941
15942 2004-01-30 Daniel Jacobowitz <drow@mvista.com>
15943
15944 * regcache.c (new_register_cache): Clear the allocated register
15945 buffer. Suggested by Atsushi Nemoto <anemo@mba.ocn.ne.jp>.
15946
15947 2003-10-13 Daniel Jacobowitz <drow@mvista.com>
15948
15949 * linux-low.c (linux_resume): Take a struct thread_resume *
15950 argument.
15951 (linux_wait): Update call.
15952 (resume_ptr): New static variable.
15953 (linux_continue_one_thread): Renamed from
15954 linux_continue_one_process. Use resume_ptr.
15955 (linux_resume): Use linux_continue_one_thread.
15956 * server.c (handle_v_cont, handle_v_requests): New functions.
15957 (myresume): New function.
15958 (main): Handle 'v' case.
15959 * target.h (struct thread_resume): New type.
15960 (struct target_ops): Change argument of "resume" to struct
15961 thread_resume *.
15962 (myresume): Delete macro.
15963
15964 2003-08-08 H.J. Lu <hongjiu.lu@intel.com>
15965
15966 * Makefile.in (install-only): Create dest dir. Support DESTDIR.
15967 (uninstall): Support DESTDIR.
15968
15969 Mon Jul 21 20:09:34 UTC 2003 Brendan Conoboy <blc@redhat.com>
15970
15971 * configure.srv: Add xscale*linux copy of arm*linux entry.
15972
15973 2003-07-24 Daniel Jacobowitz <drow@mvista.com>
15974
15975 * linux-arm-low.c (arm_reinsert_addr): New function.
15976 (the_low_target): Add arm_reinsert_addr.
15977
15978 2003-07-08 Mark Kettenis <kettenis@gnu.org>
15979
15980 * mem-break.c: Remove whitespace at end of file.
15981
15982 2003-06-28 Daniel Jacobowitz <drow@mvista.com>
15983
15984 * configure.in: Check whether we need to prototype strerror.
15985 * server.h: Optionally prototype strerror.
15986 * gdbreplay.c (perror_with_name): Use strerror.
15987 * linux-low.c (linux_attach_lwp): Use strerror.
15988 * utils.c (perror_with_name): Use strerror.
15989 * config.in, configure: Regenerated.
15990
15991 2003-06-28 Daniel Jacobowitz <drow@mvista.com>
15992
15993 * linux-sh-low.c (sh_regmap): Fix FP register offsets, reported by
15994 SUGIOKA Toshinobu <sugioka@itonet.co.jp>.
15995
15996 2003-06-20 Daniel Jacobowitz <drow@mvista.com>
15997
15998 * Makefile.in (SFILES): Update.
15999 * low-hppabsd.c, low-lynx.c, low-nbsd.c, low-sim.c, low-sparc.c,
16000 low-sun3.c: Remove files.
16001
16002 2003-06-17 Daniel Jacobowitz <drow@mvista.com>
16003
16004 * linux-low.c: Move comment to linux_thread_alive where it belonged.
16005 (linux_detach_one_process, linux_detach): New functions.
16006 (linux_target_ops): Add linux_detach.
16007 * server.c (main): Handle 'D' packet.
16008 * target.h (struct target_ops): Add "detach" member.
16009 (detach_inferior): Define.
16010
16011 2003-06-13 Mark Kettenis <kettenis@gnu.org>
16012
16013 From Kelley Cook <kelleycook@wideopenwest.com>:
16014 * configure.srv: Accept i[34567]86 variants.
16015
16016 2003-06-05 Daniel Jacobowitz <drow@mvista.com>
16017
16018 * linux-low.c (linux_wait_for_event): Correct comment typos.
16019 (linux_resume_one_process): Call check_removed_breakpoint.
16020 (linux_send_signal): New function.
16021 (linux_target_ops): Add linux_send_signal.
16022 * remote-utils.c (putpkt, input_interrupt): Use send_signal instead
16023 of kill.
16024 * target.h (struct target_ops): Add send_signal.
16025
16026 2003-05-29 Jim Blandy <jimb@redhat.com>
16027
16028 * linux-low.c (usr_store_inferior_registers): Transfer buf in
16029 PTRACE_XFER_TYPE-sized chunks, not int-sized chunks. Otherwise,
16030 if 'int' is smaller than PTRACE_XFER_TYPE, you end up throwing
16031 away part of the register's value.
16032
16033 2003-03-26 Daniel Jacobowitz <drow@mvista.com>
16034
16035 * linux-low.c (linux_create_inferior): Use __SIGRTMIN.
16036 (linux_wait_for_event, linux_init_signals): Likewise.
16037
16038 2003-03-17 Daniel Jacobowitz <drow@mvista.com>
16039
16040 * configure.in: Check for stdlib.h.
16041 * configure: Regenerated.
16042 * config.in: Regenerated.
16043
16044 2003-01-04 Andreas Schwab <schwab@suse.de>
16045
16046 * linux-m68k-low.c (m68k_num_regs): Define to 29 instead of 31.
16047
16048 2003-01-02 Andrew Cagney <ac131313@redhat.com>
16049
16050 * Makefile.in: Remove obsolete code.
16051
16052 2002-11-20 Daniel Jacobowitz <drow@mvista.com>
16053
16054 * linux-s390-low.c (s390_regmap): Check GPR_SIZE instead of
16055 defined(PT_FPR0_HI).
16056
16057 2002-11-17 Stuart Hughes <seh@zee2.com>
16058
16059 * linux-arm-low.c (arm_num_regs): Increase.
16060 (arm_regmap): Include status register.
16061
16062 2002-11-17 Daniel Jacobowitz <drow@mvista.com>
16063
16064 * linux-low.c (register_addr): Remove incorrect -1 check.
16065
16066 2002-08-29 Daniel Jacobowitz <drow@mvista.com>
16067
16068 * linux-low.c (linux_create_inferior): Call setpgid. Return
16069 the new PID.
16070 (unstopped_p, linux_signal_pid): Remove.
16071 (linux_target_ops): Remove linux_signal_pid.
16072 * remote-utils.c (putpkt, input_interrupt): Use signal_pid
16073 global instead of target method.
16074 * target.h (struct target_ops): Remove signal_pid. Update comment
16075 for create_inferior.
16076 * server.c (signal_pid): New variable.
16077 (create_inferior): Set signal_pid. Block SIGTTOU and SIGTTIN in
16078 gdbserver. Set the child to be the foreground process group.
16079 (attach_inferior): Set signal_pid.
16080
16081 2002-08-23 Daniel Jacobowitz <drow@mvista.com>
16082
16083 * ChangeLog: New file, with entries from gdb/ChangeLog after GDB 5.2.
16084
16085 2002-08-20 Jim Blandy <jimb@redhat.com>
16086
16087 * Makefile.in (LDFLAGS): Allow the configure script to establish a
16088 default for this.
16089
16090 2002-08-01 Andrew Cagney <cagney@redhat.com>
16091
16092 * Makefile.in: Make chill references obsolete.
16093
16094 2002-07-24 Kevin Buettner <kevinb@redhat.com>
16095
16096 * configure.in (unistd.h): Add to AC_CHECK_HEADERS list.
16097 * configure: Regenerate.
16098 * config.in: Regenerate.
16099
16100 2002-07-09 David O'Brien <obrien@FreeBSD.org>
16101
16102 * gdbreplay.c (stdlib.h, unistd.h): Conditionaly include.
16103 (perror_with_name, remote_close, remote_open, expect, play): Static.
16104
16105 2002-07-04 Michal Ludvig <mludvig@suse.cz>
16106
16107 * linux-x86-64-low.c (x86_64_regmap): Make it an array of
16108 byte offsets instead of an array of indexes.
16109 (x86_64_store_gregset, x86_64_store_fpregset): Parameter made const.
16110
16111 2002-06-13 Daniel Jacobowitz <drow@mvista.com>
16112
16113 * regcache.c: Add comment.
16114
16115 2002-06-11 Daniel Jacobowitz <drow@mvista.com>
16116
16117 * thread-db.c: New file.
16118 * proc-service.c: New file.
16119 * acinclude.m4: New file.
16120 * Makefile.in: Add GDBSERVER_LIBS, gdb_proc_service_h,
16121 proc-service.o, and thread-db.o.
16122 (linux-low.o): Add USE_THREAD_DB.
16123 * acconfig.h: Add HAVE_PRGREGSET_T, HAVE_PRFPREGSET_T,
16124 HAVE_LWPID_T, HAVE_PSADDR_T, and PRFPREGSET_T_BROKEN.
16125 * aclocal.m4: Regenerated.
16126 * config.in: Regenerated.
16127 * configure: Regenerated.
16128 * configure.in: Check for proc_service.h, sys/procfs.h,
16129 thread_db.h, and linux/elf.h headrs.
16130 Check for lwpid_t, psaddr_t, prgregset_t, prfpregset_t, and
16131 PRFPREGSET_T_BROKEN. Introduce srv_thread_depfiles and USE_THREAD_DB.
16132 Check for -lthread_db and thread support.
16133 * configure.srv: Enable thread_db support for ARM, i386, MIPS,
16134 PowerPC, and SuperH.
16135 * i387-fp.c: Constify arguments.
16136 * i387-fp.h: Likewise.
16137 * inferiors.c: (struct thread_info): Renamed from
16138 `struct inferior_info'. Remove PID member. Use generic inferior
16139 list header. All uses updated.
16140 (inferiors, signal_pid): Removed.
16141 (all_threads): New variable.
16142 (get_thread): Define.
16143 (add_inferior_to_list): New function.
16144 (for_each_inferior): New function.
16145 (change_inferior_id): New function.
16146 (add_inferior): Removed.
16147 (remove_inferior): New function.
16148 (add_thread): New function.
16149 (free_one_thread): New function.
16150 (remove_thread): New function.
16151 (clear_inferiors): Use for_each_inferior and free_one_thread.
16152 (find_inferior): New function.
16153 (find_inferior_id): New function.
16154 (inferior_target_data): Update argument type.
16155 (set_inferior_target_data): Likewise.
16156 (inferior_regcache_data): Likewise.
16157 (set_inferior_regcache_data): Likewise.
16158 * linux-low.c (linux_bp_reinsert): Remove.
16159 (all_processes, stopping_threads, using_thrads)
16160 (struct pending_signals, debug_threads, pid_of): New.
16161 (inferior_pid): Replace with macro.
16162 (struct inferior_linux_data): Remove.
16163 (get_stop_pc, add_process): New functions.
16164 (linux_create_inferior): Restore SIGRTMIN+1 before calling exec.
16165 Use add_process and add_thread.
16166 (linux_attach_lwp): New function, based on old linux_attach. Use
16167 add_process and add_thread. Set stop_expected for new threads.
16168 (linux_attach): New function.
16169 (linux_kill_one_process): New function.
16170 (linux_kill): Kill all LWPs.
16171 (linux_thread_alive): Use find_inferior_id.
16172 (check_removed_breakpoints, status_pending_p): New functions.
16173 (linux_wait_for_process): Renamed from linux_wait_for_one_inferior.
16174 Update. Use WNOHANG. Wait for cloned processes also. Update process
16175 struct for the found process.
16176 (linux_wait_for_event): New function.
16177 (linux_wait): Use it. Support LWPs.
16178 (send_sigstop, wait_for_sigstop, stop_all_processes)
16179 (linux_resume_one_process, linux_continue_one_process): New functions.
16180 (linux_resume): Support LWPs.
16181 (REGISTER_RAW_SIZE): Remove.
16182 (fetch_register): Use register_size instead. Call supply_register.
16183 (usr_store_inferior_registers): Likewise. Call collect_register.
16184 Fix recursive case.
16185 (regsets_fetch_inferior_registers): Improve error message.
16186 (regsets_store_inferior_registers): Add debugging.
16187 (linux_look_up_symbols): Call thread_db_init if USE_THREAD_DB.
16188 (unstopped_p, linux_signal_pid): New functions.
16189 (linux_target_ops): Add linux_signal_pid.
16190 (linux_init_signals): New function.
16191 (initialize_low): Call it. Initialize using_threads.
16192 * regcache.c (inferior_regcache_data): Add valid
16193 flag.
16194 (get_regcache): Fetch registers lazily. Add fetch argument
16195 and update all callers.
16196 (regcache_invalidate_one, regcache_invalidate): New
16197 functions.
16198 (new_register_cache): Renamed from create_register_cache.
16199 Return the new regcache.
16200 (free_register_cache): Change argument to a void *.
16201 (registers_to_string, registers_from_string): Call get_regcache
16202 with fetch flag set.
16203 (register_data): Make static. Pass fetch flag to get_regcache.
16204 (supply_register): Call get_regcache with fetch flag clear.
16205 (collect_register): Call get_regcache with fetch flag set.
16206 (collect_register_as_string): New function.
16207 * regcache.h: Update.
16208 * remote-utils.c (putpkt): Flush after debug output and use
16209 stderr.
16210 Handle input interrupts while waiting for an ACK.
16211 (input_interrupt): Use signal_pid method.
16212 (getpkt): Flush after debug output and use stderr.
16213 (outreg): Use collect_register_as_string.
16214 (new_thread_notify, dead_thread_notify): New functions.
16215 (prepare_resume_reply): Check using_threads. Set thread_from_wait
16216 and general_thread.
16217 (look_up_one_symbol): Flush after debug output.
16218 * server.c (step_thread, server_waiting): New variables.
16219 (start_inferior): Don't use signal_pid. Update call to mywait.
16220 (attach_inferior): Update call to mywait.
16221 (handle_query): Handle qfThreadInfo and qsThreadInfo.
16222 (main): Don't fetch/store registers explicitly. Use
16223 set_desired_inferior. Support proposed ``Hs'' packet. Update
16224 calls to mywait.
16225 * server.h: Update.
16226 (struct inferior_list, struct_inferior_list_entry): New.
16227 * target.c (set_desired_inferior): New.
16228 (write_inferior_memory): Constify.
16229 (mywait): New function.
16230 * target.h: Update.
16231 (struct target_ops): New signal_pid method.
16232 (mywait): Removed macro, added prototype.
16233
16234 * linux-low.h (regset_func): Removed.
16235 (regset_fill_func, regset_store_func): New.
16236 (enum regset_type): New.
16237 (struct regset_info): Add type field. Use new operation types.
16238 (struct linux_target_ops): stop_pc renamed to get_pc.
16239 Add decr_pc_after_break and breakpoint_at.
16240 (get_process, get_thread_proess, get_process_thread)
16241 (strut process_info, all_processes, linux_attach_lwp)
16242 (thread_db_init): New.
16243
16244 * linux-arm-low.c (arm_get_pc, arm_set_pc,
16245 arm_breakpoint, arm_breakpoint_len, arm_breakpoint_at): New.
16246 (the_low_target): Add new members.
16247 * linux-i386-low.c (i386_store_gregset, i386_store_fpregset)
16248 (i386_store_fpxregset): Constify.
16249 (target_regsets): Add new kind identifier.
16250 (i386_get_pc): Renamed from i386_stop_pc. Simplify.
16251 (i386_set_pc): Add debugging.
16252 (i386_breakpoint_at): New function.
16253 (the_low_target): Add new members.
16254 * linux-mips-low.c (mips_get_pc, mips_set_pc)
16255 (mips_breakpoint, mips_breakpoint_len, mips_reinsert_addr)
16256 (mips_breakpoint_at): New.
16257 (the_low_target): Add new members.
16258 * linux-ppc-low.c (ppc_get_pc, ppc_set_pc)
16259 (ppc_breakpoint, ppc_breakpoint_len, ppc_breakpoint_at): New.
16260 (the_low_target): Add new members.
16261 * linux-sh-low.c (sh_get_pc, sh_set_pc)
16262 (sh_breakpoint, sh_breakpoint_len, sh_breakpoint_at): New.
16263 (the_low_target): Add new members.
16264 * linux-x86-64-low.c (target_regsets): Add new kind
16265 identifier.
16266
16267 2002-05-15 Daniel Jacobowitz <drow@mvista.com>
16268
16269 From Martin Pool <mbp@samba.org>:
16270 * server.c (gdbserver_usage): New function.
16271 (main): Call it.
16272
16273 2002-05-14 Daniel Jacobowitz <drow@mvista.com>
16274
16275 * mem-break.c (reinsert_breakpoint_by_bp): Correct typo
16276 stop_at -> stop_pc.
16277
16278 2002-05-04 Andrew Cagney <ac131313@redhat.com>
16279
16280 * Makefile.in: Remove obsolete code.
16281
16282 2002-04-24 Michal Ludvig <mludvig@suse.cz>
16283
16284 * linux-low.c (regsets_fetch_inferior_registers),
16285 (regsets_store_inferior_registers): Removed cast to int from
16286 ptrace() calls.
16287 * regcache.h: Added declaration of struct inferior_info.
16288
16289 2002-04-20 Daniel Jacobowitz <drow@mvista.com>
16290
16291 * inferiors.c (struct inferior_info): Add regcache_data.
16292 (add_inferior): Call create_register_cache.
16293 (clear_inferiors): Call free_register_cache.
16294 (inferior_regcache_data, set_inferior_regcache_data): New functions.
16295 * regcache.c (struct inferior_regcache_data): New.
16296 (registers): Remove.
16297 (get_regcache): New function.
16298 (create_register_cache, free_register_cache): New functions.
16299 (set_register_cache): Don't initialize the register cache here.
16300 (registers_to_string, registers_from_string, register_data): Call
16301 get_regcache.
16302 * regcache.h: Add prototypes.
16303 * server.h: Likewise.
16304
16305 2002-04-20 Daniel Jacobowitz <drow@mvista.com>
16306
16307 * mem-break.c: New file.
16308 * mem-break.h: New file.
16309 * Makefile.in: Add mem-break.o rule; update server.h
16310 dependencies.
16311 * inferiors.c (struct inferior_info): Add target_data
16312 member.
16313 (clear_inferiors): Free target_data member if set.
16314 (inferior_target_data, set_inferior_target_data): New functions.
16315 * linux-i386-low.c (i386_breakpoint, i386_breakpoint_len)
16316 (i386_stop_pc, i386_set_pc): New. Add to the_low_target.
16317 * linux-low.c (linux_bp_reinsert): New variable.
16318 (struct inferior_linux_data): New.
16319 (linux_create_inferior): Use set_inferior_target_data.
16320 (linux_attach): Likewise. Call add_inferior.
16321 (linux_wait_for_one_inferior): New function.
16322 (linux_wait): Call it.
16323 (linux_write_memory): Add const.
16324 (initialize_low): Call set_breakpoint_data.
16325 * linux-low.h (struct linux_target_ops): Add breakpoint
16326 handling members.
16327 * server.c (attach_inferior): Remove extra add_inferior
16328 call.
16329 * server.h: Include mem-break.h. Update inferior.c
16330 prototypes.
16331 * target.c (read_inferior_memory)
16332 (write_inferior_memory): New functions.
16333 * target.h (read_inferior_memory)
16334 (write_inferior_memory): Change macros to prototypes.
16335 (struct target_ops): Update comments. Add const to write_memory
16336 definition.
16337
16338 2002-04-11 Daniel Jacobowitz <drow@mvista.com>
16339
16340 * linux-low.c (usr_store_inferior_registers): Support
16341 registers which are allowed to fail to store.
16342 * linux-low.h (linux_target_ops): Likewise.
16343 * linux-ppc-low.c (ppc_regmap): Support FPSCR.
16344 (ppc_cannot_store_register): FPSCR may not be storable.
16345
16346 2002-04-09 Daniel Jacobowitz <drow@mvista.com>
16347
16348 * server.h: Include <string.h> if HAVE_STRING_H.
16349 * ChangeLog: Correct paths in last ChangeLog entry.
16350
16351 2002-04-09 Daniel Jacobowitz <drow@mvista.com>
16352
16353 * linux-low.h: Remove obsolete prototypes.
16354 (struct linux_target_ops): New.
16355 (extern the_low_target): New.
16356 * linux-low.c (num_regs, regmap): Remove declarations.
16357 (register_addr): Use the_low_target explicitly.
16358 (fetch_register): Likewise.
16359 (usr_fetch_inferior_registers): Likewise.
16360 (usr_store_inferior_registers): Likewise.
16361 * linux-arm-low.c (num_regs): Remove.
16362 (arm_num_regs): Define.
16363 (arm_regmap): Renamed from regmap, made static.
16364 (arm_cannot_fetch_register): Renamed from cannot_fetch_register,
16365 made static.
16366 (arm_cannot_store_register): Renamed from cannot_store_register,
16367 made static.
16368 (the_low_target): New.
16369 * linux-i386-low.c (num_regs): Remove.
16370 (i386_num_regs): Define.
16371 (i386_regmap): Renamed from regmap, made static.
16372 (i386_cannot_fetch_register): Renamed from cannot_fetch_register,
16373 made static.
16374 (i386_cannot_store_register): Renamed from cannot_store_register,
16375 made static.
16376 (the_low_target): New.
16377 * linux-ia64-low.c (num_regs): Remove.
16378 (ia64_num_regs): Define.
16379 (ia64_regmap): Renamed from regmap, made static.
16380 (ia64_cannot_fetch_register): Renamed from cannot_fetch_register,
16381 made static.
16382 (ia64_cannot_store_register): Renamed from cannot_store_register,
16383 made static.
16384 (the_low_target): New.
16385 * linux-m68k-low.c (num_regs): Remove.
16386 (m68k_num_regs): Define.
16387 (m68k_regmap): Renamed from regmap, made static.
16388 (m68k_cannot_fetch_register): Renamed from cannot_fetch_register,
16389 made static.
16390 (m68k_cannot_store_register): Renamed from cannot_store_register,
16391 made static.
16392 (the_low_target): New.
16393 * linux-mips-low.c (num_regs): Remove.
16394 (mips_num_regs): Define.
16395 (mips_regmap): Renamed from regmap, made static.
16396 (mips_cannot_fetch_register): Renamed from cannot_fetch_register,
16397 made static.
16398 (mips_cannot_store_register): Renamed from cannot_store_register,
16399 made static.
16400 (the_low_target): New.
16401 * linux-ppc-low.c (num_regs): Remove.
16402 (ppc_num_regs): Define.
16403 (ppc_regmap): Renamed from regmap, made static.
16404 (ppc_cannot_fetch_register): Renamed from cannot_fetch_register,
16405 made static.
16406 (ppc_cannot_store_register): Renamed from cannot_store_register,
16407 made static.
16408 (the_low_target): New.
16409 * linux-s390-low.c (num_regs): Remove.
16410 (s390_num_regs): Define.
16411 (s390_regmap): Renamed from regmap, made static.
16412 (s390_cannot_fetch_register): Renamed from cannot_fetch_register,
16413 made static.
16414 (s390_cannot_store_register): Renamed from cannot_store_register,
16415 made static.
16416 (the_low_target): New.
16417 * linux-sh-low.c (num_regs): Remove.
16418 (sh_num_regs): Define.
16419 (sh_regmap): Renamed from regmap, made static.
16420 (sh_cannot_fetch_register): Renamed from cannot_fetch_register,
16421 made static.
16422 (sh_cannot_store_register): Renamed from cannot_store_register,
16423 made static.
16424 (the_low_target): New.
16425 * linux-x86-64-low.c (x86_64_regmap): Renamed from regmap.
16426 (the_low_target): New.
16427
16428 2002-04-09 Daniel Jacobowitz <drow@mvista.com>
16429
16430 * Makefile.in: Add stamp-h target.
16431 * configure.in: Create stamp-h.
16432 * configure: Regenerated.
16433
16434 2002-04-09 Daniel Jacobowitz <drow@mvista.com>
16435
16436 * inferiors.c: New file.
16437 * target.c: New file.
16438 * target.h: New file.
16439 * Makefile.in: Add target.o and inferiors.o. Update
16440 dependencies.
16441 * linux-low.c (inferior_pid): New static variable,
16442 moved from server.c.
16443 (linux_create_inferior): Renamed from create_inferior.
16444 Call add_inferior. Return 0 on success instead of a PID.
16445 (linux_attach): Renamed from myattach.
16446 (linux_kill): Renamed from kill_inferior. Call clear_inferiors ().
16447 (linux_thread_alive): Renamed from mythread_alive.
16448 (linux_wait): Renamed from mywait. Call clear_inferiors () if the
16449 child dies.
16450 (linux_resume): Renamed from myresume. Add missing ``return 0''.
16451 (regsets_store_inferior_registers): Correct error message.
16452 Add missing ``return 0''.
16453 (linux_fetch_registers): Renamed from fetch_inferior_registers.
16454 (linux_store_registers): Renamed from store_inferior_registers.
16455 (linux_read_memory): Renamed from read_inferior_memory.
16456 (linux_write_memory): Renamed from write_inferior_memory.
16457 (linux_target_ops): New structure.
16458 (initialize_low): Call set_target_ops ().
16459 * remote-utils.c (unhexify): New function.
16460 (hexify): New function.
16461 (input_interrupt): Send signals to ``signal_pid''.
16462 * server.c (inferior_pid): Remove.
16463 (start_inferior): Update create_inferior call.
16464 (attach_inferior): Call add_inferior.
16465 (handle_query): New function.
16466 (main): Call handle_query for `q' packets.
16467 * server.h: Include "target.h". Remove obsolete prototypes.
16468 Add prototypes for "inferiors.c", "target.c", hexify, and unhexify.
16469
16470 2002-04-09 Daniel Jacobowitz <drow@mvista.com>
16471
16472 * Makefile.in: Add WARN_CFLAGS. Update configury
16473 dependencies.
16474 * configure.in: Check for <string.h>
16475 * configure: Regenerate.
16476 * config.in: Regenerate.
16477 * gdbreplay.c: Include needed system headers.
16478 (remote_open): Remove strchr prototype.
16479 * linux-low.h: Correct #ifdef to HAVE_LINUX_USRREGS.
16480 * regcache.c (supply_register): Change buf argument to const void *.
16481 (supply_register_by_name): Likewise.
16482 (collect_register): Change buf argument to void *.
16483 (collect_register_by_name): Likewise.
16484 * regcache.h: Add missing prototypes.
16485 * remote-utils.c: Include <arpa/inet.h> for inet_ntoa.
16486 * server.c (handle_query): New function.
16487 (attached): New static variable, moved out of main.
16488 (main): Quiet longjmp clobber warnings.
16489 * server.h: Add ATTR_NORETURN and ATTR_FORMAT. Update prototypes.
16490 * utils.c (error): Remove NORETURN.
16491 (fatal): Likewise.