]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame_incremental - gdb/gdbserver/ChangeLog
Automatic date update in version.in
[thirdparty/binutils-gdb.git] / gdb / gdbserver / ChangeLog
... / ...
CommitLineData
12018-07-22 Tom Tromey <tom@tromey.com>
2
3 * configure: Rebuild.
4
52018-07-22 Tom Tromey <tom@tromey.com>
6
7 * win32-low.c (win32_create_inferior): Remove unused variables.
8 * gdbreplay.c (remote_open): Remove unused variable.
9 * remote-utils.c (remote_prepare): Remove unused variable.
10 * x86-tdesc.h (X86_TDESC_H): Define.
11 (amd64_expedite_regs): Define conditionally.
12 (i386_expedite_regs): Mark ATTRIBUTE_UNUSED.
13 * linux-x86-tdesc.c (i386_tdescs): Move inside #if.
14 * remote-utils.c (readchar): Remove unused variable.
15
162018-07-13 Pedro Alves <palves@redhat.com>
17
18 * linux-low.c (linux_kill): Change parameter to process_info
19 pointer instead of pid. Adjust.
20 * lynx-low.c (lynx_kill): Likewise.
21 * nto-low.c (nto_kill): Likewise.
22 * spu-low.c (spu_kill): Likewise.
23 * win32-low.c (win32_kill): Likewise.
24 * server.c (handle_v_kill, kill_inferior_callback)
25 (detach_or_kill_for_exit): Adjust.
26 * target.c (kill_inferior): Change parameter to process_info
27 pointer instead of pid. Adjust.
28 * target.h (struct target_ops) <kill>: Change parameter to
29 process_info pointer instead of pid. Adjust all implementations
30 and callers.
31 (kill_inferior): Likewise.
32
332018-07-13 Pedro Alves <palves@redhat.com>
34
35 * linux-low.c (linux_detach, linux_join): Change parameter to
36 process_info pointer instead of pid. Adjust.
37 * lynx-low.c (lynx_detach, lynx_join): Likewise.
38 * nto-low.c (nto_detach): Likewise.
39 * spu-low.c (spu_detach, spu_join): Likewise.
40 * win32-low.c (win32_detach, win32_join): Likewise.
41 * server.c (handle_detach, detach_or_kill_for_exit): Adjust.
42 * target.h (struct target_ops) <detach, join>: Change parameter to
43 process_info pointer instead of pid. Adjust all implementations
44 and callers.
45 (detach_inferior, join_inferior): Rename 'pid' parameter to
46 'proc'.
47
482018-07-11 Sergio Durigan Junior <sergiodj@redhat.com>
49 Jan Kratochvil <jan.kratochvil@redhat.com>
50 Paul Fertser <fercerpav@gmail.com>
51 Tsutomu Seki <sekiriki@gmail.com>
52
53 * Makefile.in (SFILES): Add '$(srcdir)/common/netstuff.c'.
54 (OBS): Add 'common/netstuff.o'.
55 (GDBREPLAY_OBS): Likewise.
56 * gdbreplay.c: Include 'wspiapi.h' and 'netstuff.h'.
57 (remote_open): Implement support for IPv6
58 connections.
59 * remote-utils.c: Include 'netstuff.h', 'filestuff.h'
60 and 'wspiapi.h'.
61 (handle_accept_event): Accept connections from IPv6 sources.
62 (remote_prepare): Handle IPv6-style hostnames; implement
63 support for IPv6 connections.
64 (remote_open): Implement support for printing connections from
65 IPv6 sources.
66
672018-07-11 Pedro Alves <palves@redhat.com>
68
69 PR gdb/23377
70 * mem-break.c (any_persistent_commands): Add process_info
71 parameter and use it instead of relying on the current process.
72 Change return type to bool.
73 * mem-break.h (any_persistent_commands): Add process_info
74 parameter and change return type to bool.
75 * server.c (handle_detach): Remove require_running_or_return call.
76 Look up the process_info for the process we're about to detach.
77 If not found, return back error to GDB. Adjust
78 any_persistent_commands call to pass down a process pointer.
79
802018-07-11 Pedro Alves <palves@redhat.com>
81
82 * i387-fp.c (i387_cache_to_fsave, cache_to_fxsave)
83 (i387_cache_to_xsave): Use regcache_raw_get_unsigned_by_name
84 instead of collect_register_by_name.
85 * regcache.c (regcache_raw_get_unsigned_by_name): New.
86 * regcache.h (regcache_raw_get_unsigned_by_name): New.
87
882018-07-04 Vyacheslav Barinov <v.barinov@samsung.com>
89 Pedro Alves <palves@redhat.com>
90
91 * linux-low.c (initialize_low): Call linux_proc_init_warnings.
92
932018-07-03 Tom Tromey <tom@tromey.com>
94
95 * linux-low.c: Update.
96 * lynx-low.c: Update.
97 * mem-break.c: Update.
98 * nto-low.c: Update.
99 * remote-utils.c: Update.
100 * server.c: Update.
101 * spu-low.c: Update.
102 * target.c: Update.
103 * win32-low.c: Update.
104
1052018-07-03 Tom Tromey <tom@tromey.com>
106
107 * server.c: Update.
108
1092018-07-03 Tom Tromey <tom@tromey.com>
110
111 * linux-low.c: Update.
112
1132018-07-03 Tom Tromey <tom@tromey.com>
114
115 * target.c: Update.
116
1172018-07-03 Tom Tromey <tom@tromey.com>
118
119 * linux-low.c: Update.
120 * linux-mips-low.c: Update.
121 * lynx-low.c: Update.
122 * nto-low.c: Update.
123 * remote-utils.c: Update.
124 * server.c: Update.
125 * spu-low.c: Update.
126 * target.c: Update.
127 * thread-db.c: Update.
128
1292018-07-03 Tom Tromey <tom@tromey.com>
130
131 * linux-low.c: Update.
132 * linux-mips-low.c: Update.
133 * lynx-low.c: Update.
134 * mem-break.c: Update.
135 * nto-low.c: Update.
136 * remote-utils.c: Update.
137 * server.c: Update.
138 * spu-low.c: Update.
139 * target.c: Update.
140 * tracepoint.c: Update.
141
1422018-07-03 Tom Tromey <tom@tromey.com>
143
144 * linux-low.c: Update.
145 * linux-ppc-low.c: Update.
146 * linux-x86-low.c: Update.
147 * proc-service.c: Update.
148 * server.c: Update.
149 * spu-low.c: Update.
150 * thread-db.c: Update.
151 * win32-low.c: Update.
152
1532018-07-03 Tom Tromey <tom@tromey.com>
154
155 * linux-low.c: Update.
156 * lynx-low.c: Update.
157 * nto-low.c: Update.
158 * remote-utils.c: Update.
159 * spu-low.c: Update.
160 * thread-db.c: Update.
161 * win32-low.c: Update.
162
1632018-06-29 Joel Brobecker <brobecker@adacore.com>
164
165 * linux-x86-tdesc.c (amd64_linux_read_description): Add missing
166 parameter in call to 'amd64_create_target_description'.
167
1682018-06-28 Jan Kratochvil <jan.kratochvil@redhat.com>
169
170 * x86-tdesc.h: Remove executable permission flag.
171
1722018-06-19 Simon Marchi <simon.marchi@ericsson.com>
173
174 * configure.ac: Remove AC_PREREQ, add missing quoting.
175 * configure: Re-generate.
176 * config.in: Re-generate.
177 * aclocal.m4: Re-generate.
178
1792018-06-18 Simon Marchi <simon.marchi@ericsson.com>
180
181 * tracepoint.h (current_traceframe): Remove declaration.
182
1832018-06-18 Alan Hayward <alan.hayward@arm.com>
184
185 * linux-aarch64-low.c (is_sve_tdesc): New function.
186 (aarch64_sve_regs_copy_to_regcache): Likewise.
187 (aarch64_sve_regs_copy_from_regcache): Likewise.
188 (aarch64_regs_info): Add SVE checks.
189 (initialize_low_arch): Initialize SVE.
190
1912018-06-18 Alan Hayward <alan.hayward@arm.com>
192
193 * Makefile.in: Add aarch64-sve-linux-ptrace.c.
194
1952018-06-11 Alan Hayward <alan.hayward@arm.com>
196
197 * linux-aarch64-ipa.c (get_ipa_tdesc): Add null VQ param.
198 (initialize_low_tracepoint): Likewise
199 * linux-aarch64-low.c (aarch64_arch_setup): Get VQ.
200 * linux-aarch64-tdesc-selftest.c (aarch64_tdesc_test): Add null VQ
201 param.
202 * linux-aarch64-tdesc.c (aarch64_linux_read_description): Add VQ
203 checks.
204 * linux-aarch64-tdesc.h (aarch64_linux_read_description): Add VQ.
205
2062018-06-11 Alan Hayward <alan.hayward@arm.com>
207
208 * server.h (PBUFSIZ): Increase size
209
2102018-06-11 Alan Hayward <alan.hayward@arm.com>
211
212 * regcache.c (regcache::raw_compare): New function.
213 * regcache.h (regcache::raw_compare): New declaration.
214
2152018-06-11 Alan Hayward <alan.hayward@arm.com>
216
217 * regcache.c (new_register_cache): Use new.
218 (free_register_cache): Use delete.
219 (register_data): Use const.
220 (supply_register): Move body inside regcache.
221 (regcache::raw_supply): New override function.
222 (collect_register): Move body inside regcache.
223 (regcache::raw_collect): New override function.
224 (regcache::get_register_status): New override function.
225 * regcache.h (struct regcache): Inherit from reg_buffer_common.
226
2272018-06-09 Tom Tromey <tom@tromey.com>
228
229 * event-loop.c (gdb_event, gdb_event_p): Remove typedefs. Don't
230 declare queue.
231 (event_queue): Use std::queue.
232 (gdb_event_xfree): Remove.
233 (initialize_event_loop, process_event, wait_for_event): Update.
234
2352018-06-08 Stan Cox <scox@redhat.com>
236
237 * win32-low.c (win32_create_inferior): last_ptid and last_status
238 moved to client_state.
239
2402018-06-08 Pedro Alves <palves@redhat.com>
241
242 * Makefile.in (GDBREPLAY_OBS): Add common/cleanups.o,
243 common/common-exceptions.o, common/common-utils.o,
244 common/errors.o, common/print-utils.o and utils.o.
245 * gdbreplay.c: Include "common-defs.h" instead of the two
246 'config.h's here. Don't include stdio.h, errno.h, stdlib.h,
247 string.h or alloca.h.
248 (perror_with_name): Delete.
249 (remote_open): Use xstrdup instead of strdup.
250 (main): Rename to ...
251 (captured_main): ... this.
252 (main): New.
253
2542018-06-08 Tom Tromey <tom@tromey.com>
255
256 * linux-low.c (linux_low_read_btrace): Update.
257
2582018-06-04 Stan Cox <scox@redhat.com>
259
260 * server.h (struct client_state): New.
261 * server.c (cont_thread, general_thread, multi_process)
262 (report_fork_events, report_vfork_events, report_exec_events)
263 (report_thread_events, swbreak_feature, hwbreak_feature)
264 (vCont_supported, disable_randomization, pass_signals)
265 (program_signals, program_signals_p, last_status, last_ptid, own_buf):
266 Moved to client_state.
267 * remote-utils.c (remote_debug, noack_mode)
268 (transport_is_reliable): Moved to client_state.
269 * tracepoint.c (current_traceframe): Moved to client_state.
270
271 Update all callers.
272 * server.c, remote-utils.c, tracepoint.c, fork-child.c,
273 linux-low.c, remote-utils.h, target.c: Use client_state.
274
2752018-05-31 Alan Hayward <alan.hayward@arm.com>
276
277 * configure.srv: Add new c/h file.
278
2792018-05-31 Alan Hayward <alan.hayward@arm.com>
280
281 * linux-aarch64-tdesc.c (aarch64_linux_read_description): Add
282 null VQ.
283
2842018-05-25 Maciej W. Rozycki <macro@mips.com>
285
286 * gdb.arch/mips-fpregset-core.exp: New test.
287 * gdb.arch/mips-fpregset-core.c: New test source.
288
2892018-05-23 Erik Kurzinger <ekurzinger@nvidia.com>
290
291 PR server/23198
292 * hostio.c (require_int): Do not report overflow for integers
293 between 0xfffffff and 0x7fffffff.
294
2952018-05-22 Maciej W. Rozycki <macro@mips.com>
296
297 * linux-mips-low.c [HAVE_PTRACE_GETREGS] (mips_collect_register)
298 (mips_supply_register): Move outside HAVE_PTRACE_GETREGS.
299 (mips_collect_ptrace_register, mips_supply_ptrace_register): New
300 functions.
301 (the_low_target): Wire them.
302
3032018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
304
305 * linux-ppc-low.c (ppc_fill_vrregset): Add vscr_offset variable.
306 Set vscr_offset to 0 in little-endian mode and 12 in big-endian
307 mode. Call collect_register_by_name with vscr using
308 vscr_offset. Zero-pad vscr and vrsave fields in collector buffer.
309 (ppc_store_vrregset): Add and set vscr_offset variable as in
310 ppc_fill_vrregset. Call supply_register_by_name with vscr using
311 vscr_offset.
312
3132018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
314
315 * linux-ppc-low.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
316 (ppc_arch_setup): Change SIZEOF_VRREGS and SIZEOF_VSXREGS to
317 PPC_LINUX_SIZEOF_VRREGSET and PPC_LINUX_SIZEOF_VSXREGSET.
318
3192018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
320
321 * linux-ppc-low.c (ppc_fill_vsxregset): Remove ppc_hwcap check.
322 (ppc_store_vsxregset): Likewise.
323 (ppc_fill_vrregset): Likewise.
324 (ppc_store_vrregset): Likewise.
325 (ppc_fill_evrregset): Likewise.
326 (ppc_store_evrregset): Likewise.
327 (ppc_regsets): Set VSX/VR/EVR regset sizes to 0.
328 (ppc_arch_setup): Iterate through ppc_regsets and set sizes when
329 needed.
330
3312018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
332
333 * linux-ppc-low.c (ppc_arch_setup): Remove code for getting the
334 wordsize of the inferior. Call ppc_linux_target_wordsize.
335
3362018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
337
338 * configure.srv (srv_tgtobj): Add arch/ppc-linux-common.o.
339 * Makefile.in (SFILES): Add arch/ppc-linux-common.c.
340 * linux-ppc-tdesc.h: Rename to linux-ppc-tdesc-init.h.
341 * linux-ppc-tdesc-init.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
342 (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
343 (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
344 (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
345 (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
346 (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
347 (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
348 (tdesc_powerpc_e500l): Remove.
349 * linux-ppc-ipa.c: Include arch/ppc-linux-tdesc.h and
350 linux-ppc-tdesc-init.h. Don't include linux-ppc-tdesc.h.
351 * linux-ppc-low.c: Include arch/ppc-linux-common.h,
352 arch/ppc-linux-tdesc.h, and linux-ppc-tdesc-init.h. Don't include
353 linux-ppc-tdesc.h.
354 (ppc_arch_setup): Remove target description matching code. Fill a
355 ppc_linux_features struct and call ppc_linux_match_description
356 with it.
357
3582018-05-22 Maciej W. Rozycki <macro@mips.com>
359
360 * linux-mips-low.c (mips_cannot_fetch_register): Return 1 if the
361 width of the requested register exceeds the width of the
362 `ptrace' data type.
363 (mips_cannot_store_register): Likewise.
364
3652018-05-21 Maciej W. Rozycki <macro@mips.com>
366
367 * linux-mips-low.c (mips_fetch_register): New function. Update
368 preceding comment.
369 (mips_store_gregset): Supply 0 rather than $restart for $zero.
370 (the_low_target): Wire `mips_fetch_register'.
371
3722018-05-10 Joel Brobecker <brobecker@adacore.com>
373
374 * lynx-i386-low.c (LYNXOS_178): New macro.
375 [LYNXOS_178] (usr_fcontext_t): Provide a definition that matches
376 the layout on LynxOS-178.
377 (lynx_i386_fill_fpregset, lynx_i386_store_fpregset): Do not
378 handle floating point registers that are not supported by
379 LynxOS-178.
380
3812018-05-10 Tom Tromey <tom@tromey.com>
382
383 * configure: Rebuild.
384
3852018-05-10 Joel Brobecker <brobecker@adacore.com>
386
387 PR server/23158:
388 * tdesc.h (init_target_desc) <expedite_regs>: New parameter.
389 * tdesc.c (init_target_desc) <expedite_regs>: New parameter.
390 Use it to set the expedite_regs field in the given tdesc.
391 * x86-tdesc.h: New file.
392 * linux-aarch64-tdesc.c (aarch64_linux_read_description):
393 Adjust following the addition of the new expedite_regs parameter
394 to init_target_desc.
395 * linux-tic6x-low.c (tic6x_read_description): Likewise.
396 * linux-x86-tdesc.c: #include "x86-tdesc.h".
397 (i386_linux_read_description, amd64_linux_read_description):
398 Adjust following the addition of the new expedite_regs parameter
399 to init_target_desc.
400 * lynx-i386-low.c: #include "x86-tdesc.h".
401 (lynx_i386_arch_setup): Adjust following the addition of the new
402 expedite_regs parameter to init_target_desc.
403 * nto-x86-low.c: #include "x86-tdesc.h".
404 (nto_x86_arch_setup): Adjust following the addition of the new
405 expedite_regs parameter to init_target_desc.
406 * win32-i386-low.c: #include "x86-tdesc.h".
407 (i386_arch_setup): Adjust following the addition of the new
408 expedite_regs parameter to init_target_desc.
409
4102018-05-10 Joel Brobecker <brobecker@adacore.com>
411
412 PR server/23158:
413 * win32-low.c (win32_create_inferior): Add call to my_wait
414 setting last_status global.
415
4162018-05-10 Joel Brobecker <brobecker@adacore.com>
417
418 PR server/23158:
419 * win32-low.c (create_process): Only call gdb_tilde_expand if
420 inferior_cwd is not NULL.
421
4222018-05-08 Andrew Burgess <andrew.burgess@embecosm.com>
423
424 * i387-fp.c (i387_cache_to_xsave): Only write x87 control
425 registers to the cache if their values have changed.
426 (i387_xsave_to_cache): Provide default values for x87 control
427 registers when these features are available, but disabled.
428 * regcache.c (supply_register_by_name_zeroed): New function.
429 * regcache.h (supply_register_by_name_zeroed): Declare new
430 function.
431
4322018-05-07 Tom Tromey <tom@tromey.com>
433
434 * configure: Rebuild.
435
4362018-05-04 Tom Tromey <tom@tromey.com>
437
438 * configure: Rebuild.
439
4402018-05-04 Jan Kratochvil <jan.kratochvil@redhat.com>
441 Pedro Alves <palves@redhat.com>
442
443 * linux-aarch64-low.c (aarch64_stopped_data_address):
444 Likewise.
445
4462018-04-27 Tom Tromey <tom@tromey.com>
447
448 * configure: Rebuild.
449
4502018-04-23 Tom Tromey <tom@tromey.com>
451
452 * configure: Rebuild.
453
4542018-04-19 Simon Marchi <simon.marchi@ericsson.com>
455
456 * Makefile.in (depcomp): Add "..".
457 (all_deps_files): New and use it.
458
4592018-04-18 Alan Hayward <alan.hayward@arm.com>
460
461 * configure.srv (aarch64*-*-linux*): Don't include xml.
462 (i[34567]86-*-cygwin*): Likewise.
463 (i[34567]86-*-linux*): Likewise.
464 (i[34567]86-*-lynxos*): Likewise.
465 (i[34567]86-*-mingw32ce*): Likewise.
466 (i[34567]86-*-mingw*): Likewise.
467 (i[34567]86-*-nto*): Likewise.
468 (tic6x-*-uclinux): Likewise.
469 (x86_64-*-linux*): Likewise.
470 (x86_64-*-mingw*): Likewise.
471 (x86_64-*-cygwin*): Likewise.
472
4732018-04-18 Alan Hayward <alan.hayward@arm.com>
474
475 * tdesc.c: Remove xml parameter.
476
4772018-04-18 Alan Hayward <alan.hayward@arm.com>
478
479 * server.c (get_features_xml): Remove cast.
480 * tdesc.c (void target_desc::accept): Fill in function.
481 (tdesc_get_features_xml): Remove old xml creation.
482 (print_xml_feature::visit_pre): Add xml vistor.
483 * tdesc.h (struct target_desc): Make xmltarget mutable.
484 (tdesc_get_features_xml): Remove declaration.
485
4862018-04-18 Alan Hayward <alan.hayward@arm.com>
487
488 * tdesc.c (tdesc_architecture_name): Add new function.
489 (tdesc_osabi_name): Likewise.
490 (tdesc_get_features_xml): Use new functions.
491
4922018-04-18 Alan Hayward <alan.hayward@arm.com>
493
494 * tdesc.c (tdesc_create_flags): Remove.
495 (tdesc_add_flag): Likewise.
496 (tdesc_named_type): Likewise.
497 (tdesc_create_union): Likewise.
498 (tdesc_create_struct): Likewise.
499 (tdesc_create_vector): Likewise.
500 (tdesc_add_bitfield): Likewise.
501 (tdesc_add_field): Likewise.
502 (tdesc_set_struct_size): Likewise.
503
5042018-04-18 Alan Hayward <alan.hayward@arm.com>
505
506 * tdesc.c (~target_desc): Remove implictly deleted items.
507 (init_target_desc): Iterate all features.
508 (tdesc_get_features_xml): Use vector.
509 (tdesc_create_feature): Create feature.
510 * tdesc.h (tdesc_feature) Remove
511 (target_desc): Add features.
512
5132018-04-18 Alan Hayward <alan.hayward@arm.com>
514
515 * Makefile.in: Add common/tdesc.c
516 * tdesc.c (init_target_desc): init all reg_defs from register
517 vector.
518 (tdesc_create_reg): Create tdesc_reg.
519 * tdesc.h (tdesc_feature): Add register vector.
520
5212018-03-30 Simon Marchi <simon.marchi@polymtl.ca>
522
523 * tdesc.h (struct target_desc) <features>: Change type to
524 std::vector<std::string>.
525 * tdesc.c (target_desc::~target_desc): Adjust to std::vector
526 changes.
527 (tdesc_get_features_xml): Likewise.
528 (tdesc_create_feature): Likewise.
529
5302018-03-26 Alan Hayward <alan.hayward@arm.com>
531
532 * regcache.c (find_register_by_number): Return a ref.
533 (find_regno): Use references.
534 (register_size): Likewise.
535 (register_data): Likewise.
536 * tdesc.c (target_desc::~target_desc): Remove free calls.
537 (target_desc::operator==): Use std::vector compare.
538 (init_target_desc): Use reference.
539 (tdesc_create_reg): Use reg constructors.
540 * tdesc.h (struct target_desc): Replace pointer with object.
541
5422018-03-23 Alan Hayward <alan.hayward@arm.com>
543
544 * regcache.c (find_register_by_number): Make static.
545 (find_regno): Use find_register_by_number
546 * regcache.h (struct reg): Remove declaration.
547
5482018-03-23 Alan Hayward <alan.hayward@arm.com>
549
550 * tdesc.c (target_desc::~target_desc): Move to here.
551 (target_desc::operator==): Likewise.
552 * tdesc.h (target_desc::~target_desc): Move from here.
553 (target_desc::operator==): Likewise.
554
5552018-03-22 Andreas Arnez <arnez@linux.vnet.ibm.com>
556
557 * linux-s390-low.c (s390_get_wordsize): Correct brace style.
558
5592018-03-21 Andreas Arnez <arnez@linux.vnet.ibm.com>
560
561 * linux-s390-ipa.c (get_ipa_tdesc): Add handling for
562 S390_TDESC_GS.
563 * linux-s390-low.c (s390_get_ipa_tdesc_idx): Likewise.
564 (initialize_low_tracepoint): Call init_registers_s390x_gs_linux64
565 and init_registers_s390_gs_linux64.
566
5672018-03-21 Andreas Arnez <arnez@linux.vnet.ibm.com>
568
569 * linux-s390-low.c (s390_fill_gs): Remove function.
570 (s390_fill_gsbc): Remove function.
571 (s390_regsets): Set fill functions for the guarded storage regsets
572 to NULL.
573
5742018-03-21 Andreas Arnez <arnez@linux.vnet.ibm.com>
575
576 * linux-s390-low.c (s390_get_hwcap): Replace tdesc parameter by
577 the word size. Add comment.
578 (s390_get_wordsize): New function.
579 (s390_arch_setup): No longer select a temporary tdesc to fetch the
580 pswm with it. Instead, use s390_get_wordsize to determine the
581 word size first and derive the correct tdesc from that directly.
582
5832018-03-16 Simon Marchi <simon.marchi@polymtl.ca>
584
585 * Makefile.in: Include silent-rules.mk.
586 (srcdir, abs_top_srcdir, abs_srcdir, VPATH): Move up.
587 (COMPILE): Add ECHO_CXX.
588 (gdbserver$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
589 (gdbreplay$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
590 ($(IPA_LIB)): Add SILENCE and ECHO_CXXLD.
591 (version-generated.c): Add ECHO_GEN.
592 (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN_GENERATED.
593 (IPAGENT_COMPILE): Add ECHO_CXX.
594 (%-generated.c): Add ECHO_REGDAT.
595
5962018-03-14 Tom Tromey <tom@tromey.com>
597
598 PR cli/14977:
599 * ax.c (ax_printf): Special case for NULL.
600
6012018-03-08 Simon Marchi <simon.marchi@polymtl.ca>
602
603 * linux-low.c (linux_qxfer_libraries_svr4): Use
604 xml_escape_text_append.
605
6062018-03-08 Simon Marchi <simon.marchi@polymtl.ca>
607
608 * linux-low.c (linux_qxfer_libraries_svr4): Use std::string.
609
6102018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
611
612 * server.c (handle_general_set): Remove unnecessary xstrdup.
613
6142018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
615
616 * server.c (parse_debug_format_options): Adjust to
617 delim_string_to_char_ptr_vec changes.
618 * thread-db.c (thread_db_load_search): Adjust to
619 dirnames_to_char_ptr_vec changes.
620
6212018-03-01 Markus Metzger <markus.t.metzger@intel.com>
622
623 * target.h (target_enable_btrace, target_disable_btrace)
624 (target_read_btrace, target_read_btrace_conf): Turn macro into
625 inline function. Throw error if target method is not defined.
626 * server.c (handle_qxfer_btrace handle_qxfer_btrace_conf): Remove
627 check for btrace target method. Be prepared to handle exceptions
628 from btrace target methods.
629
6302018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
631
632 * server.c (captured_main): Change order of error message printed
633 when the current working directory cannot be found.
634
6352018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
636
637 * server.c: Include "filenames.h" and "pathstuff.h".
638 (program_name): Delete variable.
639 (program_path): New anonymous class.
640 (get_exec_wrapper): Use "program_path" instead of
641 "program_name".
642 (handle_v_run): Likewise.
643 (captured_main): Likewise.
644 (process_serial_event): Likewise.
645
6462018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
647
648 * Makefile.in (SFILES): Add "$(srcdir)/common/pathstuff.c".
649 (OBJS): Add "pathstuff.o".
650 * server.c (current_directory): New global variable.
651 (captured_main): Initialize "current_directory".
652
6532018-02-26 Alan Hayward <alan.hayward@arm.com>
654
655 * tdesc.c: Use common/tdesc.h.
656 * tdesc.h: Likewise.
657
6582018-02-20 Alan Hayward <alan.hayward@arm.com>
659 Simon Marchi <simon.marchi@ericsson.com>
660
661 * Makefile.in: Switch order of make rules.
662
6632018-02-19 Alan Hayward <alan.hayward@arm.com>
664
665 * Makefile.in: Add common directory in build.
666 * configure.ac: Add common reference.
667 * configure: Regenerate.
668
6692018-02-09 Markus Metzger <markus.t.metzger@intel.com>
670
671 * linux-low.c (linux_target_ops): Remove linux_supports_btrace.
672 * nto-low.c (nto_target_ops): Remove NULL for supports_btrace.
673 * spu-low.c (spu_target_ops): Likewise.
674 * win32-low.c (win32_target_ops): Likewise.
675 * server.c (supported_btrace_packets): Report packets unconditionally.
676 * target.h (target_ops) <supports_btrace>: Remove.
677 (target_supports_btrace): Remove.
678
6792018-02-09 Markus Metzger <markus.t.metzger@intel.com>
680
681 * server.c (handle_btrace_enable_bts, handle_btrace_enable_pt)
682 (handle_btrace_disable): Change return type to void. Use exceptions
683 to report errors.
684 (handle_btrace_general_set): Catch exception and copy message to
685 return message.
686
6872018-02-08 Tom Tromey <tom@tromey.com>
688
689 * linux-low.c (install_software_single_step_breakpoints): Use
690 make_scoped_restore.
691 * inferiors.c (make_cleanup_restore_current_thread): Remove.
692 (do_restore_current_thread_cleanup): Remove.
693 * gdbthread.h (make_cleanup_restore_current_thread): Don't
694 declare.
695
6962018-02-08 Tom Tromey <tom@tromey.com>
697
698 * mem-break.c (set_raw_breakpoint_at): Use
699 gdb::unique_xmalloc_ptr.
700
7012018-01-30 Pedro Alves <palves@redhat.com>
702
703 PR gdb/13211
704 * target.c (target_terminal::terminal_state): Rename to ...
705 (target_terminal::m_terminal_state): ... this.
706
7072018-01-19 James Clarke <jrtc27@jrtc27.com>
708
709 * linux-low.c (handle_extended_wait): Surround call to
710 thread_db_notice_clone with #ifdef USE_THREAD_DB.
711
7122018-01-17 Simon Marchi <simon.marchi@ericsson.com>
713
714 * linux-low.c (attach_proc_task_lwp_callback): Adjust to
715 linux_ptrace_attach_fail_reason_string now returning an
716 std::string.
717 (linux_attach): Likewise.
718 * thread-db.c (attach_thread): Likewise.
719
7202018-01-17 Eldar Abusalimov <eldar.abusalimov@jetbrains.com>
721
722 PR gdb/21559
723 * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
724 checking for fs_base/gs_base fields in struct user_regs_struct.
725 * configure: Regenerate.
726
7272018-01-16 Yao Qi <yao.qi@linaro.org>
728
729 PR gdb/18749
730 * linux-low.c (fetch_register): Call supply_register instead of
731 error.
732
7332018-01-08 Yao Qi <yao.qi@linaro.org>
734 Simon Marchi <simon.marchi@ericsson.com>
735
736 * Makefile.in (OBS): Remove selftest.o.
737 * configure.ac: Set srv_selftest_objs if $development is true.
738 (GDBSERVER_DEPFILES): Append $srv_selftest_objs.
739 * configure: Re-generated.
740 * server.c (captured_main): Wrap variable selftest_filter with
741 GDB_SELF_TEST.
742
7432018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
744
745 * server.c (parse_debug_format_options): Return std::string.
746 (handle_monitor_command, captured_main): Adjust.
747
7482018-01-05 Pedro Alves <palves@redhat.com>
749
750 PR gdb/18653
751 * server.c (captured_main): Pass quiet=false to
752 save_original_signals_state.
753
7542018-01-01 Joel Brobecker <brobecker@adacore.com>
755
756 * gdbreplay.c (gdbreplay_version): Update copyright year in
757 version message.
758 * server.c (gdbserver_version): Likewise.
759
7602017-12-08 Tom Tromey <tom@tromey.com>
761
762 * ax.c (ax_printf): Update.
763
7642017-12-07 Yao Qi <yao.qi@linaro.org>
765
766 * linux-aarch64-ipa.c (initialize_low_tracepoint): Call
767 aarch64_linux_read_description.
768 * linux-amd64-ipa.c (idx2mask): New array.
769 (get_ipa_tdesc): Move idx2mask out.
770 (initialize_low_tracepoint): Initialize target descriptions.
771 * linux-i386-ipa.c (idx2mask): New array.
772 (get_ipa_tdesc): Move idx2mask out.
773 (initialize_low_tracepoint): Initialize target descriptions.
774
7752017-12-05 Simon Marchi <simon.marchi@polymtl.ca>
776
777 * tdesc.c (struct tdesc_type): Change return type.
778 (tdesc_add_flag): Change parameter type.
779 (tdesc_add_bitfield): Likewise.
780 (tdesc_add_field): Likewise.
781 (tdesc_set_struct_size): Likewise.
782
7832017-12-05 Simon Marchi <simon.marchi@ericsson.com>
784
785 * regcache.c (registers_to_string): Remove unused variable.
786
7872017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
788
789 * inferiors.c (for_each_inferior_with_data): Remove.
790 * inferiors.h (for_each_inferior_with_data): Remove.
791 * server.c (handle_qxfer_threads_worker): Change parameter type.
792 (handle_qxfer_threads_proper): Use for_each_thread.
793
7942017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
795
796 * inferiors.c (for_each_inferior): Remove.
797 (clear_inferiors): Use for_each_thread.
798 * inferiors.h (for_each_inferior): Remove.
799 * linux-low.c (linux_wait_for_event_filtered): Use
800 for_each_thread.
801 (linux_stabilize_threads): Likewise.
802 * regcache.c (regcache_release): Likewise.
803 * server.c (gdb_wants_all_threads_stopped): Likewise.
804 (clear_pending_status_callback): Remove.
805 (handle_status): Use for_each_thread.
806 (captured_main): Likewise.
807 * win32-low.c (child_init_thread_list): Likewise.
808 (win32_clear_inferiors): Likewise.
809 (fake_breakpoint_event): Likewise.
810
8112017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
812
813 * inferiors.h (find_inferior): Remove.
814 * inferiors.c (find_inferior): Remove.
815
8162017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
817
818 * linux-low.c (resume_status_pending_p): Update comment.
819 (need_step_over_p): Update comment.
820
8212017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
822
823 * linux-low.c (proceed_one_lwp): Return void, change parameter
824 type.
825 (unsuspend_and_proceed_one_lwp): Likewise.
826 (proceed_all_lwps): Use for_each_thread.
827 (unstop_all_lwps): Likewise.
828
8292017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
830
831 * linux-low.c (linux_resume_one_thread): Return void, take
832 parameter directly.
833 (linux_resume): Use for_each_thread.
834
8352017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
836
837 * linux-low.c (send_sigstop_callback): Return void, change
838 parameter type. Rename to...
839 (send_sigstop): ... this.
840 (suspend_and_send_sigstop_callback): Return void, change parameter
841 type. Rename to...
842 (suspend_and_send_sigstop): ... this.
843 (stop_all_lwps): Use for_each_thread.
844
8452017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
846
847 * linux-low.c (lwp_running): Return bool, remove unused
848 argument.
849 (linux_stabilize_threads): Use find_thread.
850
8512017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
852
853 * linux-low.c (select_singlestep_lwp_callback): Remove.
854 (count_events_callback): Remove.
855 (select_event_lwp_callback): Remove.
856 (select_event_lwp): Use find_thread/for_each_thread.
857
8582017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
859
860 * linux-low.c (not_stopped_callback): Return bool, take filter
861 argument directly.
862 (linux_wait_for_event_filtered): Use find_thread.
863 (linux_wait_1): Likewise.
864
8652017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
866
867 * linux-low.c (same_lwp): Remove.
868 (find_lwp_pid): Use find_thread.
869
8702017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
871
872 * linux-low.c (delete_lwp_callback): Remove.
873 (linux_mourn): Use for_each_thread.
874
8752017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
876
877 * linux-low.c (linux_detach_lwp_callback): Return void, remove
878 args parameter, don't check for pid.
879 (linux_detach): Use for_each_thread.
880
8812017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
882
883 * linux-low.c (struct counter): Remove.
884 (second_thread_of_pid_p): Remove.
885 (last_thread_of_process_p): Use find_thread.
886
8872017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
888
889 * inferiors.c (find_inferior_in_random): Remove.
890 * inferiors.h (find_inferior_in_random): Remove.
891 * linux-low.c (status_pending_p_callback): Return bool, accept
892 parameter ptid directly.
893 (linux_wait_for_event_filtered): Use find_thread_in_random.
894 (linux_wait_1): Likewise.
895
8962017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
897
898 * inferiors.c (find_inferior_id): Remove.
899 (find_thread_ptid): Move implemention from find_inferior_id to
900 here.
901 * inferiors.h (find_inferior_id): Remove.
902 * server.c (handle_status): Use find_thread_ptid.
903 (process_serial_event): Likewise.
904 * thread-db.c (find_one_thread): Likewise.
905 (thread_db_thread_handle): Likewise.
906 * win32-low.c (thread_rec): Likewise.
907 (child_delete_thread): Likewise.
908 (win32_thread_alive): Likewise.
909 (get_child_debug_event): Likewise.
910
9112017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
912
913 * linux-mips-low.c (update_watch_registers_callback): Return
914 void, remove pid_p parameter, don't check for pid.
915 (mips_insert_point, mips_remove_point): Use for_each_thread.
916
9172017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
918
919 * lynx.low (lynx_delete_thread_callback): Remove.
920 (lynx_mourn): Use for_each_thread.
921
9222017-12-02 Simon Marchi <simon.marchi@polymtl.ca>
923
924 * regcache.c (regcache_invalidate_one): Remove.
925 (regcache_invalidate_pid): use for_each_thread.
926
9272017-11-26 Tom Tromey <tom@tromey.com>
928
929 * linux-low.c (linux_create_inferior): Update.
930
9312017-11-24 Ulrich Weigand <uweigand@de.ibm.com>
932
933 * spu-low.c (spu_create_inferior): Fix typo in argument name.
934
9352017-11-24 Alan Hayward <alan.hayward@arm.com>
936
937 * configure.srv: Add linux-aarch64-tdesc-selftest.o.
938 * linux-aarch64-low.c (initialize_low_arch): Call init func.
939 * linux-aarch64-tdesc-selftest.c: New file.
940 * linux-aarch64-tdesc.h (initialize_low_tdesc): New declaration.
941
9422017-11-24 Alan Hayward <alan.hayward@arm.com>
943
944 * configure.srv: Add new file.
945 * linux-aarch64-low.c (initialize_low_arch): Call init func.
946 * linux-aarch64-tdesc-selftest.c: New file.
947 * linux-aarch64-tdesc.h (initialize_low_tdesc): New declaration.
948
9492017-11-24 Alan Hayward <alan.hayward@arm.com>
950
951 * linux-aarch64-ipa.c (initialize_low_tracepoint): Remove init.
952 * linux-aarch64-low.c (initialize_low_arch): Remove init.
953 * linux-aarch64-tdesc.c (aarch64_linux_read_description): Add init.
954
9552017-11-24 Alan Hayward <alan.hayward@arm.com>
956
957 * configure.srv: Add new files.
958 * linux-aarch64-ipa.c (get_ipa_tdesc): Call
959 aarch64_linux_read_description.
960 * linux-aarch64-low.c (aarch64_linux_read_description):
961 Merge with aarch64_arch_setup.
962 (aarch64_arch_setup): Call aarch64_linux_read_description.
963 * linux-aarch64-tdesc.c: New file.
964 * linux-aarch64-tdesc.h: New file.
965
9662017-11-24 Yao Qi <yao.qi@linaro.org>
967
968 * configure.srv: Set $srv_regobj for tic6x-linux.
969 * linux-tic6x-low.c: Include "arch/tic6x.h" and "tdesc.h".
970 (tic6x_read_description): Move some code to tic6x_arch_setup.
971 (tic6x_tdesc_test): New function.
972 (initialize_low_arch): Call selftests::register_test.
973
9742017-11-22 Yao Qi <yao.qi@linaro.org>
975
976 * remote-utils.c (prepare_resume_reply): Use memcpy.
977
9782017-11-19 Simon Marchi <simon.marchi@ericsson.com>
979
980 * linux-low.c (kill_one_lwp_callback): Return void, take
981 argument directly, don't filter on pid.
982 (linux_kill): Use for_each_thread.
983
9842017-11-19 Simon Marchi <simon.marchi@ericsson.com>
985
986 * linux-low.c (need_step_over_p): Return bool, remove dummy
987 argument.
988 (linux_resume, proceed_all_lwps): Use find_thread.
989
9902017-11-19 Simon Marchi <simon.marchi@ericsson.com>
991
992 * linux-low.c (resume_status_pending_p): Return bool, remove
993 flag_p argument.
994 (linux_resume): Use find_thread.
995
9962017-11-19 Simon Marchi <simon.marchi@ericsson.com>
997
998 * linux-low.c (struct thread_resume_array): Remove.
999 (linux_set_resume_request): Return void, take arguments
1000 directly.
1001 (linux_resume): Use for_each_thread.
1002
10032017-11-19 Simon Marchi <simon.marchi@ericsson.com>
1004
1005 * linux-low.c (stuck_in_jump_pad_callback): Change prototype,
1006 return bool, remove data argument.
1007 (linux_stabilize_threads): Use find_thread.
1008
10092017-11-19 Simon Marchi <simon.marchi@ericsson.com>
1010
1011 * linux-low.c (unsuspend_one_lwp): Remove.
1012 (unsuspend_all_lwps): Use for_each_thread, inline code from
1013 unsuspend_one_lwp.
1014
10152017-11-19 Simon Marchi <simon.marchi@ericsson.com>
1016
1017 * gdbthread.h (find_thread): Add overload with ptid_t filter.
1018 * linux-low.c (struct iterate_over_lwps_args): Remove.
1019 (iterate_over_lwps_filter): Remove.
1020 (iterate_over_lwps): Use find_thread.
1021
10222017-11-19 Simon Marchi <simon.marchi@ericsson.com>
1023
1024 * linux-low.c (reset_lwp_ptrace_options_callback): Remove.
1025 (linux_handle_new_gdb_connection): Use for_each_thread, inline
1026 code from reset_lwp_ptrace_options_callback.
1027
10282017-11-19 Simon Marchi <simon.marchi@ericsson.com>
1029
1030 * linux-arm-low.c (struct update_registers_data): Remove.
1031 (update_registers_callback): Return void, take arguments
1032 directly, don't check thread's pid.
1033 (arm_insert_point, arm_remove_point): Use for_each_thread.
1034
10352017-11-19 Simon Marchi <simon.marchi@ericsson.com>
1036
1037 * win32-low.c (continue_one_thread): Return void, take argument
1038 directly.
1039 (child_continue): Use for_each_thread.
1040
10412017-11-19 Simon Marchi <simon.marchi@ericsson.com>
1042
1043 * win32-i386-low.c (update_debug_registers_callback): Rename
1044 to ...
1045 (update_debug_registers): ... this, return void, remove pid_p arg.
1046 (x86_dr_low_set_addr, x86_dr_low_set_control): Use for_each_thread.
1047
10482017-11-17 Simon Marchi <simon.marchi@polymtl.ca>
1049
1050 * inferiors.h (struct process_info): Add constructor, initialize
1051 fields..
1052 <syscalls_to_catch>: Change type to std::vector<int>.
1053 * inferiors.c (add_process): Allocate process_info with new.
1054 (remove_process): Free process_info with delete.
1055 * linux-low.c (handle_extended_wait): Adjust.
1056 (gdb_catching_syscalls_p, gdb_catch_this_syscall_p): Adjust.
1057 * server.c (handle_general_set): Adjust.
1058
10592017-11-16 Pedro Alves <palves@redhat.com>
1060
1061 * remote-utils.c (remote_close): Block SIGIO signals instead of
1062 uninstalling the SIGIO handler.
1063
10642017-11-16 Alan Hayward <alan.hayward@arm.com>
1065
1066 * tdesc.c (tdesc_get_features_xml): Allow null osabi.
1067
10682017-11-16 Yao Qi <yao.qi@linaro.org>
1069
1070 * linux-tic6x-low.c (tic6x_fill_gregset): Cast buf.
1071 (tic6x_store_gregset): Likewise.
1072 (tic6x_usrregs_info): Move it up.
1073
10742017-11-15 Alan Hayward <alan.hayward@arm.com>
1075
1076 * Makefile.in: Update arch rules.
1077 * configure.srv: Explicitly mark arch/ files.
1078
10792017-11-13 Andreas Schwab <schwab@suse.de>
1080
1081 * linux-m68k-low.c (m68k_supports_hardware_single_step): New
1082 function.
1083 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
1084
10852017-11-06 Pedro Alves <palves@redhat.com>
1086
1087 * config.in, configure: Regenerate.
1088
10892017-10-27 Simon Marchi <simon.marchi@ericsson.com>
1090
1091 * target.c (struct thread_search): Remove.
1092 (thread_search_callback): Remove.
1093 (prepare_to_access_memory): Use for_each_thread instead of
1094 find_inferior. Inline code from thread_search_callback.
1095
10962017-10-27 Simon Marchi <simon.marchi@ericsson.com>
1097
1098 * server.c (struct visit_actioned_threads_data): Remove.
1099 (visit_actioned_threads): Change prototype to take arguments
1100 directly.
1101 (resume): Use find_thread instead of find_inferior.
1102
11032017-10-27 Simon Marchi <simon.marchi@ericsson.com>
1104
1105 * server.c (queue_stop_reply_callback): Change prototype, return
1106 void.
1107 (find_status_pending_thread_callback): Remove.
1108 (handle_status): Replace find_inferior with find_thread and
1109 for_each_thread.
1110
11112017-10-25 Alan Hayward <alan.hayward@arm.com>
1112
1113 * linux-aarch64-low.c (aarch64_fill_gregset): Replace defines
1114 with REGNO.
1115 (aarch64_store_gregset): Likewise.
1116 (aarch64_fill_fpregset): Likewise.
1117 (aarch64_store_fpregset): Likewise.
1118
11192017-10-21 Simon Marchi <simon.marchi@ericsson.com>
1120
1121 * gdbthread.h (find_thread, for_each_thread): New functions.
1122 * inferiors.c (thread_of_pid): Remove.
1123 (find_any_thread_of_pid): Use find_thread.
1124 * linux-low.c (num_lwps): Use for_each_thread.
1125
11262017-10-17 Yao Qi <yao.qi@linaro.org>
1127
1128 * Makefile.in: Remove one rule.
1129 * configure.srv: Rename aarch64-insn.o with arch/aarch64-insn.o.
1130
11312017-10-17 Yao Qi <yao.qi@linaro.org>
1132
1133 * configure.srv: Rename arm-linux.o with arch/arm-linux.o.
1134 Rename arm-get-next-pcs.o with arch/arm-get-next-pcs.o.
1135
11362017-10-17 Yao Qi <yao.qi@linaro.org>
1137
1138 * configure.srv: Rename arm.o with arch/arm.o.
1139
11402017-10-17 Yao Qi <yao.qi@linaro.org>
1141
1142 * Makefile.in (CONFIG_SRC_SUBDIR): New variable.
1143 (clean): Remove .o files in CONFIG_SRC_SUBDIR.
1144 (distclean): Remove DEPDIR in CONFIG_SRC_SUBDIR.
1145 (arch-i386.o, arch-amd64.o): Remove rules.
1146 (arch/%.o): New rule.
1147 Update POSTCOMPILE and COMPILE.pre.
1148 * configure.ac: Invoke AC_CONFIG_COMMANDS.
1149 * configure: Re-generated.
1150 * configure.srv: Replace arch-i386.o with arch/i386.o.
1151 Replace arch-amd64.o with arch/amd64.o.
1152
11532017-10-16 Yao Qi <yao.qi@linaro.org>
1154
1155 * configure: Regenerated.
1156
11572017-10-14 Simon Marchi <simon.marchi@polymtl.ca>
1158
1159 * inferiors.h: (struct inferior_list): Remove.
1160 (struct inferior_list_entry); Remove.
1161 (add_inferior_to_list, clear_inferior_list, one_inferior_p,
1162 A_I_NEXT, ALL_INFERIORS_TYPE, ALL_INFERIORS, remove_inferior,
1163 get_first_inferior): Remove.
1164 (for_each_inferior, for_each_inferior_with_data, find_inferior,
1165 find_inferior_id, find_inferior_in_random): Change signature.
1166 * inferiors.c (all_threads): Change type to
1167 std::list<thread_info *>.
1168 (get_thread): Remove macro.
1169 (find_inferior, find_inferior_id): Change signature, implement
1170 using find_thread.
1171 (find_inferior_in_random): Change signature, implement using
1172 find_thread_in_random.
1173 (for_each_inferior, for_each_inferior_with_data): Change
1174 signature, implement using for_each_thread.
1175 (add_inferior_to_list, remove_inferior): Remove.
1176 (add_thread, get_first_thread, thread_of_pid,
1177 find_any_thread_of_pid, free_one_thread, remove_thread): Update.
1178 (get_first_inferior, one_inferior_p, clear_inferior_list):
1179 Remove.
1180 (clear_inferiors, get_thread_process): Update.
1181 * gdbthread.h: Include <list>.
1182 (struct thread_info) <entry>: Remove field.
1183 <id>: New field.
1184 (all_threads): Change type to std::list<thread_info *>.
1185 (get_first_inferior): Add doc.
1186 (find_thread, for_each_thread, find_thread_in_random): New
1187 functions.
1188 (current_ptid, pid_of, ptid_of, lwpid_of): Update.
1189 * linux-arm-low.c (update_registers_callback): Update.
1190 * linux-low.c (second_thread_of_pid_p): Update.
1191 (kill_one_lwp_callback, linux_detach_lwp_callback,
1192 delete_lwp_callback, status_pending_p_callback, same_lwp,
1193 find_lwp_pid, num_lwps, iterate_over_lwps_filter,
1194 iterate_over_lwps, not_stopped_callback,
1195 resume_stopped_resumed_lwps, count_events_callback,
1196 select_singlestep_lwp_callback, select_event_lwp_callback,
1197 unsuspend_one_lwp, linux_wait_1, send_sigstop_callback,
1198 suspend_and_send_sigstop_callback, wait_for_sigstop,
1199 stuck_in_jump_pad_callback, move_out_of_jump_pad_callback,
1200 lwp_running, linux_set_resume_request, resume_status_pending_p,
1201 need_step_over_p, start_step_over, linux_resume_one_thread,
1202 proceed_one_lwp, unsuspend_and_proceed_one_lwp,
1203 reset_lwp_ptrace_options_callback): Update.
1204 * linux-mips-low.c (update_watch_registers_callback): Update.
1205 * regcache.c (regcache_invalidate_one, regcache_invalidate):
1206 Update.
1207 (free_register_cache_thread_one): Remove.
1208 (regcache_release): Update.
1209 * server.c (handle_btrace_enable_bts, handle_btrace_enable_pt,
1210 handle_qxfer_threads_worker): Update.
1211 (handle_query): Update, use list iterator.
1212 (visit_actioned_threads, handle_pending_status,
1213 queue_stop_reply_callback, gdb_wants_all_threads_stopped,
1214 clear_pending_status_callback, set_pending_status_callback,
1215 find_status_pending_thread_callback, handle_status,
1216 process_serial_event): Update.
1217 * target.c (thread_search_callback): Update.
1218 * thread-db.c (thread_db_get_tls_address): Update.
1219 * tracepoint.c (tracepoint_finished_step, tracepoint_was_hit):
1220 Update.
1221 * win32-i386-low.c (update_debug_registers_callback): Update.
1222 * win32-low.c (delete_thread_info, child_delete_thread,
1223 continue_one_thread, suspend_one_thread,
1224 get_child_debug_event): Adjust.
1225
12262017-10-14 Simon Marchi <simon.marchi@polymtl.ca>
1227
1228 * gdbthread.h (ptid_of, pid_of, lwpid_of): New functions.
1229 * inferiors.h: Include <list>.
1230 (struct process_info) <entry>: Remove field.
1231 <pid>: New field.
1232 (pid_of): Change macro to function.
1233 (ptid_of, lwpid_of): Remove macro.
1234 (all_processes): Change type to std::list<process_info *>.
1235 (ALL_PROCESSES): Remove macro.
1236 (for_each_process, find_process): New function.
1237 * inferiors.c (all_processes): Change type to
1238 std::list<process_info *>.
1239 (find_thread_process): Adjust.
1240 (add_process): Likewise.
1241 (remove_process): Likewise.
1242 (find_process_pid): Likewise.
1243 (get_first_process): Likewise.
1244 (started_inferior_callback): Remove.
1245 (have_started_inferiors_p): Adjust.
1246 (attached_inferior_callback): Remove.
1247 (have_attached_inferiors_p): Adjust.
1248 * linux-low.c (check_zombie_leaders): Likewise.
1249 * linux-x86-low.c (x86_arch_setup_process_callback): Remove.
1250 (x86_linux_update_xmltarget): Adjust.
1251 * server.c (handle_query): Likewise.
1252 (gdb_reattached_process): Remove.
1253 (handle_status): Adjust.
1254 (kill_inferior_callback): Likewise.
1255 (detach_or_kill_inferior): Remove.
1256 (print_started_pid): Likewise.
1257 (print_attached_pid): Likewise.
1258 (detach_or_kill_for_exit): Update.
1259 (process_serial_event): Likewise.
1260 * linux-arm-low.c (arm_new_fork): Likewise.
1261
12622017-10-14 Simon Marchi <simon.marchi@polymtl.ca>
1263
1264 * dll.h: Include <list>.
1265 (struct dll_info): Add constructor.
1266 <entry>: Remove field.
1267 (all_dlls): Change type to std::list<dll_info>.
1268 * dll.c: Include <algorithm>.
1269 (get_dll): Remove macro.
1270 (all_dlls): Change type to std::list<dll_info *>.
1271 (free_one_dll): Remove.
1272 (match_dll): Likewise.
1273 (loaded_dll): Adjust.
1274 (unloaded_dll): Adjust to all_dlls type change, use
1275 std::find_if. Inline code from match_dll.
1276 (clear_dlls): Adjust to all_dlls type change.
1277 * server.c (emit_dll_description): Remove.
1278 (handle_qxfer_libraries): Adjust to all_dlls type change,
1279 integrate emit_dll_description's functionality.
1280
12812017-10-12 Simon Marchi <simon.marchi@ericsson.com>
1282
1283 * linux-low.h (struct linux_target_ops) <delete_process>: New
1284 field.
1285 * linux-low.c (linux_mourn): Call the_low_target.delete_process.
1286 * linux-aarch64-low.c (aarch64_linux_delete_process): New.
1287 (struct linux_target_ops): Add delete_process callback.
1288 * linux-arm-low.c (arm_delete_process): New.
1289 (struct linux_target_ops): Add delete_process callback.
1290 * linux-bfin-low.c (struct linux_target_ops): Likewise.
1291 * linux-crisv32-low.c (struct linux_target_ops): Likewise.
1292 * linux-m32r-low.c (struct linux_target_ops): Likewise.
1293 * linux-mips-low.c (mips_linux_delete_process): New.
1294 (struct linux_target_ops): Add delete_process callback.
1295 * linux-ppc-low.c (struct linux_target_ops): Likewise.
1296 * linux-s390-low.c (struct linux_target_ops): Likewise.
1297 * linux-sh-low.c (struct linux_target_ops): Likewise.
1298 * linux-tic6x-low.c (struct linux_target_ops): Likewise.
1299 * linux-tile-low.c (struct linux_target_ops): Likewise.
1300 * linux-x86-low.c (x86_linux_delete_process): New.
1301 (struct linux_target_ops): Add delete_process callback.
1302 * linux-xtensa-low.c (struct linux_target_ops): Likewise.
1303
13042017-10-12 Simon Marchi <simon.marchi@ericsson.com>
1305
1306 * linux-aarch64-low.c (the_low_target): Add thread delete
1307 callback.
1308 * linux-arm-low.c (arm_delete_thread): New function.
1309 (the_low_target): Add thread delete callback.
1310 * linux-bfin-low.c (the_low_target): Likewise.
1311 * linux-crisv32-low.c (the_low_target): Likewise.
1312 * linux-low.c (delete_lwp): Invoke delete_thread callback if
1313 set.
1314 * linux-low.h (struct linux_target_ops) <delete_thread>: New
1315 field.
1316 * linux-m32r-low.c (the_low_target): Add thread delete callback.
1317 * linux-mips-low.c (mips_linux_delete_thread): New function.
1318 (the_low_target): Add thread delete callback.
1319 * linux-ppc-low.c (the_low_target): Likewise.
1320 * linux-s390-low.c (the_low_target): Likewise.
1321 * linux-sh-low.c (the_low_target): Likewise.
1322 * linux-tic6x-low.c (the_low_target): Likewise.
1323 * linux-tile-low.c (the_low_target): Likewise.
1324 * linux-x86-low.c (the_low_target): Likewise.
1325 * linux-xtensa-low.c (the_low_target): Likewise.
1326
13272017-10-06 Yuanhui Zhang <asmwarrior@gmail.com>
1328
1329 * win32-low.c: Include "common-inferior.h".
1330
13312017-10-04 Sergio Durigan Junior <sergiodj@redhat.com>
1332
1333 * inferiors.c (set_inferior_cwd): New function.
1334 * server.c (handle_general_set): Handle QSetWorkingDir packet.
1335 (handle_query): Inform that QSetWorkingDir is supported.
1336 * win32-low.c (create_process): Pass the inferior's cwd to
1337 CreateProcess.
1338
13392017-10-04 Sergio Durigan Junior <sergiodj@redhat.com>
1340
1341 * inferiors.c (current_inferior_cwd): New global variable.
1342 (get_inferior_cwd): New function.
1343 * inferiors.h (struct process_info) <cwd>: New field.
1344
13452017-10-04 Sergio Durigan Junior <sergiodj@redhat.com>
1346
1347 * Makefile.in (SFILES): Add $(srcdir)/common/gdb_tilde_expand.c.
1348 (OBS): Add gdb_tilde_expand.o.
1349
13502017-10-02 Simon Marchi <simon.marchi@ericsson.com>
1351
1352 * lynx-i386-low.c (lynx_i386_arch_setup): Call init_target_desc.
1353 * nto-x86-low.c (nto_x86_arch_setup): Likewise.
1354
13552017-09-29 Pedro Alves <palves@redhat.com>
1356
1357 * ax.c (gdb_parse_agent_expr): Constify.
1358 * ax.h (gdb_parse_agent_expr): Constify.
1359 * mem-break.c (add_breakpoint_condition, add_breakpoint_commands):
1360 Constify.
1361 * mem-break.h (add_breakpoint_condition, add_breakpoint_commands): Constify.
1362 * remote-utils.c (hex_or_minus_one, read_ptid): Constify.
1363 * remote-utils.h (read_ptid): Constify.
1364 * server.c (handle_qxfer_exec_file, handle_query, handle_v_cont)
1365 (process_point_options, process_serial_event): Constify.
1366 * tracepoint.c (add_tracepoint_action, cmd_qtdp, cmd_qtdpsrc)
1367 (cmd_qtdv, cmd_qtenable_disable, cmd_qtro, cmd_qtframe, cmd_qtp)
1368 (cmd_qtbuffer): Constify.
1369
13702017-09-29 Pedro Alves <palves@redhat.com>
1371
1372 * proc-service.c (ps_pdread): Return PS_ERR if reading memory
1373 fails.
1374
13752017-09-29 Pedro Alves <palves@redhat.com>
1376
1377 * linux-low.c (handle_extended_wait): Pass parent thread instead
1378 of process to thread_db_notice_clone.
1379 * linux-low.h (thread_db_notice_clone): Replace parent process
1380 parameter with parent thread parameter.
1381 * thread-db.c (find_one_thread): Add comment.
1382 (thread_db_notice_clone): Replace parent process parameter with
1383 parent thread parameter. Temporarily switch to the parent thread.
1384
13852017-09-26 Sergio Durigan Junior <sergiodj@redhat.com>
1386
1387 * gdbthread.h: Include "common-gdbthread.h".
1388 * inferiors.c (switch_to_thread): Use "gdb_assert" instead of
1389 "if" when validating the ptid.
1390 * remote-utils.c: Include "gdbthread.h".
1391 (prepare_resume_reply): Use "switch_to_thread".
1392 * target.c (done_accessing_memory): Likewise.
1393
13942017-09-25 Andreas Arnez <arnez@linux.vnet.ibm.com>
1395
1396 * configure.srv (s390*-*-linux*): Add s390-gs-linux64.o and
1397 s390x-gs-linux64.o to srv_regobj. Add s390-gs-linux64.xml,
1398 s390x-gs-linux64.xml, s390-gs.xml, and s390-gsbc.xml to
1399 srv_xmlfiles. Add s390-gs-linux64-ipa.o and
1400 s390x-gs-linux64-ipa.o to ipa_obj.
1401 * linux-s390-low.c (HWCAP_S390_GS): New define.
1402 (s390_fill_gs, s390_store_gs, s390_fill_gsbc, s390_store_gsbc):
1403 New functions.
1404 (s390_regsets): Add regsets for NT_S390_GS_CB and NT_S390_GS_BC.
1405 (s390_arch_setup): Check for guarded-storage support and choose
1406 appropriate tdesc.
1407 (initialize_low_arch): Invoke init_registers_s390_gs_linux64 and
1408 init_registers_s390x_gs_linux64.
1409 * linux-s390-tdesc.h (enum s390_linux_tdesc) <S390_TDESC_GS>: New
1410 enum value.
1411 (init_registers_s390x_gs_linux64, tdesc_s390x_gs_linux64)
1412 (init_registers_s390_gs_linux64, tdesc_s390_gs_linux64): Declare.
1413
14142017-09-22 Simon Marchi <simon.marchi@ericsson.com>
1415
1416 * win32-i386-low.c (i386_arch_setup): Call init_target_desc.
1417
14182017-09-21 Kevin Buettner <kevinb@redhat.com>
1419
1420 * linux-low.h (struct lwp_info): Add new field, thread_handle.
1421 (thread_db_thread_handle): Declare.
1422 * linux-low.c (linux_target_ops): Initialize thread_handle.
1423 * server.c (handle_qxfer_threads_worker): Add support for
1424 "handle" attribute.
1425 * target.h (struct target_ops): Add new function pointer,
1426 thread_handle.
1427 (target_thread_handle): Define.
1428 * thread-db.c (find_one_thread, attach_thread): Set thread_handle
1429 field in lwp.
1430 (thread_db_thread_handle): New function.
1431
14322017-09-21 Kevin Buettner <kevinb@redhat.com>
1433
1434 * linux-low.c (handle_extended_wait): Call thread_db_notice_clone().
1435 * linux-low.h (thread_db_notice_clone): Declare.
1436 * thread-db.c (thread_db_notice_clone): New function.
1437
14382017-09-21 Pedro Alves <palves@redhat.com>
1439
1440 * server.c (gdb_read_memory, handle_status, process_serial_event)
1441 (handle_serial_event, handle_target_event): Adjust to
1442 set_desired_thread prototype change.
1443 * target.c (set_desired_thread): Remove 'use_general' parameter
1444 and adjust.
1445 * target.h (set_desired_thread): Remove 'use_general' parameter.
1446
14472017-09-20 Tom Tromey <tom@tromey.com>
1448
1449 * target.c (target_terminal::terminal_state): Define.
1450 (target_terminal::init): Rename from target_terminal_init.
1451 (target_terminal::inferior): Rename from
1452 target_terminal_inferior.
1453 (target_terminal::ours): Rename from target_terminal_ours.
1454 (target_terminal::ours_for_output, target_terminal::info): New.
1455
14562017-09-16 Simon Marchi <simon.marchi@ericsson.com>
1457
1458 * server.c (accumulate_file_name_length): Remove.
1459 (emit_dll_description): Adjust to std::string change.
1460 (handle_qxfer_libraries): Use std::string to hold document.
1461
14622017-09-16 Simon Marchi <simon.marchi@ericsson.com>
1463
1464 * linux-low.c (linux_qxfer_libraries_svr4): Adjust to change of
1465 return type of xml_escape_text.
1466 * server.c (emit_dll_description): Likewise.
1467
14682017-09-16 Simon Marchi <simon.marchi@ericsson.com>
1469
1470 * server.c (captured_main): Accept argument for --selftest.
1471 Update run_tests call.
1472 * linux-x86-tdesc-selftest.c (initialize_low_tdesc): Add names
1473 when registering selftests.
1474
14752017-09-16 Sergio Durigan Junior <sergiodj@redhat.com>
1476
1477 * regcache.c (get_thread_regcache): Update code to use "std::vector"
1478 instead of "VEC" for "target_desc.reg_defs".
1479 (regcache_cpy): Likewise.
1480 (registers_to_string): Likewise.
1481 (registers_from_string): Likewise.
1482 (find_regno): Likewise.
1483 (supply_regblock): Likewise.
1484 (regcache_raw_read_unsigned): Likewise.
1485 * tdesc.c (init_target_desc): Likewise.
1486 (tdesc_create_reg): Likewise.
1487 * tdesc.h: Remove declaration of "tdesc_reg_p". Include <vector>.
1488 (struct target_desc) <reg_defs>: Convert to "std::vector".
1489 (target_desc): Do not initialize "reg_defs".
1490 (~target_desc): Update code to use "std::vector" instead of "VEC"
1491 for "target_desc.reg_defs".
1492 (operator==): Likewise.
1493
14942017-09-15 Simon Marchi <simon.marchi@ericsson.com>
1495
1496 * inferiors.h (thread_to_gdb_id): Remove.
1497 * inferiors.c (thread_to_gdb_id): Remove.
1498 * server.c (handle_qxfer_threads_worker, handle_query): Adjust.
1499 * lynx-low.c (lynx_resume, lynx_wait_1, lynx_fetch_registers,
1500 lynx_store_registers, lynx_read_memory, lynx_write_memory):
1501 Likewise.
1502 * nto-low.c (nto_fetch_registers, nto_store_registers,
1503 nto_stopped_by_watchpoint, nto_stopped_data_address): Likewise.
1504
15052017-09-15 Simon Marchi <simon.marchi@ericsson.com>
1506
1507 * inferiors.h (gdb_id_to_thread_id): Remove.
1508 * inferiors.c (gdb_id_to_thread_id): Remove.
1509 * server.c (process_serial_event): Adjust to gdb_id_to_thread_id
1510 removal. Move pid declaration closer to where it's used.
1511
15122017-09-15 Simon Marchi <simon.marchi@ericsson.com>
1513
1514 * server.c (handle_detach): New function.
1515 (process_serial_event): Move code out, call handle_detach.
1516
15172017-09-15 Simon Marchi <simon.marchi@ericsson.com>
1518
1519 * server.c (require_running): Rename to ...
1520 (require_running_or_return): ... this ...
1521 (require_running_or_break): ... and this.
1522 (handle_query, process_serial_event): Adjust.
1523
15242017-09-15 Simon Marchi <simon.marchi@ericsson.com>
1525
1526 * linux-low.c (linux_set_resume_request): Remove unused
1527 variables.
1528
15292017-09-15 Simon Marchi <simon.marchi@ericsson.com>
1530
1531 * server.c (first_thread_of): Remove.
1532 (process_serial_event): Replace usage of first_thread_of with
1533 find_any_thread_of_pid.
1534 * tracepoint.c (same_process_p): Remove.
1535 (gdb_agent_about_to_close): Replace usage of same_process_p with
1536 find_any_thread_of_pid.
1537 * linux-x86-low.c (same_process_callback): Remove.
1538 (x86_arch_setup_process_callback): Replace usage of
1539 same_process_callback with find_any_thread_of_pid.
1540 * thread-db.c (any_thread_of): Remove.
1541 (switch_to_process): Replace usage of any_thread_of with
1542 find_any_thread_of_pid.
1543 * inferiors.c (thread_pid_matches_callback): Remove.
1544 (find_thread_process): Adjust to use find_any_thread_of_pid.
1545
15462017-09-10 Sergio Durigan Junior <sergiodj@redhat.com>
1547
1548 * regcache.c (get_thread_regcache): Guard calls to "memset"
1549 with "!VEC_empty".
1550
15512017-09-10 Sergio Durigan Junior <sergiodj@redhat.com>
1552
1553 * linux-low.c (handle_extended_wait): Use
1554 "allocate_target_description" instead of "XNEW".
1555 * linux-x86-low.c (initialize_low_arch): Likewise.
1556
15572017-09-05 Yao Qi <yao.qi@linaro.org>
1558
1559 * configure.srv (srv_i386_regobj): Remove.
1560 (srv_amd64_regobj): Remove.
1561 (srv_regobj): Set it to "" for x86 non-linux targets.
1562 * linux-x86-tdesc.c (i386_linux_read_description):
1563 * lynx-i386-low.c: Include x86-xstate.h and arch/i386.h.
1564 (init_registers_i386): Remove the declaration.
1565 (tdesc_i386): Remove the declaration.
1566 (lynx_i386_arch_setup): Call i386_create_target_description.
1567 * nto-x86-low.c: Likewise.
1568 * win32-i386-low.c [__x86_64__]: include arch/amd64.h.
1569 [!__x86_64__]: include arch/i386.h.
1570 (i386_arch_setup) [__x86_64__]: Call amd64_create_target_description.
1571
15722017-09-05 Yao Qi <yao.qi@linaro.org>
1573
1574 * configure.srv (srv_amd64_linux_xmlfiles): Remove
1575 i386/amd64-XXX-linux from it.
1576
15772017-09-05 Yao Qi <yao.qi@linaro.org>
1578
1579 * configure.srv: Empty srv_amd64_linux_regobj if $development is
1580 false.
1581 (ipa_amd64_linux_regobj): Remove.
1582 (ipa_x32_linux_regobj): Remove.
1583
15842017-09-05 Yao Qi <yao.qi@linaro.org>
1585
1586 * Makefile.in (arch-amd64.o): New rule.
1587 * configure.srv: Append arch-amd64.o.
1588 * linux-amd64-ipa.c: Include common/x86-xstate.h.
1589 (get_ipa_tdesc): Call amd64_linux_read_description.
1590 (initialize_low_tracepoint): Don't call init_registers_x32_XXX
1591 and init_registers_amd64_XXX.
1592 * linux-x86-low.c (x86_linux_read_description): Call
1593 amd64_linux_read_description.
1594 (x86_get_ipa_tdesc_idx): Call amd64_get_ipa_tdesc_idx.
1595 (initialize_low_arch): Don't call init_registers_x32_XXX and
1596 init_registers_amd64_XXX.
1597 * linux-x86-tdesc-selftest.c: Declare init_registers_amd64_XXX
1598 and tdesc_amd64_XXX.
1599 [__x86_64__] (amd64_tdesc_test): New function.
1600 (initialize_low_tdesc) [__x86_64__]: Call init_registers_x32_XXX
1601 and init_registers_amd64_XXX.
1602 * linux-x86-tdesc.c: Include arch/amd64.h.
1603 (xcr0_to_tdesc_idx): New function.
1604 (i386_linux_read_description): New function.
1605 (amd64_get_ipa_tdesc_idx): New function.
1606 * linux-x86-tdesc.h (amd64_get_ipa_tdesc_idx): Declare.
1607 (amd64_get_ipa_tdesc): Declare.
1608
16092017-09-05 Yao Qi <yao.qi@linaro.org>
1610
1611 * configure.srv (srv_i386_linux_xmlfiles): Remove
1612 i386/i386-XXX-linux.xml from it.
1613
16142017-09-05 Yao Qi <yao.qi@linaro.org>
1615
1616 * configure.srv: Set srv_i386_linux_regobj empty if $development
1617 is false.
1618 * linux-i386-ipa.c (initialize_low_tracepoint): Don't call
1619 initialize_low_tdesc.
1620 * linux-x86-low.c (initialize_low_arch): Wrap initialize_low_tdesc
1621 with #if initialize_low_tdesc.
1622 * linux-x86-tdesc-selftest.c: New file.
1623 * linux-x86-tdesc.c: Move code to linux-x86-tdesc-selftest.c.
1624
16252017-09-05 Yao Qi <yao.qi@linaro.org>
1626
1627 * Makefile.in (arch-i386.o): New rule.
1628 * configure.srv (i[34567]86-*-linux*): Add arch-i386.o.
1629 (x86_64-*-linux*): Likewise.
1630 * linux-x86-tdesc.c: Don't include ../features/i386/32bit-XXX.c,
1631 include arch/i386.h.
1632 (i386_linux_read_description): Remove code and call
1633 i386_create_target_description.
1634 * tdesc.c (allocate_target_description): New function.
1635 * tdesc.h (set_tdesc_architecture): Remove declaration.
1636 (set_tdesc_osabi): Likewise.
1637
16382017-09-05 Yao Qi <yao.qi@linaro.org>
1639
1640 * linux-x86-tdesc.c: Don't include <inttypes.h>.
1641 (i386_linux_read_description) [!IN_PROCESS_AGENT]: Call
1642 set_tdesc_architecture and set_tdesc_osabi. Remove code setting
1643 .xmltarget.
1644 * server.c (get_features_xml): Call tdesc_get_features_xml.
1645 * tdesc.c (set_tdesc_architecture): New function.
1646 (set_tdesc_osabi): New function.
1647 (tdesc_get_features_xml): New function.
1648 (tdesc_create_feature): Add an argument.
1649 * tdesc.h (struct target_desc) <features>: New field.
1650 <arch, osabi>: New field.
1651 (~target_desc): xfree features, arch, and osabi.
1652 (target_desc::oerator==): Don't compare .xmltarget.
1653 [!IN_PROCESS_AGENT] (set_tdesc_architecture): Declare.
1654 (set_tdesc_osabi): Likewise.
1655 (tdesc_get_features_xml): Likewise.
1656
16572017-09-05 Yao Qi <yao.qi@linaro.org>
1658
1659 * linux-x86-tdesc.c: Include selftest.h.
1660 (i386_tdesc_test): New function.
1661 (initialize_low_tdesc): Call selftests::register_test.
1662 * tdesc.h: Include regdef.h.
1663 (target_desc): Override operator == and !=.
1664
16652017-09-05 Yao Qi <yao.qi@linaro.org>
1666
1667 * configure.srv (srv_tgtobj): Append linux-x86-tdesc.o.
1668 (ipa_obj): Likewise.
1669 * linux-i386-ipa.c: Include common/x86-xstate.h
1670 (get_ipa_tdesc): Call i386_linux_read_description.
1671 (initialize_low_tracepoint): Don't call init_registers_XXX
1672 functions, call initialize_low_tdesc instead.
1673 * linux-x86-low.c (x86_linux_read_description): Call
1674 i386_linux_read_description.
1675 (initialize_low_arch): Don't call init_registers_i386_XXX
1676 functions, call initialize_low_tdesc.
1677 * linux-x86-tdesc.c: New file.
1678 * linux-x86-tdesc.h (x86_linux_tdesc): New X86_TDESC_LAST.
1679 (i386_get_ipa_tdesc_idx): Declare.
1680 (i386_get_ipa_tdesc): Declare.
1681 (initialize_low_tdesc): Declare.
1682
16832017-09-05 Yao Qi <yao.qi@linaro.org>
1684
1685 * linux-x86-low.c (x86_get_ipa_tdesc_idx): Use X86_TDESC_MMX
1686 instead of 0.
1687
16882017-09-05 Yao Qi <yao.qi@linaro.org>
1689
1690 * Makefile.in (IPA_OBJS): Add vec-ipa.o
1691 * regcache.c (get_thread_regcache): Use VEC_length.
1692 (init_register_cache): Likewise.
1693 (regcache_cpy): Likewise.
1694 (registers_to_string): Iterate reg_defs via VEC_iterate.
1695 (find_regno): Likewise.
1696 (find_register_by_number): Use VEC_index.
1697 (register_size): Call find_register_by_number.
1698 (register_data): Call find_register_by_number.
1699 (supply_regblock): Use VEC_length.
1700 (regcache_raw_read_unsigned): Likewise.
1701 * tdesc.c (init_target_desc): Iterate reg_defs via
1702 VEC_iterate.
1703 (default_description): Update initializer.
1704 (copy_target_description): Don't update field num_registers.
1705 * tdesc.h (struct target_desc) <reg_defs>: Change it to VEC.
1706 <num_registers>: Remove.
1707
17082017-09-04 Simon Marchi <simon.marchi@ericsson.com>
1709
1710 * Makefile.in (.SECONDARY): Define target.
1711
17122017-09-03 Simon Marchi <simon.marchi@ericsson.com>
1713
1714 * linux-low.c (linux_wait_1): Adjust.
1715 * server.c (queue_stop_reply_callback): Adjust.
1716
17172017-08-31 Sergio Durigan Junior <sergiodj@redhat.com>
1718
1719 * server.c (handle_general_set): Handle QEnvironmentHexEncoded,
1720 QEnvironmentUnset and QEnvironmentReset packets.
1721 (handle_query): Inform remote that QEnvironmentHexEncoded,
1722 QEnvironmentUnset and QEnvironmentReset are supported.
1723
17242017-08-25 Simon Marchi <simon.marchi@ericsson.com>
1725
1726 * inferiors.h (inferior_target_data): Rename to ...
1727 (thread_target_data): ... this.
1728 (inferior_regcache_data): Rename to ...
1729 (thread_regcache_data): ... this.
1730 (set_inferior_regcache_data): Rename to ...
1731 (set_thread_regcache_data): ... this.
1732 * inferiors.c (inferior_target_data): Rename to ...
1733 (thread_target_data): ... this.
1734 (inferior_regcache_data): Rename to ...
1735 (thread_regcache_data): ... this.
1736 (set_inferior_regcache_data): Rename to ...
1737 (set_thread_regcache_data): ... this.
1738 (free_one_thread): Update.
1739 * linux-low.h (get_thread_lwp): Update.
1740 * regcache.c (get_thread_regcache): Update.
1741 (regcache_invalidate_thread): Update.
1742 (free_register_cache_thread): Update.
1743 * win32-i386-low.c (update_debug_registers_callback): Update.
1744 (win32_get_current_dr): Update.
1745 * win32-low.c (thread_rec): Update.
1746 (delete_thread_info): Update.
1747 (continue_one_thread): Update.
1748 (suspend_one_thread): Update.
1749
17502017-08-24 Simon Marchi <simon.marchi@ericsson.com>
1751
1752 * inferiors.c (set_inferior_target_data): Remove.
1753 * inferiors.h (set_inferior_target_data): Remove.
1754
17552017-08-18 Yao Qi <yao.qi@linaro.org>
1756
1757 * Makefile.in (OBS): Add selftest.o.
1758 * configure.ac: AC_DEFINE GDB_SELF_TEST if $development.
1759 * configure, config.in: Re-generated.
1760 * server.c: Include common/sefltest.h.
1761 (captured_main): Handle option --selftest.
1762
17632017-08-09 Yao Qi <yao.qi@linaro.org>
1764
1765 * configure.srv (srv_i386_regobj): Remove i386-avx.o,
1766 i386-avx-avx512.o, i386-avx-mpx-avx512-pku.o, i386-mpx.o,
1767 i386-avx-mpx.o and i386-mmx.o.
1768 (srv_amd64_regobj): Remove amd64-avx.o, amd64-avx-avx512.o,
1769 amd64-avx-mpx-avx512-pku.o, amd64-mpx.o and amd64-avx-mpx.o.
1770 (srv_i386_xmlfiles): Remove i386/i386-avx.xml,
1771 i386/i386-avx-avx512.xml, i386/i386-avx-mpx-avx512-pku.xml,
1772 i386/i386-mpx.xml, i386/i386-avx-mpx.xml and i386/i386-mmx.xml.
1773 (srv_amd64_xmlfile):i386/amd64-avx.xml, i386/amd64-avx-avx512.xml,
1774 i386/amd64-avx-mpx-avx512-pku.xml, i386/amd64-mpx.xml,
1775 i386/amd64-avx-mpx.xml.
1776
17772017-08-09 Yao Qi <yao.qi@linaro.org>
1778
1779 * configure.srv (srv_amd64_regobj): Remove x32.o, x32-avx.o
1780 and x32-avx-avx512.o.
1781 (srv_amd64_xmlfiles): Remove i386/x32.xml, i386/x32-avx.xml
1782 i386/x32-avx-avx512.xml.
1783
17842017-07-26 Simon Marchi <simon.marchi@ericsson.com>
1785
1786 * tracepoint.h (enum class fast_tpoint_collect_result): New
1787 enumeration.
1788 (fast_tracepoint_collecting): Change return type to
1789 fast_tpoint_collect_result.
1790 * tracepoint.c (fast_tracepoint_collecting): Likewise.
1791 * linux-low.h: Include tracepoint.h.
1792 (struct lwp_info) <collecting_fast_tracepoint>: Change type to
1793 fast_tpoint_collect_result.
1794 * linux-low.c (handle_tracepoints): Adjust.
1795 (linux_fast_tracepoint_collecting): Change return type to
1796 fast_tpoint_collect_result.
1797 (maybe_move_out_of_jump_pad, linux_wait_for_event_filtered,
1798 linux_wait_1, stuck_in_jump_pad_callback,
1799 lwp_signal_can_be_delivered, linux_resume_one_lwp_throw,
1800 proceed_one_lwp): Adjust to type change.
1801
18022017-07-10 Yao Qi <yao.qi@linaro.org>
1803
1804 * linux-x86-low.c (x86_linux_read_description): Re-indent the code.
1805
18062017-06-29 Yao Qi <yao.qi@linaro.org>
1807
1808 * tdesc.h (struct target_desc) [IN_PROCESS_AGENT] <expedite_regs>:
1809 Remove.
1810 [IN_PROCESS_AGENT] <xmltarget>: Likewise.
1811
18122017-06-20 Simon Marchi <simon.marchi@ericsson.com>
1813
1814 * Makefile.in (IPA_OBJS): Sort and format one item per line.
1815
18162017-06-20 Sergio Durigan Junior <sergiodj@redhat.com>
1817
1818 * linux-low.c (linux_create_inferior): Adjust code to access the
1819 environment information via 'gdb_environ' class.
1820 * lynx-low.c (lynx_create_inferior): Likewise.
1821 * server.c (our_environ): Make it an instance of 'gdb_environ'.
1822 (get_environ): Return a pointer to 'our_environ'.
1823 (captured_main): Initialize 'our_environ'.
1824 * server.h (get_environ): Adjust prototype.
1825 * spu-low.c (spu_create_inferior): Adjust code to access the
1826 environment information via 'gdb_environ' class.
1827
18282017-06-17 Simon Marchi <simon.marchi@ericsson.com>
1829
1830 * linux-low.c (linux_read_memory, linux_write_memory): Remove
1831 usage of "register" keyword.
1832
18332017-06-17 Simon Marchi <simon.marchi@ericsson.com>
1834
1835 * configure: Re-generate.
1836
18372017-06-17 Simon Marchi <simon.marchi@ericsson.com>
1838
1839 * configure: Re-generate.
1840
18412017-06-17 Simon Marchi <simon.marchi@ericsson.com>
1842
1843 * Makefile.in (COMPILE.pre): Add "-x c++".
1844
18452017-06-09 Sergio Durigan Junior <sergiodj@redhat.com>
1846
1847 * fork-child.c: Conditionally include <signal.h>.
1848
18492017-06-07 Sergio Durigan Junior <sergiodj@redhat.com>
1850
1851 * server.c (handle_general_set): Handle new packet
1852 "QStartupWithShell".
1853 (handle_query): Add "QStartupWithShell" to the list of supported
1854 packets.
1855 (gdbserver_usage): Add help text explaining the
1856 new "--startup-with-shell" and "--no-startup-with-shell" CLI
1857 options.
1858 (captured_main): Recognize and act upon the presence of the new
1859 CLI options.
1860
18612017-06-07 Sergio Durigan Junior <sergiodj@redhat.com>
1862 Pedro Alves <palves@redhat.com>
1863
1864 * Makefile.in (SFILES): Add "nat/fork-inferior.o".
1865 * configure: Regenerate.
1866 * configure.srv (srv_linux_obj): Add "fork-child.o" and
1867 "fork-inferior.o".
1868 (i[34567]86-*-lynxos*): Likewise.
1869 (spu*-*-*): Likewise.
1870 * fork-child.c: New file.
1871 * linux-low.c: Include "common-inferior.h", "nat/fork-inferior.h"
1872 and "environ.h".
1873 (linux_ptrace_fun): New function.
1874 (linux_create_inferior): Adjust function prototype to reflect
1875 change on "target.h". Adjust function code to use
1876 "fork_inferior".
1877 (linux_request_interrupt): Delete "signal_pid".
1878 * lynx-low.c: Include "common-inferior.h" and "nat/fork-inferior.h".
1879 (lynx_ptrace_fun): New function.
1880 (lynx_create_inferior): Adjust function prototype to reflect
1881 change on "target.h". Adjust function code to use
1882 "fork_inferior".
1883 * nto-low.c (nto_create_inferior): Adjust function prototype and
1884 code to reflect change on "target.h". Update comments.
1885 * server.c: Include "common-inferior.h", "nat/fork-inferior.h",
1886 "common-terminal.h" and "environ.h".
1887 (terminal_fd): Moved to fork-child.c.
1888 (old_foreground_pgrp): Likewise.
1889 (restore_old_foreground_pgrp): Likewise.
1890 (last_status): Make it global.
1891 (last_ptid): Likewise.
1892 (our_environ): New variable.
1893 (startup_with_shell): Likewise.
1894 (program_name): Likewise.
1895 (program_argv): Rename to...
1896 (program_args): ...this.
1897 (wrapper_argv): New variable.
1898 (start_inferior): Delete function.
1899 (get_exec_wrapper): New function.
1900 (get_exec_file): Likewise.
1901 (get_environ): Likewise.
1902 (prefork_hook): Likewise.
1903 (post_fork_inferior): Likewise.
1904 (postfork_hook): Likewise.
1905 (postfork_child_hook): Likewise.
1906 (handle_v_run): Update code to deal with arguments coming from the
1907 remote host. Update calls from "start_inferior" to
1908 "create_inferior".
1909 (captured_main): Likewise. Initialize environment variable. Call
1910 "have_job_control".
1911 * server.h (post_fork_inferior): New prototype.
1912 (get_environ): Likewise.
1913 (last_status): Declare.
1914 (last_ptid): Likewise.
1915 (signal_pid): Likewise.
1916 * spu-low.c: Include "common-inferior.h" and "nat/fork-inferior.h".
1917 (spu_ptrace_fun): New function.
1918 (spu_create_inferior): Adjust function prototype to reflect change
1919 on "target.h". Adjust function code to use "fork_inferior".
1920 * target.c (target_terminal_init): New function.
1921 (target_terminal_inferior): Likewise.
1922 (target_terminal_ours): Likewise.
1923 * target.h: Include <vector>.
1924 (struct target_ops) <create_inferior>: Update prototype.
1925 (create_inferior): Update macro.
1926 * utils.c (gdb_flush_out_err): New function.
1927 * win32-low.c (win32_create_inferior): Adjust function prototype
1928 and code to reflect change on "target.h".
1929
19302017-06-07 Sergio Durigan Junior <sergiodj@redhat.com>
1931
1932 * inferiors.c (switch_to_thread): New function.
1933
19342017-06-07 Sergio Durigan Junior <sergiodj@redhat.com>
1935
1936 * Makefile.in (SFILE): Add "common/job-control.c".
1937 (OBS): Add "job-control.o".
1938
19392017-05-06 Sergio Durigan Junior <sergiodj@redhat.com>
1940
1941 * Makefile: Remove "@host_makefile_frag@".
1942
19432017-05-05 Pedro Alves <palves@redhat.com>
1944
1945 * configure: Regenerate.
1946
19472017-05-03 Sergio Durigan Junior <sergiodj@redhat.com>
1948
1949 * configure: Regenerate.
1950
19512017-05-02 Simon Marchi <simon.marchi@polymtl.ca>
1952
1953 * linux-arm-low.c (arm_gdbserver_get_next_pcs): Adjust to
1954 software_single_step change of return type to
1955 std::vector<CORE_ADDR>.
1956 * linux-low.c (install_software_single_step_breakpoints):
1957 Likewise.
1958 * linux-low.h (install_software_single_step_breakpoints):
1959 Likewise.
1960
19612017-04-12 Sergio Durigan Junior <sergiodj@redhat.com>
1962
1963 * remote-utils.c: Include "gdb_termios.h" instead of
1964 "terminal.h".
1965 * terminal.h: Delete file.
1966
19672017-04-12 Sergio Durigan Junior <sergiodj@redhat.com>
1968
1969 * server.c: Include <vector>.
1970 <program_argv, wrapper_argv>: Convert to std::vector.
1971 (start_inferior): Rewrite function to use C++.
1972 (handle_v_run): Likewise. Update code that calculates the argv
1973 based on the vRun packet; use C++.
1974 (captured_main): Likewise.
1975
19762017-04-06 Simon Marchi <simon.marchi@ericsson.com>
1977
1978 * server.c (handle_v_cont): Initialize thread_resume::thread
1979 with null_ptid.
1980
19812017-04-05 Pedro Alves <palves@redhat.com>
1982
1983 * configure: Regenerate.
1984
19852017-04-05 Pedro Alves <palves@redhat.com>
1986
1987 * gdbreplay.c (sync_error): Constify.
1988 * linux-x86-low.c (push_opcode): Constify.
1989
19902017-04-05 Pedro Alves <palves@redhat.com>
1991
1992 * win32-low.c (get_child_debug_event)
1993 <CREATE_PROCESS_DEBUG_EVENT>: Don't report TARGET_WAITKIND_EXECD.
1994 Report TARGET_WAITKIND_SPURIOUS instead.
1995
19962017-04-05 Pedro Alves <palves@redhat.com>
1997
1998 * remote-utils.c (remote_prepare, remote_open): Constify.
1999 * remote-utils.h (remote_prepare, remote_open): Constify.
2000 * server.c (captured_main): Constify 'port' handling.
2001
20022017-04-04 Simon Marchi <simon.marchi@ericsson.com>
2003
2004 * Makefile.in (clean): Clear .deps.
2005
20062017-03-31 Simon Marchi <simon.marchi@polymtl.ca>
2007
2008 * .gitignore: Remove generated files, replace with wildcard.
2009 * (clean): Replace removal of generated files with wildcard.
2010 (version.c): Replace with...
2011 (version-generated.c): ...this.
2012 (xml-builtin.c): Replace with...
2013 (xml-builtin-generated.c): ...this.
2014 (%-ipa.o: %-generated.c, %.o: %-generated.c): New rules.
2015 (%.c: *regformats*): Replace with...
2016 (%-generated.c: *regformats*): ...this.
2017
20182017-03-27 Max Filippov <jcmvbkbc@gmail.com>
2019
2020 * linux-xtensa-low.c (regnum::R_THREADPTR): New enum member.
2021 (xtensa_fill_gregset): Call collect_register_by_name for
2022 threadptr register.
2023 (xtensa_store_gregset): Call supply_register_by_name for
2024 threadptr register.
2025
20262017-03-27 Max Filippov <jcmvbkbc@gmail.com>
2027
2028 * linux-xtensa-low.c (xtensa_fill_gregset): Call collect_register
2029 for all registers in a0_regnum..a0_regnum + C0_NREGS range.
2030 (xtensa_store_gregset): Call supply_register for all registers in
2031 a0_regnum..a0_regnum + C0_NREGS range.
2032
20332017-03-13 Simon Marchi <simon.marchi@polymtl.ca>
2034
2035 * Makefile.in (%-ipa.o: %-ipa.c): New rule.
2036 (ax-ipa.o: ax.c): Remove.
2037 (linux-i386-ipa.o: linux-i386-ipa.c): Remove.
2038 (linux-amd64-ipa.o: linux-amd64-ipa.c): Remove.
2039 (linux-aarch64-ipa.o: linux-aarch64-ipa.c): Remove.
2040 (linux-s390-ipa.o: linux-s390-ipa.c): Remove.
2041 (linux-ppc-ipa.o: linux-ppc-ipa.c): Remove.
2042
20432017-03-13 Simon Marchi <simon.marchi@polymtl.ca>
2044
2045 * Makefile.in (%-ipa.o: ../common/%.c): New rule.
2046 (print-utils-ipa.o: ../common/print-utils.c): Remove.
2047 (rsp-low-ipa.o: ../common/rsp-low.c): Remove.
2048 (errors-ipa.o: ../common/errors.c): Remove.
2049 (format-ipa.o: ../common/format.c): Remove.
2050 (common-utils-ipa.o: ../common/common-utils.c): Remove.
2051
20522017-03-13 Simon Marchi <simon.marchi@polymtl.ca>
2053
2054 * Makefile.in (%-ipa.o: %.c): New rule.
2055 (tracepoint-ipa.o: tracepoint.c): Remove.
2056 (utils-ipa.o: utils.c): Remove.
2057 (remote-utils-ipa.o: remote-utils.c): Remove.
2058 (regcache-ipa.o: regcache.c): Remove.
2059 (i386-linux-ipa.o: i386-linux.c): Remove.
2060 (i386-mmx-linux-ipa.o: i386-mmx-linux.c): Remove.
2061 (i386-avx-linux-ipa.o: i386-avx-linux.c): Remove.
2062 (i386-mpx-linux-ipa.o: i386-mpx-linux.c): Remove.
2063 (i386-avx-mpx-linux-ipa.o: i386-avx-mpx-linux.c): Remove.
2064 (i386-avx-avx512-linux-ipa.o: i386-avx-avx512-linux.c): Remove.
2065 (i386-avx-mpx-avx512-pku-linux-ipa.o: i386-avx-mpx-avx512-pku-linux.c): Remove.
2066 (amd64-linux-ipa.o: amd64-linux.c): Remove.
2067 (amd64-avx-linux-ipa.o: amd64-avx-linux.c): Remove.
2068 (amd64-mpx-linux-ipa.o: amd64-mpx-linux.c): Remove.
2069 (amd64-avx-mpx-linux-ipa.o: amd64-avx-mpx-linux.c): Remove.
2070 (amd64-avx-avx512-linux-ipa.o: amd64-avx-avx512-linux.c): Remove.
2071 (amd64-avx-mpx-avx512-pku-linux-ipa.o: amd64-avx-mpx-avx512-pku-linux.c): Remove.
2072 (aarch64-ipa.o: aarch64.c): Remove.
2073 (s390-linux32-ipa.o: s390-linux32.c): Remove.
2074 (s390-linux32v1-ipa.o: s390-linux32v1.c): Remove.
2075 (s390-linux32v2-ipa.o: s390-linux32v2.c): Remove.
2076 (s390-linux64-ipa.o: s390-linux64.c): Remove.
2077 (s390-linux64v1-ipa.o: s390-linux64v1.c): Remove.
2078 (s390-linux64v2-ipa.o: s390-linux64v2.c): Remove.
2079 (s390-te-linux64-ipa.o: s390-te-linux64.c): Remove.
2080 (s390-vx-linux64-ipa.o: s390-vx-linux64.c): Remove.
2081 (s390-tevx-linux64-ipa.o: s390-tevx-linux64.c): Remove.
2082 (s390x-linux64-ipa.o: s390x-linux64.c): Remove.
2083 (s390x-linux64v1-ipa.o: s390x-linux64v1.c): Remove.
2084 (s390x-linux64v2-ipa.o: s390x-linux64v2.c): Remove.
2085 (s390x-te-linux64-ipa.o: s390x-te-linux64.c): Remove.
2086 (s390x-vx-linux64-ipa.o: s390x-vx-linux64.c): Remove.
2087 (s390x-tevx-linux64-ipa.o: s390x-tevx-linux64.c): Remove.
2088 (powerpc-32l-ipa.o: powerpc-32l.c): Remove.
2089 (powerpc-altivec32l-ipa.o: powerpc-altivec32l.c): Remove.
2090 (powerpc-cell32l-ipa.o: powerpc-cell32l.c): Remove.
2091 (powerpc-vsx32l-ipa.o: powerpc-vsx32l.c): Remove.
2092 (powerpc-isa205-32l-ipa.o: powerpc-isa205-32l.c): Remove.
2093 (powerpc-isa205-altivec32l-ipa.o: powerpc-isa205-altivec32l.c): Remove.
2094 (powerpc-isa205-vsx32l-ipa.o: powerpc-isa205-vsx32l.c): Remove.
2095 (powerpc-e500l-ipa.o: powerpc-e500l.c): Remove.
2096 (powerpc-64l-ipa.o: powerpc-64l.c): Remove.
2097 (powerpc-altivec64l-ipa.o: powerpc-altivec64l.c): Remove.
2098 (powerpc-cell64l-ipa.o: powerpc-cell64l.c): Remove.
2099 (powerpc-vsx64l-ipa.o: powerpc-vsx64l.c): Remove.
2100 (powerpc-isa205-64l-ipa.o: powerpc-isa205-64l.c): Remove.
2101 (powerpc-isa205-altivec64l-ipa.o: powerpc-isa205-altivec64l.c): Remove.
2102 (powerpc-isa205-vsx64l-ipa.o: powerpc-isa205-vsx64l.c): Remove.
2103 (tdesc-ipa.o: tdesc.c): Remove.
2104 (x32-linux-ipa.o: x32-linux.c): Remove.
2105 (x32-avx-linux-ipa.o: x32-avx-linux.c): Remove.
2106 (x32-avx512-linux-ipa.o: x32-avx512-linux.c): Remove.
2107
21082017-03-13 Simon Marchi <simon.marchi@polymtl.ca>
2109
2110 * Makefile.in (%.o: ../arch/%.c): New rule.
2111 (arm.o: ../arch/arm.c): Remove.
2112 (arm-linux.o: ../arch/arm-linux.c): Remove.
2113 (arm-get-next-pcs.o: ../arch/arm-get-next-pcs.c): Remove.
2114 (aarch64-insn.o: ../arch/aarch64-insn.c): Remove.
2115
21162017-03-13 Simon Marchi <simon.marchi@polymtl.ca>
2117
2118 * Makefile.in (%.o: ../nat/%.c): New rule.
2119 (x86-dregs.o: ../nat/x86-dregs.c): Remove.
2120 (amd64-linux-siginfo.o: ../nat/amd64-linux-siginfo.c): Remove.
2121 (linux-btrace.o: ../nat/linux-btrace.c): Remove.
2122 (linux-osdata.o: ../nat/linux-osdata.c): Remove.
2123 (linux-procfs.o: ../nat/linux-procfs.c): Remove.
2124 (linux-ptrace.o: ../nat/linux-ptrace.c): Remove.
2125 (linux-waitpid.o: ../nat/linux-waitpid.c): Remove.
2126 (mips-linux-watch.o: ../nat/mips-linux-watch.c): Remove.
2127 (ppc-linux.o: ../nat/ppc-linux.c): Remove.
2128 (linux-personality.o: ../nat/linux-personality.c): Remove.
2129 (aarch64-linux-hw-point.o: ../nat/aarch64-linux-hw-point.c): Remove.
2130 (aarch64-linux.o: ../nat/aarch64-linux.c): Remove.
2131 (x86-linux.o: ../nat/x86-linux.c): Remove.
2132 (x86-linux-dregs.o: ../nat/x86-linux-dregs.c): Remove.
2133 (linux-namespaces.o: ../nat/linux-namespaces.c): Remove.
2134
21352017-03-13 Simon Marchi <simon.marchi@polymtl.ca>
2136
2137 * Makefile.in (%.o: ../common/%.c): New rule.
2138 (signals.o: ../common/signals.c): Remove.
2139 (print-utils.o: ../common/print-utils.c): Remove.
2140 (rsp-low.o: ../common/rsp-low.c): Remove.
2141 (common-utils.o: ../common/common-utils.c): Remove.
2142 (posix-strerror.o: ../common/posix-strerror.c): Remove.
2143 (mingw-strerror.o: ../common/mingw-strerror.c): Remove.
2144 (vec.o: ../common/vec.c): Remove.
2145 (gdb_vecs.o: ../common/gdb_vecs.c): Remove.
2146 (xml-utils.o: ../common/xml-utils.c): Remove.
2147 (ptid.o: ../common/ptid.c): Remove.
2148 (buffer.o: ../common/buffer.c): Remove.
2149 (format.o: ../common/format.c): Remove.
2150 (filestuff.o: ../common/filestuff.c): Remove.
2151 (agent.o: ../common/agent.c): Remove.
2152 (errors.o: ../common/errors.c): Remove.
2153 (environ.o: ../common/environ.c): Remove.
2154 (common-debug.o: ../common/common-debug.c): Remove.
2155 (cleanups.o: ../common/cleanups.c): Remove.
2156 (common-exceptions.o: ../common/common-exceptions.c): Remove.
2157 (fileio.o: ../common/fileio.c): Remove.
2158 (common-regcache.o: ../common/common-regcache.c): Remove.
2159 (signals-state-save-restore.o: ../common/signals-state-save-restore.c): Remove.
2160 (new-op.o: ../common/new-op.c): Remove.
2161 (btrace-common.o: ../common/btrace-common.c): Remove.
2162
21632017-03-13 Simon Marchi <simon.marchi@polymtl.ca>
2164
2165 * Makefile.in (%.o: ../target/%.c): New rule.
2166 (waitstatus.o: ../target/waitstatus.c): Remove.
2167
21682017-03-13 Simon Marchi <simon.marchi@polymtl.ca>
2169
2170 * Makefile.in
2171 (%.c: ../regformats/%.dat,
2172 (%.c: ../regformats/arm/%.dat,
2173 (%.c: ../regformats/i386/%.dat,
2174 (%.c: ../regformats/rs6000/%.dat): New rules.
2175 (aarch64.c): Remove.
2176 (reg-arm.c): Remove.
2177 (arm-with-iwmmxt.c): Remove.
2178 (arm-with-vfpv2.c): Remove.
2179 (arm-with-vfpv3.c): Remove.
2180 (arm-with-neon.c): Remove.
2181 (reg-bfin.c): Remove.
2182 (reg-cris.c): Remove.
2183 (reg-crisv32.c): Remove.
2184 (i386.c): Remove.
2185 (i386-linux.c): Remove.
2186 (i386-avx.c): Remove.
2187 (i386-avx-linux.c): Remove.
2188 (i386-avx-avx512.c): Remove.
2189 (i386-avx-avx512-linux.c): Remove.
2190 (i386-mpx.c): Remove.
2191 (i386-mpx-linux.c): Remove.
2192 (i386-avx-mpx-avx512-pku.c): Remove.
2193 (i386-avx-mpx-avx512-pku-linux.c): Remove.
2194 (i386-avx-mpx.c): Remove.
2195 (i386-avx-mpx-linux.c): Remove.
2196 (i386-mmx.c): Remove.
2197 (i386-mmx-linux.c): Remove.
2198 (reg-ia64.c): Remove.
2199 (reg-m32r.c): Remove.
2200 (reg-m68k.c): Remove.
2201 (reg-cf.c): Remove.
2202 (mips-linux.c): Remove.
2203 (mips-dsp-linux.c): Remove.
2204 (mips64-linux.c): Remove.
2205 (mips64-dsp-linux.c): Remove.
2206 (nios2-linux.c): Remove.
2207 (powerpc-32.c): Remove.
2208 (powerpc-32l.c): Remove.
2209 (powerpc-altivec32l.c): Remove.
2210 (powerpc-cell32l.c): Remove.
2211 (powerpc-vsx32l.c): Remove.
2212 (powerpc-isa205-32l.c): Remove.
2213 (powerpc-isa205-altivec32l.c): Remove.
2214 (powerpc-isa205-vsx32l.c): Remove.
2215 (powerpc-e500l.c): Remove.
2216 (powerpc-64l.c): Remove.
2217 (powerpc-altivec64l.c): Remove.
2218 (powerpc-cell64l.c): Remove.
2219 (powerpc-vsx64l.c): Remove.
2220 (powerpc-isa205-64l.c): Remove.
2221 (powerpc-isa205-altivec64l.c): Remove.
2222 (powerpc-isa205-vsx64l.c): Remove.
2223 (s390-linux32.c): Remove.
2224 (s390-linux32v1.c): Remove.
2225 (s390-linux32v2.c): Remove.
2226 (s390-linux64.c): Remove.
2227 (s390-linux64v1.c): Remove.
2228 (s390-linux64v2.c): Remove.
2229 (s390-te-linux64.c): Remove.
2230 (s390-vx-linux64.c): Remove.
2231 (s390-tevx-linux64.c): Remove.
2232 (s390x-linux64.c): Remove.
2233 (s390x-linux64v1.c): Remove.
2234 (s390x-linux64v2.c): Remove.
2235 (s390x-te-linux64.c): Remove.
2236 (s390x-vx-linux64.c): Remove.
2237 (s390x-tevx-linux64.c): Remove.
2238 (tic6x-c64xp-linux.c): Remove.
2239 (tic6x-c64x-linux.c): Remove.
2240 (tic6x-c62x-linux.c): Remove.
2241 (reg-sh.c): Remove.
2242 (reg-sparc64.c): Remove.
2243 (reg-spu.c): Remove.
2244 (amd64.c): Remove.
2245 (amd64-linux.c): Remove.
2246 (amd64-avx.c): Remove.
2247 (amd64-avx-linux.c): Remove.
2248 (amd64-avx-avx512.c): Remove.
2249 (amd64-avx-avx512-linux.c): Remove.
2250 (amd64-mpx.c): Remove.
2251 (amd64-mpx-linux.c): Remove.
2252 (amd64-avx-mpx-avx512-pku.c): Remove.
2253 (amd64-avx-mpx-avx512-pku-linux.c): Remove.
2254 (amd64-avx-mpx.c): Remove.
2255 (amd64-avx-mpx-linux.c): Remove.
2256 (x32.c): Remove.
2257 (x32-linux.c): Remove.
2258 (x32-avx.c): Remove.
2259 (x32-avx-linux.c): Remove.
2260 (x32-avx-avx512.c): Remove.
2261 (x32-avx-avx512-linux.c): Remove.
2262 (reg-xtensa.c): Remove.
2263 (reg-tilegx.c): Remove.
2264 (reg-tilegx32.c): Remove.
2265
22662017-03-07 Sergio Durigan Junior <sergiodj@redhat.com>
2267
2268 * Makefile.in (SFILES): Add "common/environ.c".
2269 (OBJS): Add "common/environ.h".
2270
22712017-01-27 Walfred Tedeschi <walfred.tedeschi@intel.com>
2272
2273 * configure.ac: Check if the fs_base and gs_base members of
2274 `struct user_regs_struct' exist.
2275 * config.in: Regenerated.
2276 * configure: Likewise.
2277
22782017-01-09 Antoine Tremblay <antoine.tremblay@ericsson.com>
2279
2280 * linux-aarch32-low.c (arm_breakpoint_kind_from_pc): Use
2281 target_read_memory.
2282 * linux-arm-low.c (get_next_pcs_read_memory_unsigned_integer): Likewise.
2283 (get_next_pcs_syscall_next_pc): Likewise.
2284
22852016-12-23 Luis Machado <lgustavo@codesourcery.com>
2286
2287 * win32-i386-low.c: Fix incorrect reference to a couple source files.
2288 * nto-x86-low.c: Likewise.
2289
22902016-11-30 Simon Marchi <simon.marchi@polymtl.ca>
2291
2292 * Makefile.in: Include disable-implicit-rules.mk.
2293
22942016-11-23 Pedro Alves <palves@redhat.com>
2295
2296 * debug.c: Include <chrono> instead of "gdb_sys_time.h".
2297 (debug_vprintf): Use std::chrono::steady_clock instead of
2298 gettimeofday. Use '.' instead of ':'.
2299 * tracepoint.c: Include <chrono> instead of "gdb_sys_time.h".
2300 (get_timestamp): Use std::chrono::steady_clock instead of
2301 gettimeofday.
2302
23032016-11-22 Simon Marchi <simon.marchi@polymtl.ca>
2304
2305 * Makefile.in: Fix whitespace formatting.
2306
23072016-11-22 Simon Marchi <simon.marchi@polymtl.ca>
2308
2309 * Makefile.in (SFILES, OBS): Flatten list and order
2310 alphabetically.
2311
23122016-11-23 Pedro Alves <palves@redhat.com>
2313
2314 * event-loop.c (handle_file_event): Use warning.
2315 * linux-low.c (linux_resume_one_lwp_throw): Use warning.
2316 * mem-break.c (add_breakpoint_condition, add_breakpoint_commands):
2317 Use warning.
2318
23192016-11-23 Pedro Alves <palves@redhat.com>
2320
2321 * linux-low.c (check_zombie_leaders): Use debug_printf for debug
2322 output.
2323 * notif.c (handle_notif_ack, notif_event_enque): Likewise.
2324 * remote-utils.c (putpkt_binary_1, readchar, getpkt): Use
2325 debug_printf and debug_flush for debug output.
2326 * server.c (handle_general_set): Likewise.
2327 * thread-db.c (try_thread_db_load): Use debug_printf for debug
2328 output.
2329
23302016-11-17 Simon Marchi <simon.marchi@polymtl.ca>
2331
2332 * Makefile.in (.c.o): Replace rule with ...
2333 (%.o: %.c): ... this one.
2334
23352016-11-17 Simon Marchi <simon.marchi@polymtl.ca>
2336
2337 * Makefile.in: Remove @GMAKE_TRUE@ prefixes and removes lines
2338 prefixed with @GMAKE_FALSE@. Update comment related to non-GNU
2339 make.
2340 * configure.ac: Remove checks for the make program.
2341 * configure: Re-generate.
2342
23432016-10-28 Pedro Alves <palves@redhat.com>
2344
2345 * Makefile.in (CXX_DIALECT): Get from configure.
2346 (COMPILE.pre, CC_LD): Append $(CXX_DIALECT).
2347 * acinclude.m4: Include ../ax_cxx_compile_stdcxx.m4.
2348 * configure.ac: Call AX_CXX_COMPILE_STDCXX.
2349 * config.in: Regenerate.
2350 * configure: Regenerate.
2351
23522016-10-27 Yao Qi <yao.qi@linaro.org>
2353
2354 * linux-low.c (linux_supports_range_stepping): Return true if
2355 can_software_single_step return true.
2356
23572016-10-27 Yao Qi <yao.qi@linaro.org>
2358
2359 * inferiors.c (find_inferior_in_random): New function.
2360 * inferiors.h (find_inferior_in_random): Declare.
2361 * linux-low.c (linux_wait_for_event_filtered): Call
2362 find_inferior_in_random instead of find_inferior.
2363
23642016-10-27 Yao Qi <yao.qi@linaro.org>
2365
2366 * linux-low.c (linux_wait_1): If single-step breakpoints are
2367 inserted, remove them.
2368
23692016-10-26 Pedro Alves <palves@redhat.com>
2370
2371 * linux-low.c (handle_extended_wait): Link parent/child fork
2372 threads.
2373 (linux_wait_1): Unlink them.
2374 (linux_set_resume_request): Ignore resume requests for
2375 already-resumed and unhandled fork child threads.
2376 * linux-low.h (struct lwp_info) <fork_relative>: New field.
2377 * server.c (in_queued_stop_replies_ptid, in_queued_stop_replies):
2378 New functions.
2379 (handle_v_requests) <vCont>: Don't call require_running.
2380 * server.h (in_queued_stop_replies): New declaration.
2381
23822016-10-24 Yao Qi <yao.qi@linaro.org>
2383
2384 PR server/20733
2385 * linux-aarch64-low.c (append_insns): Cast the return value to
2386 'uint32_t *'.
2387
23882016-10-10 Yao Qi <yao.qi@linaro.org>
2389
2390 * linux-aarch32-low.c (enum arm_breakpoint_kinds): Remove.
2391
23922016-10-06 Sergio Durigan Junior <sergiodj@redhat.com>
2393
2394 * target.c (target_supports_multi_process): New function, moved
2395 from...
2396 * target.h (target_supports_multi_process): ... here. Remove
2397 macro.
2398
23992016-10-05 Tom Tromey <tom@tromey.com>
2400
2401 PR remote/20655:
2402 * tracepoint.c (handle_tracepoint_bkpts): Check
2403 ipa_error_tracepoint, not ipa_stopping_tracepoint.
2404
24052016-10-05 Yao Qi <yao.qi@linaro.org>
2406
2407 * configure.srv: Update the path of arm-*.xml files.
2408
24092016-10-05 Terry Guo <terry.guo@arm.com>
2410 Yao Qi <yao.qi@linaro.org>
2411
2412 * Makefile.in: Adjust the path of rules.
2413 * configure.srv: Update the path of xml files.
2414 * regformats/arm-with-iwmmxt.dat: Regenerated.
2415 * regformats/arm-with-neon.dat: Likewise.
2416 * regformats/arm-with-vfpv2.dat: Likewise.
2417 * regformats/arm-with-vfpv3.dat Likewise.
2418
24192016-09-30 Yao Qi <yao.qi@linaro.org>
2420
2421 PR gdbserver/20627
2422 * target.c (target_stop_and_wait): Don't call
2423 target_continue_no_signal, use resume_stop instead.
2424
24252016-09-26 Yao Qi <yao.qi@linaro.org>
2426
2427 * linux-low.c (linux_wait_1): Call debug_exit.
2428
24292016-09-23 Pedro Alves <palves@redhat.com>
2430
2431 * Makefile.in (SFILES): Add common/new-op.c.
2432 (OBS): Add common/new-op.o.
2433 (new-op.o): New rule.
2434
24352016-09-21 Simon Marchi <simon.marchi@ericsson.com>
2436
2437 * .gitinore: Ignore more files.
2438
24392016-09-21 Yao Qi <yao.qi@linaro.org>
2440
2441 * linux-aarch32-low.c (arm_fill_gregset): Keep bits 20 to
2442 23.
2443
24442016-09-19 Sergio Durigan Junior <sergiodj@redhat.com>
2445
2446 * server.c (start_inferior): Call target_mourn_inferior instead of
2447 mourn_inferior; pass ptid_t argument to it.
2448 (resume): Likewise.
2449 (handle_target_event): Likewise.
2450 * target.c (target_mourn_inferior): New function.
2451 * target.h (mourn_inferior): Delete macro.
2452
24532016-09-16 Andreas Arnez <arnez@linux.vnet.ibm.com>
2454
2455 * linux-low.c (lwp_is_stepping): New function.
2456
24572016-09-06 Carl Love <cel@us.ibm.com>
2458
2459 * server.c (start_inferior): Fixed comment, requested comment change
2460 didn't get updated correctly. Removed reference to ptrace () call as
2461 it is only true on Linux systems.
2462
24632016-09-06 Carl Love <cel@us.ibm.com>
2464
2465 * server.c (start_inferior): Do not call
2466 function target_post_create_inferior () if the
2467 inferior process has already exited.
2468
24692016-09-05 Pedro Alves <palves@redhat.com>
2470
2471 * Makefile.in (COMPILER, COMPILER_CFLAGS): Remove.
2472 (COMPILE.pre, CC_LD): Use CXX directly.
2473 (INTERNAL_CFLAGS_BASE): Use CXXFLAGS directly.
2474 * acinclude.m4: Don't include build-with-cxx.m4.
2475 * configure.ac: Remove GDB_AC_BUILD_WITH_CXX call.
2476 * configure: Regenerate.
2477
24782016-09-02 Akash Trehan <akash.trehan123@gmail.com>
2479
2480 PR gdb/19495
2481 * remote-utils.c (relocate_instruction): Remove redundant strcpy()
2482 call writing data to own_buf.
2483
24842016-09-01 Sergio Durigan Junior <sergiodj@redhat.com>
2485
2486 * target.c (mywait): Call target_wait instead of
2487 the_target->wait.
2488 (target_wait): New function.
2489
24902016-09-01 Sergio Durigan Junior <sergiodj@redhat.com>
2491
2492 * server.c (start_inferior): New variable 'ptid'. Replace calls
2493 to the_target->resume by target_continue{,_no_signal}, depending
2494 on the case.
2495 * target.c (target_stop_and_wait): Call target_continue_no_signal
2496 instead of the_target->resume.
2497 (target_continue): New function.
2498
24992016-08-31 Antoine Tremblay <antoine.tremblay@ericsson.com>
2500
2501 * linux-low.c (linux_wait_1): Move event switch after unsuspend_lwps.
2502
25032016-08-25 Adhemerval Zanella <adhemerval.zanella@linaro.org>
2504
2505 PR server/20491
2506 * gdb_proc_service.h (ps_get_thread_area): Remove const from struct
2507 ps_prochandle.
2508 * linux-aarch64-low.c (ps_get_thread_area): Likewise.
2509 * linux-arm-low.c (ps_get_thread_area): Likewise.
2510 * linux-crisv32-low.c (ps_get_thread_area): Likewise.
2511 * linux-m68k-low.c (ps_get_thread_area): Likewise.
2512 * linux-mips-low.c (ps_get_thread_area): Likewise.
2513 * linux-nios2-low.c (ps_get_thread_area): Likewise.
2514 * linux-tic6x-low.c (ps_get_thread_area): Likewise.
2515 * linux-x86-low.c (ps_get_thread_area): Likewise.
2516 * linux-xtensa-low.c (ps_get_thread_area): Likewise.
2517
25182016-08-19 Pedro Alves <palves@redhat.com>
2519
2520 * linux-x86-low.c (amd64_emit_call): Emit missing call opcode.
2521
25222016-08-19 Pedro Alves <palves@redhat.com>
2523
2524 * linux-x86-low.c (amd64_install_fast_tracepoint_jump_pad): Fix
2525 comment. Use memcpy instead of casting through unsigned long.
2526
25272016-08-19 Pedro Alves <palves@redhat.com>
2528
2529 * linux-amd64-ipa.c (alloc_jump_pad_buffer) [__ILP32__]: Try
2530 allocating around 0x80000000.
2531
25322016-08-19 Pedro Alves <palves@redhat.com>
2533
2534 PR gdb/20415
2535 * Makefile.in (x32-linux-ipa.o, x32-avx-linux-ipa.o)
2536 (x32-avx512-linux-ipa.o): New rules.
2537 * configure.ac (x86_64-*-linux*): New x32 check.
2538 * configure.srv (ipa_x32_linux_regobj): New.
2539 (x86_64-*-linux*): Use $ipa_x32_linux_regobj if building for x32.
2540 * linux-amd64-ipa.c (get_ipa_tdesc) [__ILP32__]: Return x32
2541 descriptions.
2542 (initialize_low_tracepoint) [__ILP32__]: Initialize x32
2543 descriptions.
2544 * configure: Regenerate.
2545
25462016-08-09 Pedro Alves <palves@redhat.com>
2547
2548 PR gdb/18653
2549 * Makefile.in (OBS): Add signals-state-save-restore.o.
2550 (signals-state-save-restore.o): New rule.
2551 * config.in: Regenerate.
2552 * configure: Regenerate.
2553 * linux-low.c: Include "signals-state-save-restore.h".
2554 (linux_create_inferior): Call
2555 restore_original_signals_state.
2556 * server.c: Include "dispositions-save-restore.h".
2557 (captured_main): Call save_original_signals_state.
2558
25592016-08-05 Pedro Alves <palves@redhat.com>
2560
2561 * configure: Regenerate.
2562
25632016-08-04 Yao Qi <yao.qi@linaro.org>
2564
2565 * linux-low.c (regsets_fetch_inferior_registers): Check
2566 errno is ESRCH or not.
2567
25682016-08-02 Yao Qi <yao.qi@linaro.org>
2569
2570 * thread-db.c (struct thread_db) <td_ta_event_getmsg_p>: Remove.
2571 <td_ta_set_event_p, td_ta_event_addr_p>: Remove.
2572 (thread_db_load_search): Update.
2573 (try_thread_db_load_1): Don't look for td_ta_event_addr,
2574 td_ta_set_event and td_ta_event_getmsg.
2575
25762016-07-26 Pedro Alves <palves@redhat.com>
2577
2578 PR server/20414
2579 * linux-x86-low.c (x86_get_pc, x86_set_pc): Use uint64_t instead
2580 of unsigned long for 64-bit registers and use uint32_t instead of
2581 unsigned int for 32-bit registers.
2582
25832016-07-26 Pedro Alves <palves@redhat.com>
2584
2585 * linux-x86-low.c (x86_siginfo_fixup): Rename 'native' parameter
2586 to 'ptrace'.
2587
25882016-07-21 Tom Tromey <tom@tromey.com>
2589
2590 * configure: Rebuild.
2591
25922016-07-21 Yao Qi <yao.qi@linaro.org>
2593
2594 * mem-break.c (find_gdb_breakpoint): Cast bp to
2595 'struct gdb_breakpoint *' rather than 'gdb_breakpoint *'.
2596
25972016-07-21 Yao Qi <yao.qi@linaro.org>
2598
2599 * server.c (handle_v_requests): Support s and S actions
2600 if target_supports_software_single_step return true.
2601
26022016-07-21 Yao Qi <yao.qi@linaro.org>
2603
2604 * linux-low.c (resume_stopped_resumed_lwps): If resume request
2605 is resume_step, call maybe_hw_step.
2606 (linux_wait_1): Stop all threads, remove reinsert breakpoints,
2607 and unstop them.
2608 (linux_resume_one_lwp_throw): Don't assert the thread has reinsert
2609 breakpoints or not.
2610 (proceed_one_lwp): If resume request is resume_step, install
2611 reinsert breakpoints and call maybe_hw_step.
2612
26132016-07-21 Yao Qi <yao.qi@linaro.org>
2614
2615 * linux-low.c (proceed_one_lwp): Declare.
2616 (linux_resume_one_thread): Remove local variable 'step'.
2617 Lift code enqueue signal. Call proceed_one_lwp instead of
2618 linux_resume_one_lwp.
2619
26202016-07-21 Yao Qi <yao.qi@linaro.org>
2621
2622 * linux-low.c (linux_resume_one_thread): Call
2623 enqueue_pending_signal.
2624
26252016-07-21 Yao Qi <yao.qi@linaro.org>
2626
2627 * gdbthread.h (make_cleanup_restore_current_thread): Declare.
2628 * inferiors.c (do_restore_current_thread_cleanup): New function.
2629 (make_cleanup_restore_current_thread): Likewise.
2630 * linux-low.c (install_software_single_step_breakpoints): Call
2631 make_cleanup_restore_current_thread. Switch current_thread to
2632 thread.
2633
26342016-07-21 Yao Qi <yao.qi@linaro.org>
2635
2636 * mem-break.c (struct reinsert_breakpoint) <ptid>: New field.
2637 (set_reinsert_breakpoint): New parameter ptid. Callers updated.
2638 (clone_one_breakpoint): Likewise.
2639 (delete_reinsert_breakpoints): Change parameter to thread.
2640 Callers updated.
2641 (has_reinsert_breakpoints): Likewise.
2642 (uninsert_reinsert_breakpoints): Likewise.
2643 (reinsert_reinsert_breakpoints): Likewise.
2644 * mem-break.h (set_reinsert_breakpoint): Update declaration.
2645 (delete_reinsert_breakpoints): Likewise.
2646 (reinsert_reinsert_breakpoints): Likewise.
2647 (uninsert_reinsert_breakpoints): Likewise.
2648 (has_reinsert_breakpoints): Likewise.
2649
26502016-07-21 Yao Qi <yao.qi@linaro.org>
2651
2652 * inferiors.c (get_thread_process): Make parameter const.
2653 * inferiors.h (get_thread_process): Update declaration.
2654 * mem-break.c (clone_all_breakpoints): Remove all parameters.
2655 Add new parameters child_thread and parent_thread. Callers
2656 updated.
2657 * mem-break.h (clone_all_breakpoints): Update declaration.
2658
26592016-07-21 Yao Qi <yao.qi@linaro.org>
2660
2661 * mem-break.c (struct breakpoint) <cond_list>: Remove.
2662 <command_list, handler>: Remove.
2663 (struct gdb_breakpoint): New.
2664 (struct other_breakpoint): New.
2665 (struct reinsert_breakpoint): New.
2666 (is_gdb_breakpoint): New function.
2667 (any_persistent_commands): Update command_list if
2668 is_gdb_breakpoint returns true.
2669 (set_breakpoint): Create breakpoints according to their types.
2670 (find_gdb_breakpoint): Return 'struct gdb_breakpoint *'.
2671 (set_gdb_breakpoint_1): Likewise.
2672 (set_gdb_breakpoint): Likewise.
2673 (clear_breakpoint_conditions): Change parameter type to
2674 'struct gdb_breakpoint *'.
2675 (clear_breakpoint_commands): Likewise.
2676 (clear_breakpoint_conditions_and_commands): Likewise.
2677 (add_condition_to_breakpoint): Likewise.
2678 (add_breakpoint_condition): Likewise.
2679 (add_commands_to_breakpoint): Likewise.
2680 (check_breakpoints): Check other_breakpoint.
2681 (clone_one_breakpoint): Clone breakpopint according to its type.
2682 * mem-break.h (struct gdb_breakpoint): Declare.
2683 (set_gdb_breakpoint): Update declaration.
2684 (clear_breakpoint_conditions_and_commands): Likewise.
2685 (add_breakpoint_condition): Likewise.
2686 (add_breakpoint_commands): Likewise.
2687 * server.c (process_point_options): Change parameter type to
2688 'struct gdb_breakpoint *'.
2689
26902016-07-21 Yao Qi <yao.qi@linaro.org>
2691
2692 * mem-break.c (set_breakpoint_at): Rename it to ...
2693 (set_breakpoint_type_at): ... it.
2694 (set_breakpoint_at): Call set_breakpoint_type_at.
2695 (set_reinsert_breakpoint): Call set_breakpoint_type_at.
2696 * mem-break.h (set_breakpoint_at): Update comments.
2697
26982016-07-12 Chung-Lin Tang <cltang@codesourcery.com>
2699
2700 * linux-nios2-low.c (nios2_fill_gregset): Add type cast
2701 to buf parameter.
2702 (nios2_store_gregset): Likewise.
2703
27042016-07-01 Pedro Alves <palves@redhat.com>
2705 Antoine Tremblay <antoine.tremblay@ericsson.com>
2706
2707 * linux-low.c: Change interface to take the target lwp_info
2708 pointer directly and return void. Handle detaching from a zombie
2709 thread.
2710 (linux_detach_lwp_callback): New function.
2711 (linux_detach): Detach from the leader thread after detaching from
2712 the clone threads.
2713
27142016-06-28 Yao Qi <yao.qi@linaro.org>
2715
2716 * linux-aarch64-low.c (aarch64_ftrace_insn_reloc_b): Use int64_t
2717 for variable new_offset.
2718 (aarch64_ftrace_insn_reloc_b_cond): Likewise.
2719 (aarch64_ftrace_insn_reloc_cb): Likewise.
2720 (aarch64_ftrace_insn_reloc_tb): Likewise.
2721 (aarch64_install_fast_tracepoint_jump_pad): Likewise. Use
2722 PRIx64 instead of PRIx32.
2723
27242016-06-28 Yao Qi <yao.qi@linaro.org>
2725
2726 * linux-arm-low.c (arm_get_syscall_trapinfo): New function.
2727 (the_low_target): Install arm_get_syscall_trapinfo.
2728
27292016-06-28 Yao Qi <yao.qi@linaro.org>
2730
2731 * linux-aarch64-low.c (aarch64_get_syscall_trapinfo): New
2732 function.
2733 (the_low_target): Install aarch64_get_syscall_trapinfo.
2734
27352016-06-28 Yao Qi <yao.qi@linaro.org>
2736
2737 * linux-low.c (get_syscall_trapinfo): Remove parameter sysret.
2738 Callers updated.
2739 * linux-low.h (struct linux_target_ops) <get_syscall_trapinfo>:
2740 Remove parameter sysno.
2741 * linux-x86-low.c (x86_get_syscall_trapinfo): Remove parameter
2742 sysret.
2743
27442016-06-21 Andreas Arnez <arnez@linux.vnet.ibm.com>
2745
2746 * linux-s390-low.c (s390_emit_eq_goto): Mark function static.
2747 (s390_emit_ne_goto): Likewise.
2748 (s390_emit_lt_goto): Likewise.
2749 (s390_emit_le_goto): Likewise.
2750 (s390_emit_gt_goto): Likewise.
2751 (s390_emit_ge_goto): Likewise.
2752 (s390x_emit_eq_goto): Likewise.
2753 (s390x_emit_ne_goto): Likewise.
2754 (s390x_emit_lt_goto): Likewise.
2755 (s390x_emit_le_goto): Likewise.
2756 (s390x_emit_gt_goto): Likewise.
2757 (s390x_emit_ge_goto): Likewise.
2758 (s390_emit_ops_impl): Mark variable static.
2759 (s390x_emit_ops): Likewise.
2760
27612016-06-17 Yao Qi <yao.qi@linaro.org>
2762
2763 * linux-low.c (handle_extended_wait): Call
2764 uninsert_reinsert_breakpoints for the parent process. Remove
2765 reinsert breakpoints from the child process. Reinsert them to
2766 the parent process when vfork is done.
2767 * mem-break.c (uninsert_reinsert_breakpoints): New function.
2768 (reinsert_reinsert_breakpoints): New function.
2769 * mem-break.h (uninsert_reinsert_breakpoints): Declare
2770 (reinsert_reinsert_breakpoints): Declare.
2771
27722016-06-17 Yao Qi <yao.qi@linaro.org>
2773
2774 * linux-low.c (handle_extended_wait): If the parent is doing
2775 step-over, remove the reinsert breakpoints from the forked child.
2776
27772016-06-17 Yao Qi <yao.qi@linaro.org>
2778
2779 * linux-low.c (unsuspend_all_lwps): Declare.
2780 (linux_low_filter_event): If thread exited, call finish_step_over.
2781 If step-over is finished, unsuspend other threads.
2782
27832016-06-17 Yao Qi <yao.qi@linaro.org>
2784
2785 * linux-low.c (linux_resume_one_lwp_throw): Assert
2786 has_reinsert_breakpoints returns false.
2787 * mem-break.c (delete_disabled_breakpoints): Assert
2788 bp type isn't reinsert_breakpoint.
2789
27902016-06-17 Yao Qi <yao.qi@linaro.org>
2791
2792 * linux-low.c (maybe_hw_step): New function.
2793 (linux_resume_one_lwp_throw): Call maybe_hw_step.
2794 (finish_step_over): Switch current_thread to lwp temporarily,
2795 and assert has_reinsert_breakpoints returns true.
2796 (proceed_one_lwp): Call maybe_hw_step.
2797 * mem-break.c (has_reinsert_breakpoints): New function.
2798 * mem-break.h (has_reinsert_breakpoints): Declare.
2799
28002016-06-02 Jon Turney <jon.turney@dronecode.org.uk>
2801
2802 * win32-low.c (win32_create_inferior): Add pointer casts for C++.
2803
28042016-05-17 Yao Qi <yao.qi@linaro.org>
2805
2806 * linux-low.c (linux_stabilize_threads): Call unsuspend_all_lwps
2807 instead of find_inferior.
2808
28092016-05-05 Yao Qi <yao.qi@linaro.org>
2810
2811 * linux-arm-low.c (get_next_pcs_read_memory_unsigned_integer):
2812 Initialize res to zero.
2813
28142016-05-05 Yao Qi <yao.qi@linaro.org>
2815
2816 * linux-arm-low.c (arm_sigreturn_next_pc): Change type of cpsr
2817 to uint32_t.
2818
28192016-05-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2820
2821 * spu-low.c (fetch_ppc_register): Cast PowerPC-Linux-specific value
2822 used as first ptrace argument to PTRACE_TYPE_ARG1 for C++.
2823 (fetch_ppc_memory_1, store_ppc_memory_1): Likewise.
2824
28252016-04-28 Par Olsson <par.olsson@windriver.com>
2826 Simon Marchi <simon.marchi@ericsson.com>
2827
2828 * tracepoint.c (write_inferior_int8): New function.
2829 (cmd_qtenable_disable): Write enable flag using
2830 write_inferior_int8.
2831
28322016-04-25 Yao Qi <yao.qi@linaro.org>
2833
2834 * linux-low.c (lwp_signal_can_be_delivered): Adjust.
2835 (need_step_over_p): Return zero if the LWP has pending signals
2836 can be delivered on software single step target.
2837
28382016-04-25 Yao Qi <yao.qi@linaro.org>
2839
2840 * linux-low.c (reinsert_raw_breakpoint): If bp->inserted is true
2841 return instead of error.
2842
28432016-04-22 Yao Qi <yao.qi@linaro.org>
2844
2845 * linux-aarch32-low.c (arm_store_gregset): Clear CPSR bits 20
2846 to 23.
2847
28482016-04-22 Yao Qi <yao.qi@linaro.org>
2849
2850 * linux-low.c (lwp_signal_can_be_delivered): Don't deliver
2851 signal when stepping over breakpoint with software single
2852 step.
2853
28542016-04-21 Pedro Alves <palves@redhat.com>
2855
2856 * linux-s390-low.c (s390_collect_ptrace_register)
2857 (s390_supply_ptrace_register, s390_get_hwcap): Use gdb_byte * and
2858 add casts.
2859 (s390_check_regset): Use void * instead of gdb_byte *.
2860
28612016-04-20 Pedro Alves <palves@redhat.com>
2862
2863 * configure: Renegerate.
2864
28652016-04-20 Yao Qi <yao.qi@linaro.org>
2866
2867 * linux-aarch32-low.c: Include "arch/arm-linux.h".
2868 (arm_fill_gregset): Use ARM_CPSR_GREGNUM rather than magic
2869 number 16.
2870 (arm_store_gregset): Likewise.
2871
28722016-04-16 Walfred Tedeschi <walfred.tedeschi@intel.com>
2873
2874 * Makefile.in (clean): Add removal for i386-avx-mpx.c,
2875 i386-avx-mpx-linux.c, amd64-avx-mpx.c and amd64-avx-mpx-linux.c.
2876 (i386-avx-mpx.c, i386-avx-mpx-linux.c, amd64-avx-mpx.c)
2877 (amd64-avx-mpx-linux.c): New rules.
2878 (amd64-avx-mpx-linux-ipa.o, i386-avx-mpx-linux-ipa.o): New rule.
2879 * configure.srv (srv_i386_regobj): Add i386-avx-mpx.o.
2880 (srv_i386_linux_regobj): Add i386-avx-mpx-linux.o.
2881 (srv_amd64_regobj): Add amd64-avx-mpx.o.
2882 (srv_amd64_linux_regobj): Add amd64-avx-mpx-linux.o.
2883 (srv_i386_xmlfiles): Add i386/i386-avx-mpx.xml.
2884 (srv_amd64_xmlfiles): Add i386/amd64-avx-mpx.xml.
2885 (srv_i386_linux_xmlfiles): Add i386/i386-avx-mpx-linux.xml.
2886 (srv_amd64_linux_xmlfiles): Add i386/amd64-avx-mpx-linux.xml.
2887 (ipa_i386_linux_regobj): Add i386-avx-mpx-linux-ipa.o.
2888 (ipa_amd64_linux_regobj): Add amd64-avx-mpx-linux-ipa.o.
2889 * linux-x86-low.c (x86_linux_read_description): Add case for
2890 X86_XSTATE_AVX_MPX_MASK.
2891 (x86_get_ipa_tdesc_idx): Add cases for avx_mpx.
2892 (initialize_low_arch): Call init_registers_amd64_avx_mpx_linux and
2893 init_registers_i386_avx_mpx_linux.
2894 * linux-i386-ipa.c (get_ipa_tdesc): Add case for avx_mpx.
2895 (initialize_low_tracepoint): Call
2896 init_registers_i386_avx_mpx_linux.
2897 * linux-amd64-ipa.c (get_ipa_tdesc): Add case for avx_mpx.
2898 (initialize_low_tracepoint): Call
2899 init_registers_amd64_avx_mpx_linux.
2900 * linux-x86-tdesc.h (X86_TDESC_AVX_MPX): New enum value.
2901 (init_registers_amd64_avx_mpx_linux, tdesc_amd64_avx_mpx_linux)
2902 (init_registers_i386_avx_mpx_linux, tdesc_i386_avx_mpx_linux): New
2903 declarations.
2904
29052016-04-18 Pedro Alves <palves@redhat.com>
2906
2907 * configure: Regenerate.
2908
29092016-04-13 Antoine Tremblay <antoine.tremblay@ericsson.com>
2910
2911 * linux-aarch64-low.c (aarch64_emit_add): Switch x1 and x0.
2912 (aarch64_emit_sub): Likewise.
2913
29142016-04-12 Pedro Alves <palves@redhat.com>
2915
2916 * utils.c (prepare_to_throw_exception): Delete.
2917
29182016-04-05 Simon Marchi <simon.marchi@ericsson.com>
2919
2920 * Makefile.in ($(IPA_LIB)): Set SONAME of the IPA lib.
2921
29222016-04-05 Marcin Kościelnicki <koriakin@0x04.net>
2923
2924 * tracepoint.c (getauxval): Move to #ifdef IN_PROCESS_AGENT.
2925
29262016-04-03 Marcin Kościelnicki <koriakin@0x04.net>
2927
2928 * linux-aarch64-ipa.c: Add <elf.h> include.
2929 * linux-ppc-ipa.c: Add <elf.h> include.
2930 * linux-s390-ipa.c: Add <elf.h> include.
2931
29322016-03-31 Marcin Kościelnicki <koriakin@0x04.net>
2933
2934 * tracepoint.c (gdb_collect_ptr): Remove const qualifier.
2935 (get_raw_reg_ptr): Likewise.
2936 (get_trace_state_variable_value_ptr): Likewise.
2937 (set_trace_state_variable_value_ptr): Likewise.
2938 (initialize_tracepoint): Cast alloc_jump_pad_buffer result to
2939 char *.
2940
29412016-03-31 Wei-cheng Wang <cole945@gmail.com>
2942 Marcin Kościelnicki <koriakin@0x04.net>
2943
2944 PR/17221
2945 * linux-ppc-low.c (emit_insns): New function.
2946 (__EMIT_ASM, _EMIT_ASM, EMIT_ASM): New macros.
2947 (ppc_emit_prologue): New function.
2948 (ppc_emit_epilogue): New function.
2949 (ppc_emit_add): New function.
2950 (ppc_emit_sub): New function.
2951 (ppc_emit_mul): New function.
2952 (ppc_emit_lsh): New function.
2953 (ppc_emit_rsh_signed): New function.
2954 (ppc_emit_rsh_unsigned): New function.
2955 (ppc_emit_ext): New function.
2956 (ppc_emit_zero_ext): New function.
2957 (ppc_emit_log_not): New function.
2958 (ppc_emit_bit_and): New function.
2959 (ppc_emit_bit_or): New function.
2960 (ppc_emit_bit_xor): New function.
2961 (ppc_emit_bit_not): New function.
2962 (ppc_emit_equal): New function.
2963 (ppc_emit_less_signed): New function.
2964 (ppc_emit_less_unsigned): New function.
2965 (ppc_emit_ref): New function.
2966 (ppc_emit_const): New function.
2967 (ppc_emit_reg): New function.
2968 (ppc_emit_pop): New function.
2969 (ppc_emit_stack_flush): New function.
2970 (ppc_emit_swap): New function.
2971 (ppc_emit_stack_adjust): New function.
2972 (ppc_emit_call): New function.
2973 (ppc_emit_int_call_1): New function.
2974 (ppc_emit_void_call_2): New function.
2975 (ppc_emit_if_goto): New function.
2976 (ppc_emit_goto): New function.
2977 (ppc_emit_eq_goto): New function.
2978 (ppc_emit_ne_goto): New function.
2979 (ppc_emit_lt_goto): New function.
2980 (ppc_emit_le_goto): New function.
2981 (ppc_emit_gt_goto): New function.
2982 (ppc_emit_ge_goto): New function.
2983 (ppc_write_goto_address): New function.
2984 (ppc_emit_ops_impl): New static variable.
2985 (ppc64v1_emit_prologue): New function.
2986 (ppc64v2_emit_prologue): New function.
2987 (ppc64_emit_epilogue): New function.
2988 (ppc64_emit_add): New function.
2989 (ppc64_emit_sub): New function.
2990 (ppc64_emit_mul): New function.
2991 (ppc64_emit_lsh): New function.
2992 (ppc64_emit_rsh_signed): New function.
2993 (ppc64_emit_rsh_unsigned): New function.
2994 (ppc64_emit_ext): New function.
2995 (ppc64_emit_zero_ext): New function.
2996 (ppc64_emit_log_not): New function.
2997 (ppc64_emit_bit_and): New function.
2998 (ppc64_emit_bit_or): New function.
2999 (ppc64_emit_bit_xor): New function.
3000 (ppc64_emit_bit_not): New function.
3001 (ppc64_emit_equal): New function.
3002 (ppc64_emit_less_signed): New function.
3003 (ppc64_emit_less_unsigned): New function.
3004 (ppc64_emit_ref): New function.
3005 (ppc64_emit_const): New function.
3006 (ppc64v1_emit_reg): New function.
3007 (ppc64v2_emit_reg): New function.
3008 (ppc64_emit_pop): New function.
3009 (ppc64_emit_stack_flush): New function.
3010 (ppc64_emit_swap): New function.
3011 (ppc64v1_emit_call): New function.
3012 (ppc64v2_emit_call): New function.
3013 (ppc64v1_emit_int_call_1): New function.
3014 (ppc64v2_emit_int_call_1): New function.
3015 (ppc64v1_emit_void_call_2): New function.
3016 (ppc64v2_emit_void_call_2): New function.
3017 (ppc64_emit_if_goto): New function.
3018 (ppc64_emit_eq_goto): New function.
3019 (ppc64_emit_ne_goto): New function.
3020 (ppc64_emit_lt_goto): New function.
3021 (ppc64_emit_le_goto): New function.
3022 (ppc64_emit_gt_goto): New function.
3023 (ppc64_emit_ge_goto): New function.
3024 (ppc64v1_emit_ops_impl): New static variable.
3025 (ppc64v2_emit_ops_impl): New static variable.
3026 (ppc_emit_ops): New function.
3027 (linux_low_target): Wire in ppc_emit_ops.
3028
30292016-03-31 Wei-cheng Wang <cole945@gmail.com>
3030 Marcin Kościelnicki <koriakin@0x04.net>
3031
3032 PR/17221
3033 * Makefile.in: Add powerpc-*-ipa.o
3034 * configure.srv: Add ipa_obj for powerpc*-linux.
3035 * linux-ppc-ipa.c: New file.
3036 * linux-ppc-low.c: Added linux-ppc-tdesc.h, ax.h, tracepoint.h
3037 includes.
3038 (PPC_FIELD): New macro.
3039 (PPC_SEXT): New macro.
3040 (PPC_OP6): New macro.
3041 (PPC_BO): New macro.
3042 (PPC_LI): New macro.
3043 (PPC_BD): New macro.
3044 (init_registers_*): Move prototype to linux-ppc-tdesc.h.
3045 (tdesc_*): Move declaration to linux-ppc-tdesc.h.
3046 (ppc_get_hwcap): Rename to ppc_get_auxv and add type parameter.
3047 (ppc_get_thread_area): New function.
3048 (is_elfv2_inferior): New function.
3049 (gen_ds_form): New function.
3050 (GEN_STD): New macro.
3051 (GEN_STDU): New macro.
3052 (GEN_LD): New macro.
3053 (GEN_LDU): New macro.
3054 (gen_d_form): New function.
3055 (GEN_ADDI): New macro.
3056 (GEN_ADDIS): New macro.
3057 (GEN_LI): New macro.
3058 (GEN_LIS): New macro.
3059 (GEN_ORI): New macro.
3060 (GEN_ORIS): New macro.
3061 (GEN_LWZ): New macro.
3062 (GEN_STW): New macro.
3063 (GEN_STWU): New macro.
3064 (gen_xfx_form): New function.
3065 (GEN_MFSPR): New macro.
3066 (GEN_MTSPR): New macro.
3067 (GEN_MFCR): New macro.
3068 (GEN_MTCR): New macro.
3069 (GEN_SYNC): New macro.
3070 (GEN_LWSYNC): New macro.
3071 (gen_x_form): New function.
3072 (GEN_OR): New macro.
3073 (GEN_MR): New macro.
3074 (GEN_LWARX): New macro.
3075 (GEN_STWCX): New macro.
3076 (GEN_CMPW): New macro.
3077 (gen_md_form): New function.
3078 (GEN_RLDICL): New macro.
3079 (GEN_RLDICR): New macro.
3080 (gen_i_form): New function.
3081 (GEN_B): New macro.
3082 (GEN_BL): New macro.
3083 (gen_b_form): New function.
3084 (GEN_BNE): New macro.
3085 (GEN_LOAD): New macro.
3086 (GEN_STORE): New macro.
3087 (gen_limm): New function.
3088 (gen_atomic_xchg): New function.
3089 (gen_call): New function.
3090 (ppc_relocate_instruction): New function.
3091 (ppc_install_fast_tracepoint_jump_pad): New function.
3092 (ppc_get_min_fast_tracepoint_insn_len): New function.
3093 (ppc_get_ipa_tdesc_idx): New function.
3094 (the_low_target): Wire in the new functions.
3095 (initialize_low_arch) [!__powerpc64__]: Don'it initialize 64-bit
3096 tdescs.
3097 * linux-ppc-tdesc.h: New file.
3098
30992016-03-31 Marcin Kościelnicki <koriakin@0x04.net>
3100
3101 * linux-aarch64-ipa.c: Add <sys/mman.h> and <sys/auxv.h> includes.
3102 (alloc_jump_pad_buffer): New function.
3103 * linux-amd64-ipa.c: Add <sys/mman.h> include.
3104 (alloc_jump_pad_buffer): New function.
3105 * linux-i386-ipa.c (alloc_jump_pad_buffer): New function.
3106 * linux-s390-ipa.c: Add <sys/mman.h> and <sys/auxv.h> includes.
3107 (alloc_jump_pad_buffer): New function.
3108 * tracepoint.c (getauxval) [!HAVE_GETAUXVAL]: New function.
3109 (initialize_tracepoint): Delegate to alloc_jump_pad_buffer.
3110 * tracepoint.h (alloc_jump_pad_buffer): New prototype.
3111 (getauxval) [!HAVE_GETAUXVAL]: New prototype.
3112
31132016-03-30 Marcin Kościelnicki <koriakin@0x04.net>
3114
3115 * linux-aarch64-ipa.c: Rename gdb_agent_get_raw_reg to get_raw_reg.
3116 * linux-amd64-ipa.c: Likewise.
3117 * linux-i386-ipa.c: Likewise.
3118 * linux-s390-ipa.c: Likewise.
3119 * tracepoint.c: IPA-export gdb_collect_ptr instead of gdb_collect,
3120 ditto for get_raw_reg_ptr, get_trace_state_variable_value_ptr,
3121 set_trace_state_variable_value_ptr.
3122 (struct ipa_sym_addresses): Likewise.
3123 (symbol_list): Likewise.
3124 (install_fast_tracepoint): Dereference gdb_collect_ptr instead of
3125 accessing gdb_collect directly.
3126 (gdb_collect_ptr_type): New typedef.
3127 (get_raw_reg_ptr_type): New typedef.
3128 (get_trace_state_variable_value_ptr_type): New typedef.
3129 (set_trace_state_variable_value_ptr_type): New typedef.
3130 (gdb_collect_ptr): New global.
3131 (get_raw_reg_ptr): New global.
3132 (get_trace_state_variable_value_ptr): New global.
3133 (set_trace_state_variable_value_ptr): New global.
3134 (get_raw_reg_func_addr): Dereference get_raw_reg_ptr instead of
3135 accessing get_raw_reg directly.
3136 (get_get_tsv_func_addr): Likewise for
3137 get_trace_state_variable_value_ptr.
3138 (get_set_tsv_func_addr): Likewise for
3139 set_trace_state_variable_value_ptr.
3140 * tracepoint.h: Rename gdb_agent_get_raw_reg to get_raw_reg.
3141
31422016-03-30 Simon Marchi <simon.marchi@ericsson.com>
3143
3144 * tracepoint.c (cmd_qtenable_disable): Remove whitespace.
3145
31462016-03-30 Marcin Kościelnicki <koriakin@0x04.net>
3147
3148 * remote-utils.c (look_up_one_symbol): Remove own_buf, handle 'v'
3149 packets.
3150 (relocate_instruction): Remove own_buf.
3151 * server.c (own_buf): Make global.
3152 (handle_v_requests): Make global.
3153 * server.h (own_buf): New declaration.
3154 (handle_v_requests): New prototype.
3155
31562016-03-29 Marcin Kościelnicki <koriakin@0x04.net>
3157
3158 PR 18377
3159 * linux-s390-low.c (add_insns): New function.
3160 (s390_emit_prologue): New function.
3161 (s390_emit_epilogue): New function.
3162 (s390_emit_add): New function.
3163 (s390_emit_sub): New function.
3164 (s390_emit_mul): New function.
3165 (s390_emit_lsh): New function.
3166 (s390_emit_rsh_signed): New function.
3167 (s390_emit_rsh_unsigned): New function.
3168 (s390_emit_ext): New function.
3169 (s390_emit_log_not): New function.
3170 (s390_emit_bit_and): New function.
3171 (s390_emit_bit_or): New function.
3172 (s390_emit_bit_xor): New function.
3173 (s390_emit_bit_not): New function.
3174 (s390_emit_equal): New function.
3175 (s390_emit_less_signed): New function.
3176 (s390_emit_less_unsigned): New function.
3177 (s390_emit_ref): New function.
3178 (s390_emit_if_goto): New function.
3179 (s390_emit_goto): New function.
3180 (s390_write_goto_address): New function.
3181 (s390_emit_litpool): New function.
3182 (s390_emit_const): New function.
3183 (s390_emit_call): New function.
3184 (s390_emit_reg): New function.
3185 (s390_emit_pop): New function.
3186 (s390_emit_stack_flush): New function.
3187 (s390_emit_zero_ext): New function.
3188 (s390_emit_swap): New function.
3189 (s390_emit_stack_adjust): New function.
3190 (s390_emit_set_r2): New function.
3191 (s390_emit_int_call_1): New function.
3192 (s390_emit_void_call_2): New function.
3193 (s390_emit_eq_goto): New function.
3194 (s390_emit_ne_goto): New function.
3195 (s390_emit_lt_goto): New function.
3196 (s390_emit_le_goto): New function.
3197 (s390_emit_gt_goto): New function.
3198 (s390_emit_ge_goto): New function.
3199 (s390x_emit_prologue): New function.
3200 (s390x_emit_epilogue): New function.
3201 (s390x_emit_add): New function.
3202 (s390x_emit_sub): New function.
3203 (s390x_emit_mul): New function.
3204 (s390x_emit_lsh): New function.
3205 (s390x_emit_rsh_signed): New function.
3206 (s390x_emit_rsh_unsigned): New function.
3207 (s390x_emit_ext): New function.
3208 (s390x_emit_log_not): New function.
3209 (s390x_emit_bit_and): New function.
3210 (s390x_emit_bit_or): New function.
3211 (s390x_emit_bit_xor): New function.
3212 (s390x_emit_bit_not): New function.
3213 (s390x_emit_equal): New function.
3214 (s390x_emit_less_signed): New function.
3215 (s390x_emit_less_unsigned): New function.
3216 (s390x_emit_ref): New function.
3217 (s390x_emit_if_goto): New function.
3218 (s390x_emit_const): New function.
3219 (s390x_emit_call): New function.
3220 (s390x_emit_reg): New function.
3221 (s390x_emit_pop): New function.
3222 (s390x_emit_stack_flush): New function.
3223 (s390x_emit_zero_ext): New function.
3224 (s390x_emit_swap): New function.
3225 (s390x_emit_stack_adjust): New function.
3226 (s390x_emit_int_call_1): New function.
3227 (s390x_emit_void_call_2): New function.
3228 (s390x_emit_eq_goto): New function.
3229 (s390x_emit_ne_goto): New function.
3230 (s390x_emit_lt_goto): New function.
3231 (s390x_emit_le_goto): New function.
3232 (s390x_emit_gt_goto): New function.
3233 (s390x_emit_ge_goto): New function.
3234 (s390_emit_ops): New function.
3235 (struct linux_target_ops): Fill in emit_ops hook.
3236
32372016-03-29 Marcin Kościelnicki <koriakin@0x04.net>
3238
3239 PR 18377
3240 * Makefile.in: Add s390 IPA files.
3241 * configure.srv: Build IPA for s390.
3242 * linux-s390-ipa.c: New file.
3243 * linux-s390-low.c: New includes - inttypes.h and linux-s390-tdesc.h.
3244 (init_registers_s390_linux32): Move declaration to linux-s390-tdesc.h.
3245 (tdesc_s390_linux32): Likewise.
3246 (init_registers_s390_linux32v1): Likewise.
3247 (tdesc_s390_linux32v1): Likewise.
3248 (init_registers_s390_linux32v2): Likewise.
3249 (tdesc_s390_linux32v2): Likewise.
3250 (init_registers_s390_linux64): Likewise.
3251 (tdesc_s390_linux64): Likewise.
3252 (init_registers_s390_linux64v1): Likewise.
3253 (tdesc_s390_linux64v1): Likewise.
3254 (init_registers_s390_linux64v2): Likewise.
3255 (tdesc_s390_linux64v2): Likewise.
3256 (init_registers_s390_te_linux64): Likewise.
3257 (tdesc_s390_te_linux64): Likewise.
3258 (init_registers_s390_vx_linux64): Likewise.
3259 (tdesc_s390_vx_linux64): Likewise.
3260 (init_registers_s390_tevx_linux64): Likewise.
3261 (tdesc_s390_tevx_linux64): Likewise.
3262 (init_registers_s390x_linux64): Likewise.
3263 (tdesc_s390x_linux64): Likewise.
3264 (init_registers_s390x_linux64v1): Likewise.
3265 (tdesc_s390x_linux64v1): Likewise.
3266 (init_registers_s390x_linux64v2): Likewise.
3267 (tdesc_s390x_linux64v2): Likewise.
3268 (init_registers_s390x_te_linux64): Likewise.
3269 (tdesc_s390x_te_linux64): Likewise.
3270 (init_registers_s390x_vx_linux64): Likewise.
3271 (tdesc_s390x_vx_linux64): Likewise.
3272 (init_registers_s390x_tevx_linux64): Likewise.
3273 (tdesc_s390x_tevx_linux64): Likewise.
3274 (have_hwcap_s390_vx): New static variable.
3275 (s390_arch_setup): Fill have_hwcap_s390_vx.
3276 (s390_get_thread_area): New function.
3277 (s390_ft_entry_gpr_esa): New const.
3278 (s390_ft_entry_gpr_zarch): New const.
3279 (s390_ft_entry_misc): New const.
3280 (s390_ft_entry_fr): New const.
3281 (s390_ft_entry_vr): New const.
3282 (s390_ft_main_31): New const.
3283 (s390_ft_main_64): New const.
3284 (s390_ft_exit_fr): New const.
3285 (s390_ft_exit_vr): New const.
3286 (s390_ft_exit_misc): New const.
3287 (s390_ft_exit_gpr_esa): New const.
3288 (s390_ft_exit_gpr_zarch): New const.
3289 (append_insns): New function.
3290 (s390_relocate_instruction): New function.
3291 (s390_install_fast_tracepoint_jump_pad): New function.
3292 (s390_get_min_fast_tracepoint_insn_len): New function.
3293 (s390_get_ipa_tdesc_idx): New function.
3294 (struct linux_target_ops): Wire in the above functions.
3295 (initialize_low_arch) [!__s390x__]: Don't initialize s390x tdescs.
3296 * linux-s390-tdesc.h: New file.
3297
32982016-03-29 Marcin Kościelnicki <koriakin@0x04.net>
3299
3300 * linux-s390-low.c (s390_supports_tracepoints): New function.
3301 (struct linux_target_ops): Fill supports_tracepoints hook.
3302
33032016-03-18 Yao Qi <yao.qi@linaro.org>
3304
3305 * linux-low.c (lwp_signal_can_be_delivered): New function.
3306 (linux_resume_one_lwp_throw): Use lwp_signal_can_be_delivered.
3307
33082016-03-18 Yao Qi <yao.qi@linaro.org>
3309
3310 * linux-low.c (linux_resume_one_lwp_throw): Set 'signal' to
3311 0 if signal is enqueued. Remove 'signal' from one debugging
3312 message. Move one debugging message to some lines below.
3313 Remove code setting 'signal' to 0.
3314
33152016-03-18 Yao Qi <yao.qi@linaro.org>
3316
3317 * linux-low.c (linux_low_filter_event): Remove redundant
3318 WIFSTOPPED check together with linux_wstatus_maybe_breakpoint.
3319
33202016-03-09 Marcin Kościelnicki <koriakin@0x04.net>
3321
3322 * linux-ppc-low.c (ppc_supports_tracepoints): New function.
3323 (struct linux_target_ops): Wire in the above.
3324
33252016-03-03 Yao Qi <yao.qi@linaro.org>
3326
3327 * linux-low.c: Update comments to start_step_over.
3328
33292016-03-03 Yao Qi <yao.qi@linaro.org>
3330
3331 PR server/19736
3332 * linux-low.c (handle_extended_wait): Set child suspended
3333 if event_lwp->bp_reinsert isn't zero.
3334
33352016-03-02 Yao Qi <yao.qi@linaro.org>
3336
3337 * linux-low.c (linux_resume_one_lwp_throw): Replace code with
3338 enqueue_pending_signal.
3339
33402016-03-02 Marcin Kościelnicki <koriakin@0x04.net>
3341
3342 * tracepoint.c (cmd_qtstart): Only set ipa_tdesc_idx if agent
3343 is actually loaded.
3344
33452016-02-25 Marcin Kościelnicki <koriakin@0x04.net>
3346
3347 * linux-s390-low.c (s390_num_regs_3264): Define on 31-bit too.
3348 (s390_regmap_3264) [!__s390x__]: New global.
3349 (s390_collect_ptrace_register): Skip map entries containing -1.
3350 (s390_supply_ptrace_register): Ditto.
3351 (s390_fill_gprs_high): New function.
3352 (s390_store_gprs_high): New function.
3353 (s390_regsets): Add NT_S390_HIGH_GPRS.
3354 (s390_get_hwcap): Enable on 31-bit.
3355 (have_hwcap_s390_high_gprs): Enable on 31-bit.
3356 (s390_arch_setup): Enable detection of high GPRs, TDB, VX on 31-bit.
3357 Detect NT_S390_HIGH_GPRS.
3358 (s390_usrregs_info_3264): Enable on 31-bit.
3359 (s390_regs_info): Enable regs_info_3264 on 31-bit.
3360 (initialize_low_arch): Initialize s390_regsets_info_3264 on 31-bit.
3361
33622016-02-25 Marcin Kościelnicki <koriakin@0x04.net>
3363
3364 PR gdb/13808
3365 * Makefile.in: Add i386-*-linux-ipa.o and amd64-*-linux-ipa.o.
3366 * configure.srv: Ditto.
3367 * linux-aarch64-ipa.c (get_ipa_tdesc): New function.
3368 (initialize_low_tracepoint): Remove ipa_tdesc assignment.
3369 * linux-amd64-ipa.c: Add "linux-x86-tdesc.h" include.
3370 (init_registers_amd64_linux): Remove prototype.
3371 (tdesc_amd64_linux): Remove declaration.
3372 (get_ipa_tdesc): New function.
3373 (initialize_low_tracepoint): Remove ipa_tdesc assignment,
3374 initialize remaining tdescs.
3375 * linux-i386-ipa.c: Add "linux-x86-tdesc.h" include.
3376 (init_registers_i386_linux): Remove prototype.
3377 (tdesc_i386_linux): Remove declaration.
3378 (get_ipa_tdesc): New function.
3379 (initialize_low_tracepoint): Remove ipa_tdesc assignment,
3380 initialize remaining tdescs.
3381 * linux-low.c (linux_get_ipa_tdesc_idx): New function.
3382 (linux_target_ops): wire in linux_get_ipa_tdesc_idx.
3383 * linux-low.h (struct linux_target_ops): Add get_ipa_tdesc_idx.
3384 * linux-x86-low.c: Move tdesc declarations to linux-x86-tdesc.h.
3385 (x86_get_ipa_tdesc_idx): New function.
3386 (the_low_target): Wire in x86_get_ipa_tdesc_idx.
3387 * linux-x86-tdesc.h: New file.
3388 * target.h (struct target_ops): Add get_ipa_tdesc_idx.
3389 (target_get_ipa_tdesc_idx): New macro.
3390 * tracepoint.c (ipa_tdesc_idx): New macro.
3391 (struct ipa_sym_addresses): Add addr_ipa_tdesc_idx.
3392 (symbol_list): Add ipa_tdesc_idx.
3393 (cmd_qtstart): Write ipa_tdesc_idx in the target.
3394 (ipa_tdesc): Remove.
3395 (ipa_tdesc_idx): New variable.
3396 (get_context_regcache): Use get_ipa_tdesc.
3397 (gdb_collect): Ditto.
3398 (gdb_probe): Ditto.
3399 * tracepoint.h (get_ipa_tdesc): New prototype.
3400 (ipa_tdesc): Remove.
3401
34022016-02-24 Pedro Alves <palves@redhat.com>
3403
3404 * linux-low.c (check_stopped_by_breakpoint): Rename to ...
3405 (save_stop_reason): ... this. Use GDB_ARCH_IS_TRAP_HWBKPT and
3406 handle ambiguous GDB_ARCH_IS_TRAP_BRKPT / GDB_ARCH_IS_TRAP_HWBKPT.
3407 Factor out common code between the USE_SIGTRAP_SIGINFO and
3408 !USE_SIGTRAP_SIGINFO blocks.
3409 (linux_low_filter_event): Call save_stop_reason instead of
3410 check_stopped_by_breakpoint and check_stopped_by_watchpoint.
3411 Update comments.
3412 (linux_wait_1): Update comments.
3413
34142016-02-24 Wei-cheng Wang <cole945@gmail.com>
3415
3416 * linux-ppc-low.c (ppc_supports_z_point_type): New function:
3417 (ppc_insert_point, ppc_remove_point): Insert/remove z-packet breakpoints.
3418 (ppc64_emit_ops_vector): Add target ops - ppc_supports_z_point_type,
3419 ppc_insert_point, ppc_remove_point.
3420
34212016-02-17 Marcin Kościelnicki <koriakin@0x04.net>
3422
3423 * linux-s390-low.c (s390_supports_z_point_type): New function.
3424 (struct linux_target_ops): Wire s390_supports_z_point_type in.
3425
34262016-02-16 Yao Qi <yao.qi@linaro.org>
3427
3428 * linux-arm-low.c (get_next_pcs_syscall_next_pc): Remove argument
3429 PC. Get pc from regcache_read_pc.
3430
34312016-02-12 Yao Qi <yao.qi@linaro.org>
3432
3433 * linux-aarch64-low.c (aarch64_get_pc): Call linux_get_pc_64bit
3434 or linux_get_pc_32bit.
3435 (aarch64_set_pc): Call linux_set_pc_64bit or linux_set_pc_32bit.
3436
34372016-02-12 Yao Qi <yao.qi@linaro.org>
3438
3439 * linux-arm-low.c (get_next_pcs_ops): Initialize it with
3440 arm_linux_get_next_pcs_fixup.
3441
34422016-02-12 Marcin Kościelnicki <koriakin@0x04.net>
3443
3444 * tracepoint.c (x_tracepoint_action_download): Change
3445 write_inferior_data_ptr to write_inferior_data_pointer.
3446 (cmd_qtstart): Likewise.
3447 (write_inferior_data_ptr): Remove.
3448 (download_agent_expr): Change write_inferior_data_ptr to
3449 write_inferior_data_pointer.
3450 (download_tracepoint_1): Likewise.
3451 (download_tracepoint): Likewise.
3452 (download_trace_state_variables): Likewise.
3453
34542016-02-11 Wei-cheng Wang <cole945@gmail.com>
3455 Marcin Kościelnicki <koriakin@0x04.net>
3456
3457 * tracepoint.c (struct tracepoint_action_ops): Remove.
3458 (struct tracepoint_action): Remove ops.
3459 (m_tracepoint_action_download, r_tracepoint_action_download)
3460 (x_tracepoint_action_download, l_tracepoint_action_download): Adjust
3461 size and offset accordingly.
3462 (m_tracepoint_action_ops, r_tracepoint_action_ops)
3463 (x_tracepoint_action_ops, l_tracepoint_action_ops): Remove.
3464 (tracepoint_action_send, tracepoint_action_download): New functions.
3465 Helpers for trace action handlers.
3466 (add_tracepoint_action): Remove setup actions ops.
3467 (download_tracepoint_1, tracepoint_send_agent): Call helper functions.
3468
34692016-02-10 Yao Qi <yao.qi@linaro.org>
3470
3471 * regcache.c (regcache_raw_read_unsigned): Clear *VAL.
3472
34732016-02-09 Simon Marchi <simon.marchi@ericsson.com>
3474
3475 * configure.ac: Use AC_CONFIG_FILES instead of passing arguments
3476 to AC_OUTPUT.
3477 * configure: Regenerate.
3478
34792016-02-09 Simon Marchi <simon.marchi@ericsson.com>
3480
3481 * linux-aarch64-low.c (aarch64_linux_siginfo_fixup): Change
3482 void * to gdb_byte *.
3483 * linux-low.c (siginfo_fixup): Likewise.
3484 (linux_xfer_siginfo): Likewise.
3485 * linux-low.h (struct linux_target_ops) <siginfo_fixup>:
3486 Likewise.
3487 * linux-x86-low.c (x86_siginfo_fixup): Likewise.
3488
34892016-02-02 Walfred Tedeschi <walfred.tedeschi@intel.com>
3490
3491 * configure.srv (x86_64-*-linux*): Add amd64-linux-siginfo.o
3492 to srv_tgtobj.
3493 (i[34567]86-*-linux*): Add amd64-linux-siginfo.o
3494 to srv_tgtobj.
3495 * linux-x86-low.c [__x86_64__]: Include
3496 "nat/amd64-linux-siginfo.h".
3497 (compat_siginfo_from_siginfo, siginfo_from_compat_siginfo)
3498 (compat_x32_siginfo_from_siginfo, siginfo_from_compat_x32_siginfo)
3499 (compat_timeval, compat_sigval, compat_x32_clock, cpt_si_pid)
3500 (cpt_si_uid, cpt_si_timerid, cpt_si_overrun, cpt_si_status)
3501 (cpt_si_utime, cpt_si_stime, cpt_si_ptr, cpt_si_addr, cpt_si_band)
3502 (cpt_si_fd, si_timerid, si_overrun): Move from
3503 nat/amd64-linux-siginfo.c.
3504 * Makefile.in (amd64-linux-siginfo.o:): New rule.
3505
35062016-01-28 Simon Marchi <simon.marchi@ericsson.com>
3507
3508 * server.c (skip_to_semicolon): Remove.
3509 (process_point_options): Use strchrnul instead of
3510 skip_to_semicolon.
3511
35122016-01-26 Yao Qi <yao.qi@linaro.org>
3513
3514 * linux-arm-low.c (arm_gdbserver_get_next_pcs): Remove argument pc.
3515 * linux-low.c (install_software_single_step_breakpoints): Don't
3516 call regcache_read_pc.
3517 * linux-low.h (struct linux_target_ops) <get_next_pcs>: Remove
3518 argument pc.
3519
35202016-01-26 Yao Qi <yao.qi@linaro.org>
3521
3522 * linux-low.c (install_software_single_step_breakpoints): Call
3523 regcache_read_pc instead of get_pc.
3524
35252016-01-26 Yao Qi <yao.qi@linaro.org>
3526
3527 * remote-utils.c (remote_close) [!USE_WIN32API]: Ignore SIGIO.
3528 (unblock_async_io): Rename to ...
3529 (block_unblock_async_io): ... it. New function.
3530 (enable_async_io): Don't install SIGIO handler. Unblock it
3531 instead.
3532 (disable_async_io): Don't ignore SIGIO. Block it instead.
3533 (initialize_async_io): Install SIGIO handler. Don't call
3534 unblock_async_io.
3535
35362016-01-26 Yao Qi <yao.qi@linaro.org>
3537
3538 * remote-utils.c (getpkt): If the buffer isn't empty, and the
3539 first character is '\003', call *the_target->request_interrupt.
3540
35412016-01-25 Yao Qi <yao.qi@linaro.org>
3542
3543 * remote-utils.c (new_thread_notify): Remove.
3544 (dead_thread_notify): Likewise.
3545 * remote-utils.h (new_thread_notify): Remove declaration.
3546 (dead_thread_notify): Likewise.
3547
35482016-01-23 Marcin Kościelnicki <koriakin@0x04.net>
3549
3550 * gdb.trace/pending.exp: Fix expected message on continue.
3551
35522016-01-22 Marcin Kościelnicki <koriakin@0x04.net>
3553
3554 * tracepoint.c (write_inferior_data_ptr): Cast to uintptr_t, so that
3555 it works properly on big-endian machines where sizeof (CORE_ADDR)
3556 != sizeof (void *).
3557
35582016-01-21 Pedro Alves <palves@redhat.com>
3559
3560 * Makefile.in (COMPILER_CFLAGS, CXXFLAGS): New.
3561 (INTERNAL_CFLAGS_BASE): Use COMPILER_CFLAGS instead of CFLAGS.
3562 * configure: Regenerate.
3563
35642016-01-21 Yao Qi <yao.qi@linaro.org>
3565
3566 * linux-arm-low.c (arm_sigreturn_next_pc): Add parameter
3567 is_thumb and set it according to CPSR saved on the stack.
3568 (get_next_pcs_syscall_next_pc): Pass is_thumb to
3569 arm_sigreturn_next_pc.
3570
35712016-01-18 Yao Qi <yao.qi@linaro.org>
3572
3573 * linux-low.c (linux_set_pc_64bit): New function.
3574 (linux_get_pc_64bit): New function.
3575 * linux-low.h (linux_set_pc_64bit, linux_get_pc_64bit):
3576 Declare.
3577 * linux-sparc-low.c (debug_threads): Remove declaration.
3578 (sparc_get_pc): Remove.
3579 (the_low_target): Use linux_get_pc_64bit instead of
3580 sparc_get_pc.
3581 * linux-tile-low.c (tile_get_pc, tile_set_pc): Remove.
3582 (the_low_target): Use linux_get_pc_64bit and
3583 linux_set_pc_64bit.
3584
35852016-01-18 Yao Qi <yao.qi@linaro.org>
3586
3587 * linux-arm-low.c (debug_threads): Remove declaration.
3588 (arm_get_pc, arm_set_pc): Remove.
3589 (the_low_target): Use linux_get_pc_32bit and
3590 linux_set_pc_32bit.
3591 * linux-bfin-low.c (bfin_get_pc, bfin_set_pc): Remove.
3592 (the_low_target): Use linux_get_pc_32bit and
3593 linux_set_pc_32bit.
3594 * linux-cris-low.c (debug_threads): Remove declaration.
3595 (cris_get_pc, cris_set_pc,): Remove.
3596 (the_low_target): Use linux_get_pc_32bit and
3597 linux_set_pc_32bit.
3598 * linux-crisv32-low.c (debug_threads): Remove declaration.
3599 (cris_get_pc, cris_set_pc): Remove.
3600 (the_low_target): Use linux_get_pc_32bit and
3601 linux_set_pc_32bit.
3602 * linux-low.c: Include inttypes.h.
3603 (linux_get_pc_32bit, linux_set_pc_32bit): New functions.
3604 * linux-low.h (linux_get_pc_32bit, linux_set_pc_32bit): Declare.
3605 * linux-m32r-low.c (m32r_get_pc, m32r_set_pc): Remove.
3606 (the_low_target): Use linux_get_pc_32bit and
3607 linux_set_pc_32bit.
3608 * linux-m68k-low.c (m68k_get_pc, m68k_set_pc): Remove.
3609 (the_low_target): Use linux_get_pc_32bit and
3610 linux_set_pc_32bit.
3611 * linux-nios2-low.c (nios2_get_pc, nios2_set_pc): Remove.
3612 (the_low_target): Use linux_get_pc_32bit and
3613 linux_set_pc_32bit.
3614 * linux-sh-low.c (sh_get_pc, sh_set_pc): Remove.
3615 (the_low_target): Use linux_get_pc_32bit and
3616 linux_set_pc_32bit.
3617 * linux-xtensa-low.c (xtensa_get_pc, xtensa_set_pc): Remove.
3618 (the_low_target): Use linux_get_pc_32bit and
3619 linux_set_pc_32bit.
3620
36212016-01-18 Gary Benson <gbenson@redhat.com>
3622
3623 * configure.ac (AC_FUNC_FORK): New check.
3624 * config.in: Regenerate.
3625 * configure: Likewise.
3626
36272016-01-14 Yao Qi <yao.qi@linaro.org>
3628
3629 * linux-aarch32-low.c (thumb2_breakpoint): Make it static.
3630 * linux-aarch32-low.h (thumb2_breakpoint): Remove declaration.
3631 * linux-arm-low.c (arm_gdbserver_get_next_pcs): Pass 1 to
3632 arm_get_next_pcs_ctor.
3633
36342016-01-12 Josh Stone <jistone@redhat.com>
3635 Philippe Waroquiers <philippe.waroquiers@skynet.be>
3636
3637 * inferiors.h: Include "gdb_vecs.h".
3638 (struct process_info): Add syscalls_to_catch.
3639 * inferiors.c (remove_process): Free syscalls_to_catch.
3640 * remote-utils.c (prepare_resume_reply): Report syscall_entry and
3641 syscall_return stops.
3642 * server.h (UNKNOWN_SYSCALL, ANY_SYSCALL): Define.
3643 * server.c (handle_general_set): Handle QCatchSyscalls.
3644 (handle_query): Report support for QCatchSyscalls.
3645 * target.h (struct target_ops): Add supports_catch_syscall.
3646 (target_supports_catch_syscall): New macro.
3647 * linux-low.h (struct linux_target_ops): Add get_syscall_trapinfo.
3648 (struct lwp_info): Add syscall_state.
3649 * linux-low.c (handle_extended_wait): Mark syscall_state as an entry.
3650 Maintain syscall_state and syscalls_to_catch across exec.
3651 (get_syscall_trapinfo): New function, proxy to the_low_target.
3652 (linux_low_ptrace_options): Enable PTRACE_O_TRACESYSGOOD.
3653 (linux_low_filter_event): Toggle syscall_state entry/return for
3654 syscall traps, and set it ignored for all others.
3655 (gdb_catching_syscalls_p): New function.
3656 (gdb_catch_this_syscall_p): New function.
3657 (linux_wait_1): Handle SYSCALL_SIGTRAP.
3658 (linux_resume_one_lwp_throw): Add PTRACE_SYSCALL possibility.
3659 (linux_supports_catch_syscall): New function.
3660 (linux_target_ops): Install it.
3661 * linux-x86-low.c (x86_get_syscall_trapinfo): New function.
3662 (the_low_target): Install it.
3663
36642016-01-12 Mike Frysinger <vapier@gentoo.org>
3665
3666 * acinclude.m4: Include new ../warning.m4 file.
3667 * configure: Regenerated.
3668 * configure.ac: Replace all warning logic with AM_GDB_WARNINGS.
3669
36702016-01-12 Mike Frysinger <vapier@gentoo.org>
3671
3672 * ax.c (is_goto_target): Mark static.
3673 * linux-low.c (register_addr): Likewise.
3674 (linux_fetch_registers, linux_store_registers): Likewise.
3675 * mem-break.c (any_persistent_commands): Fix old prototype.
3676 (add_commands_to_breakpoint): Mark static.
3677 * regcache.c (find_register_by_name): Delete unused func.
3678 * remote-utils.c (hex_or_minus_one): Mark static.
3679 * server.c (monitor_show_help): Mark static.
3680 (handle_query, handle_v_cont, handle_v_attach, handle_v_kill,
3681 handle_v_requests): Likewise.
3682
36832016-01-12 Pedro Alves <palves@redhat.com>
3684
3685 Remove use of the registered trademark symbol throughout.
3686
36872016-01-08 Yao Qi <yao.qi@linaro.org>
3688
3689 * remote-utils.c (getpkt): If c is '\003', call target hook
3690 request_interrupt.
3691
36922016-01-06 Yao Qi <yao.qi@linaro.org>
3693
3694 * linux-aarch32-low.h (arm_abi_breakpoint): Move to
3695 linux-aarch32-low.c.
3696 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
3697 (arm_breakpoint_len, thumb_breakpoint_len): Likewise.
3698 (thumb2_breakpoint, thumb2_breakpoint_len): Likewise.
3699 (thumb2_breakpoint): Declare.
3700 * linux-aarch32-low.c (arm_abi_breakpoint): Moved from
3701 linux-aarch32-low.h.
3702 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
3703 (arm_breakpoint_len, thumb_breakpoint_len): Likewise.
3704 (thumb2_breakpoint, thumb2_breakpoint_len): Likewise.
3705
37062016-01-01 Joel Brobecker <brobecker@adacore.com>
3707
3708 * gdbreplay.c (gdbreplay_version): Change copyright year in
3709 version message.
3710 * server.c (gdbserver_version): Likewise.
3711
37122015-12-28 Patrick Palka <patrick@parcs.ath.cx>
3713
3714 * server.c (crc32_table): Delete.
3715 (crc32): Use libiberty's xcrc32 function.
3716
37172015-12-22 Joel Brobecker <brobecker@adacore.com>
3718
3719 * lynx-low.c (lynx_delete_thread_callback): New function.
3720 (lynx_mourn): Properly delete our process and all of its
3721 threads. Remove call to clear_inferiors.
3722
37232015-12-22 Joel Brobecker <brobecker@adacore.com>
3724
3725 * target.c (thread_search_callback): Add check that
3726 the thread_stopped target callback is not NULL before
3727 calling it.
3728
37292015-12-21 Yao Qi <yao.qi@linaro.org>
3730
3731 * linux-aarch32-low.h [__aarch64__]: Use arm_abi_breakpoint
3732 arm breakpoint.
3733
37342015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
3735
3736 * server.c (handle_query): Call target_supports_software_single_step.
3737
37382015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
3739
3740 * linux-low.c (single_step): New function.
3741 (linux_resume_one_lwp_throw): Call single_step.
3742 (start_step_over): Likewise.
3743
37442015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
3745
3746 * Makefile.in (SFILES): Append arch/arm-linux.c,
3747 arch/arm-get-next-pcs.c.
3748 (arm-linux.o): New rule.
3749 (arm-get-next-pcs.o): New rule.
3750 * configure.srv (arm*-*-linux*): Add arm-get-next-pcs.o,
3751 arm-linux.o.
3752 * linux-aarch32-low.c (arm_abi_breakpoint): Remove macro. Moved
3753 to linux-aarch32-low.c.
3754 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
3755 (arm_breakpoint_len, thumb_breakpoint): Likewise.
3756 (thumb_breakpoint_len, thumb2_breakpoint): Likewise.
3757 (thumb2_breakpoint_len): Likewise.
3758 (arm_is_thumb_mode): Make non-static.
3759 * linux-aarch32-low.h (arm_abi_breakpoint): New macro. Moved
3760 from linux-aarch32-low.c.
3761 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
3762 (arm_breakpoint_len, thumb_breakpoint): Likewise.
3763 (thumb_breakpoint_len, thumb2_breakpoint): Likewise.
3764 (thumb2_breakpoint_len): Likewise.
3765 (arm_is_thumb_mode): New declaration.
3766 * linux-arm-low.c: Include arch/arm-linux.h
3767 aarch/arm-get-next-pcs.h, sys/syscall.h.
3768 (get_next_pcs_ops): New struct.
3769 (get_next_pcs_addr_bits_remove): New function.
3770 (get_next_pcs_is_thumb): New function.
3771 (get_next_pcs_read_memory_unsigned_integer): Likewise.
3772 (arm_sigreturn_next_pc): Likewise.
3773 (get_next_pcs_syscall_next_pc): Likewise.
3774 (arm_gdbserver_get_next_pcs): Likewise.
3775 (struct linux_target_ops) <arm_gdbserver_get_next_pcs>:
3776 Initialize.
3777 * linux-low.h: Move CORE_ADDR vector definition to gdb_vecs.h.
3778 * server.h: Include gdb_vecs.h.
3779
37802015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
3781
3782 * Makefile.in (SFILES): Append common/common-regcache.c.
3783 (OBS): Append common-regcache.o.
3784 (common-regcache.o): New rule.
3785 * regcache.c (init_register_cache): Initialize cache to
3786 REG_UNAVAILABLE.
3787 (regcache_raw_read_unsigned): New function.
3788 * regcache.h (REG_UNAVAILABLE, REG_VALID): Replaced by shared
3789 register_status enum.
3790
37912015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
3792
3793 * linux-aarch64-low.c (the_low_targets): Rename
3794 breakpoint_reinsert_addr to get_next_pcs.
3795 * linux-arm-low.c (the_low_targets): Likewise.
3796 * linux-bfin-low.c (the_low_targets): Likewise.
3797 * linux-cris-low.c (the_low_targets): Likewise.
3798 * linux-crisv32-low.c (the_low_targets): Likewise.
3799 * linux-low.c (can_software_single_step): Likewise.
3800 (install_software_single_step_breakpoints): New function.
3801 (start_step_over): Use install_software_single_step_breakpoints.
3802 * linux-low.h: New CORE_ADDR vector.
3803 (struct linux_target_ops) Rename breakpoint_reinsert_addr to
3804 get_next_pcs.
3805 * linux-mips-low.c (the_low_targets): Likewise.
3806 * linux-nios2-low.c (the_low_targets): Likewise.
3807 * linux-sparc-low.c (the_low_targets): Likewise.
3808
38092015-12-17 Pedro Alves <palves@redhat.com>
3810
3811 * linux-low.c (linux_kill_one_lwp): Remove references to
3812 LinuxThreads.
3813 (kill_lwp): Remove HAVE_TKILL_SYSCALL check. No longer fall back
3814 to 'kill'.
3815 (linux_init_signals): Delete.
3816 (initialize_low): Adjust.
3817 * thread-db.c (thread_db_init): Remove LinuxThreads reference.
3818
38192015-12-16 Pedro Alves <palves@redhat.com>
3820
3821 * configure.ac (compiler warning flags): When testing a
3822 -Wno-foo option, check whether -Wfoo works instead.
3823 * configure: Regenerate.
3824
38252015-12-11 Don Breazeal <donb@codesourcery.com>
3826
3827 * server.c (process_serial_event): Don't exit from gdbserver
3828 in remote mode if there are still active inferiors.
3829
38302015-12-11 Yao Qi <yao.qi@linaro.org>
3831
3832 * linux-aarch64-low.c (aarch64_breakpoint_at): Call
3833 arm_breakpoint_at if the process is 32-bit.
3834
38352015-12-11 Yao Qi <yao.qi@linaro.org>
3836
3837 * linux-aarch32-low.c [__aarch64__]: Use arm_abi_breakpoint
3838 arm breakpoint.
3839
38402015-12-07 Yao Qi <yao.qi@linaro.org>
3841
3842 * configure.srv: Append arm.o to srv_tgtobj for
3843 aarch64*-*-linux* target.
3844 * linux-aarch32-low.c (arm_abi_breakpoint): New macro. Moved
3845 from linux-arm-low.c.
3846 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
3847 (arm_breakpoint_len, thumb_breakpoint): Likewise.
3848 (thumb_breakpoint_len, thumb2_breakpoint): Likewise.
3849 (thumb2_breakpoint_len): Likewise.
3850 (arm_is_thumb_mode, arm_breakpoint_at): Likewise.
3851 (arm_breakpoint_kinds): Likewise.
3852 (arm_breakpoint_kind_from_pc): Likewise.
3853 (arm_sw_breakpoint_from_kind): Likewise.
3854 (arm_breakpoint_kind_from_current_state): Likewise.
3855 * linux-aarch32-low.h (arm_breakpoint_kind_from_pc): Declare.
3856 (arm_sw_breakpoint_from_kind): Declare.
3857 (arm_breakpoint_kind_from_current_state): Declare.
3858 (arm_breakpoint_at): Declare.
3859 * linux-aarch64-low.c (aarch64_sw_breakpoint_from_kind): Call
3860 arm_sw_breakpoint_from_kind if process is 32-bit.
3861 (aarch64_breakpoint_kind_from_pc): New function.
3862 (aarch64_breakpoint_kind_from_current_state): New function.
3863 (the_low_target): Initialize fields breakpoint_kind_from_pc
3864 and breakpoint_kind_from_current_state.
3865 * linux-arm-low.c (arm_breakpoint_kinds): Move to
3866 linux-aarch32-low.c.
3867 (arm_abi_breakpoint, arm_eabi_breakpoint): Likewise.
3868 (arm_breakpoint, arm_breakpoint_len): Likewise.
3869 (thumb_breakpoint, thumb_breakpoint_len): Likewise.
3870 (thumb2_breakpoint, thumb2_breakpoint_len): Likewise.
3871 (arm_is_thumb_mode): Likewise.
3872 (arm_breakpoint_at): Likewise.
3873 (arm_breakpoint_kind_from_pc): Likewise.
3874 (arm_sw_breakpoint_from_kind): Likewise.
3875 (arm_breakpoint_kind_from_current_state): Likewise.
3876
3877 Revert:
3878 2015-08-04 Yao Qi <yao.qi@linaro.org>
3879
3880 * linux-aarch64-low.c (aarch64_supports_z_point_type): Return
3881 0 for Z_PACKET_SW_BP if it may be used in multi-arch debugging.
3882 * server.c (extended_protocol): Remove "static".
3883 * server.h (extended_protocol): Declare it.
3884
38852015-12-04 Josh Stone <jistone@redhat.com>
3886
3887 * target.h (struct target_ops) <arch_setup>: Rename to ...
3888 (struct target_ops) <post_create_inferior>: ... this.
3889 (target_arch_setup): Rename to ...
3890 (target_post_create_inferior): ... this, calling post_create_inferior.
3891 * server.c (start_inferior): Update target_arch_setup calls to
3892 target_post_create_inferior.
3893 * linux-low.c (linux_low_ptrace_options): Forward declare.
3894 (linux_arch_setup): Update its comment for general use.
3895 (linux_post_create_inferior): New, run arch_setup and setup ptrace.
3896 (struct linux_target_ops): Use linux_post_create_inferior.
3897 * lynx-low.c (struct lynx_target_ops): Update arch_setup stub comment
3898 to post_create_inferior.
3899 * nto-low.c (struct nto_target_ops): Likewise.
3900 * spu-low.c (struct spu_target_ops): Likewise.
3901 * win32-low.c (struct win32_target_ops): Likewise.
3902
39032015-12-03 Antoine Tremblay <antoine.tremblay@ericsson.com>
3904
3905 * linux-arm-low.c: Remove duplicate arch/arm.h include.
3906
39072015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
3908
3909 * linux-arm-low.c (arm_reinsert_addr): Remove function.
3910 (struct linux_target_ops <breakpoint_reinsert_addr>: Set to NULL.
3911 * linux-cris-low.c (cris_reinsert_addr> Remove function.
3912 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
3913 * linux-crisv32-low.c (cris_reinsert_addr): Remove function.
3914 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
3915 * linux-mips-low.c (mips_reinsert_addr): Remove function.
3916 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
3917 * linux-nios2-low.c (nios2_reinsert_addr): Remove function.
3918 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
3919 * linux-sparc-low.c (sparc_reinsert_addr): Remove function.
3920 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
3921
39222015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
3923
3924 * linux-low.c (linux_look_up_symbols): Don't call
3925 linux_supports_traceclone.
3926 * linux-low.h (thread_db_init): Remove use_events argument.
3927 * thread-db.c (thread_db_use_event): Remove global variable.
3928 (struct thread_db) <td_thr_event_enable_p>: Remove field.
3929 (struct thread_db) <td_create_bp>: Remove field.
3930 (thread_db_create_event): Remove function.
3931 (thread_db_enable_reporting): Likewise.
3932 (find_one_thread): Don't check for thread_db_use_events.
3933 (attach_thread): Likewise.
3934 (thread_db_load_search): Remove td_thr_event_enable_p initialization.
3935 (try_thread_db_load_1): Don't check for thread_db_use_events.
3936 (thread_db_init): Remove use_events argument and thread events
3937 handling.
3938 (remove_thread_event_breakpoints): Remove function.
3939 (thread_db_detach): Remove call to remove_thred_event_breakpoints.
3940
39412015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
3942
3943 * linux-aarch64-low.c (aarch64_supports_hardware_single_step):
3944 New function.
3945 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
3946 * linux-arm-low.c (arm_supports_hardware_single_step): New function.
3947 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
3948 * linux-bfin-low.c (bfin_supports_hardware_single_step): New function.
3949 (struct linux_target_ops) <bfin_supports_hardware_single_step>:
3950 Initialize.
3951 * linux-crisv32-low.c (cris_supports_hardware_single_step):
3952 New function.
3953 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
3954 * linux-low.c (can_hardware_single_step): Use
3955 supports_hardware_single_step.
3956 (can_software_single_step): New function.
3957 (start_step_over): Call can_software_single_step.
3958 (linux_supports_hardware_single_step): New function.
3959 (struct target_ops) <supports_software_single_step>: Initialize.
3960 * linux-low.h (struct linux_target_ops)
3961 <supports_hardware_single_step>: Initialize.
3962 * linux-m32r-low.c (m32r_supports_hardware_single_step): New function.
3963 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
3964 * linux-ppc-low.c (ppc_supports_hardware_single_step): New function.
3965 (struct linux_target_ops) <supports_hardware_single_step> Initialize.
3966 * linux-s390-low.c (s390_supports_hardware_single_step): New function.
3967 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
3968 * linux-sh-low.c (sh_supports_hardware_single_step): New function.
3969 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
3970 * linux-tic6x-low.c (tic6x_supports_hardware_single_step): New function.
3971 (struct linux_target_ops) <tic6x_supports_hardware_single_step>:
3972 Initialize.
3973 * linux-tile-low.c (tile_supports_hardware_single_step): New function.
3974 (struct linux_target_ops) <tile_supports_hardware_single_step>:
3975 Initialize.
3976 * linux-x86-low.c (x86_supports_hardware_single_step) New function.
3977 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
3978 * linux-xtensa-low.c (xtensa_supports_hardware_single_step):
3979 New function.
3980 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
3981 * target.h (struct target_ops): <supports_software_single_step>:
3982 New field.
3983 (target_supports_software_single_step): New macro.
3984
39852015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
3986
3987 * linux-low.c (linux_wait_1): Fix pc advance condition.
3988 * mem-break.c (reinsert_breakpoint_inserted_here): New function.
3989 * mem-break.h (reinsert_breakpoint_inserted_here): New declaration.
3990
39912015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
3992
3993 * linux-arm-low.c (arm_is_thumb_mode): New function.
3994 (arm_breakpoint_at): Use arm_is_thumb_mode.
3995 (arm_breakpoint_kind_from_current_state): New function.
3996 (struct linux_target_ops) <breakpoint_kind_from_current_state>:
3997 Initialize.
3998 * linux-low.c (linux_wait_1): Call breakpoint_kind_from_current_state.
3999 (linux_breakpoint_kind_from_current_state): New function.
4000 (struct target_ops <breakpoint_kind_from_current_state>: Initialize.
4001 * linux-low.h (struct linux_target_ops)
4002 <breakpoint_kind_from_current_state>: New field.
4003 * target.h (struct target_ops): Likewise.
4004 (target_breakpoint_kind_from_current_state): New macro.
4005
40062015-11-30 Pedro Alves <palves@redhat.com>
4007
4008 * linux-low.c (linux_resume): Wake up the event loop before
4009 returning.
4010
40112015-11-30 Pedro Alves <palves@redhat.com>
4012
4013 * mem-break.c (check_gdb_bp_preconditions): Remove current_thread
4014 check.
4015 (set_gdb_breakpoint): If prepare_to_access_memory fails, set *ERR
4016 to -1.
4017 * target.c (struct thread_search): New structure.
4018 (thread_search_callback): New function.
4019 (prev_general_thread): New global.
4020 (prepare_to_access_memory, done_accessing_memory): New functions.
4021 * target.h (prepare_to_access_memory, done_accessing_memory):
4022 Replace macros with function declarations.
4023
40242015-11-30 Pedro Alves <palves@redhat.com>
4025
4026 PR 14618
4027 * linux-low.c (linux_wait_1): If the last resumed thread is gone,
4028 report TARGET_WAITKIND_NO_RESUMED.
4029 * remote-utils.c (prepare_resume_reply): Handle
4030 TARGET_WAITKIND_NO_RESUMED.
4031 * server.c (report_no_resumed): New global.
4032 (handle_query) <qSupported>: Handle "no-resumed+". Report
4033 "no-resumed+" support.
4034 (resume): When the target reports TARGET_WAITKIND_NO_RESUMED, only
4035 return error if the client doesn't support no-resumed events.
4036 (push_stop_notification): New function.
4037 (handle_target_event): Use it. Report TARGET_WAITKIND_NO_RESUMED
4038 events if the client supports them.
4039
40402015-11-30 Pedro Alves <palves@redhat.com>
4041
4042 * linux-low.c (thread_still_has_status_pending_p): Don't check
4043 vCont;t here.
4044 (lwp_resumed): New function.
4045 (status_pending_p_callback): Return early if the LWP is not
4046 supposed to be resumed.
4047
40482015-11-30 Pedro Alves <palves@redhat.com>
4049
4050 * linux-low.c (handle_extended_wait): Assert that the LWP's
4051 waitstatus is TARGET_WAITKIND_IGNORE. If GDB wants to hear about
4052 thread create events, leave the new child's status pending.
4053 (linux_low_filter_event): If GDB wants to hear about thread exit
4054 events, leave the LWP marked dead and don't delete it.
4055 (linux_wait_for_event_filtered): Don't check for thread exit.
4056 (filter_exit_event): New function.
4057 (linux_wait_1): Use it, when returning an exit event.
4058 (linux_resume_one_lwp_throw): Assert that the LWP's
4059 waitstatus is TARGET_WAITKIND_IGNORE.
4060 * remote-utils.c (prepare_resume_reply): Handle
4061 TARGET_WAITKIND_THREAD_CREATED and TARGET_WAITKIND_THREAD_EXITED.
4062 * server.c (report_thread_events): New global.
4063 (handle_general_set): Handle QThreadEvents.
4064 (handle_query) <qSupported>: Handle and report QThreadEvents+;
4065 (handle_target_event): Handle TARGET_WAITKIND_THREAD_CREATED and
4066 TARGET_WAITKIND_THREAD_EXITED.
4067 * server.h (report_thread_events): Declare.
4068
40692015-11-30 Pedro Alves <palves@redhat.com>
4070
4071 * linux-low.c (resume_stopped_resumed_lwps): Don't check whether
4072 the thread's last_resume_kind was resume_stop.
4073
40742015-11-30 Pedro Alves <palves@redhat.com>
4075
4076 * linux-low.c (linux_attach): In non-stop mode, wait for one stop
4077 before returning.
4078
40792015-11-30 Pedro Alves <palves@redhat.com>
4080
4081 * server.c (handle_v_requests): Handle vCtrlC.
4082
40832015-11-30 Pedro Alves <palves@redhat.com>
4084
4085 * gdbthread.h (find_any_thread_of_pid): Declare.
4086 * inferiors.c (thread_of_pid, find_any_thread_of_pid): New
4087 functions.
4088 * server.c (handle_query): If current_thread is NULL, look for
4089 another thread of the selected process.
4090
40912015-11-26 Daniel Colascione <dancol@dancol.org>
4092 Simon Marchi <simon.marchi@ericsson.com>
4093
4094 * linux-low.c (linux_target_ops): Use linux_proc_tid_get_name.
4095 * server.c (handle_qxfer_threads_worker): Refactor to include thread
4096 name in reply.
4097 * target.h (struct target_ops) <thread_name>: New field.
4098 (target_thread_name): New macro.
4099
41002015-11-23 Joel Brobecker <brobecker@adacore.com>
4101
4102 * regcache.h (regcache_invalidate_pid): Add declaration.
4103 * regcache.c (regcache_invalidate_pid): New function, extracted
4104 from regcache_invalidate.
4105 (regcache_invalidate): Reimplement using regcache_invalidate_pid.
4106 Add trivial documentation comment.
4107 * lynx-low.c: Use regcache_invalidate_pid instead of
4108 regcache_invalidate.
4109
41102015-11-23 Joel Brobecker <brobecker@adacore.com>
4111
4112 * configure.ac: Do not call AC_CHECK_TYPES for Elf32_auxv_t
4113 and Elf64_auxv_t if the target is Android.
4114
41152015-11-22 Doug Evans <xdje42@gmail.com>
4116
4117 * target.h: #include <sys/types.h>.
4118
41192015-11-19 Pedro Alves <palves@redhat.com>
4120
4121 * linux-low.c (linux_process_qsupported): Change prototype.
4122 Adjust.
4123 * linux-low.h (struct linux_target_ops) <process_qsupported>:
4124 Change prototype.
4125 * linux-x86-low.c (x86_linux_process_qsupported): Change prototype
4126 and adjust to loop over all features.
4127 * server.c (handle_query) <qSupported>: Adjust to call
4128 target_process_qsupported once, passing it a vector of unprocessed
4129 features.
4130 * target.h (struct target_ops) <process_qsupported>: Change
4131 prototype.
4132 (target_process_qsupported): Adjust.
4133
41342015-11-19 Pedro Alves <palves@redhat.com>
4135
4136 * configure.ac (ERROR_ON_WARNING): Don't check whether in C++
4137 mode.
4138 * configure: Regenerate.
4139
41402015-11-19 Pedro Alves <palves@redhat.com>
4141
4142 * configure: Regenerate.
4143
41442015-11-19 Yao Qi <yao.qi@linaro.org>
4145
4146 * linux-aarch64-low.c (emit_data_processing_reg): Change opcode
4147 type to uint32_t.
4148
41492015-11-19 Yao Qi <yao.qi@linaro.org>
4150
4151 * linux-aarch64-low.c (enum aarch64_operand_type): New.
4152 (struct aarch64_operand): Move enum out.
4153
41542015-11-19 Yao Qi <yao.qi@linaro.org>
4155
4156 * linux-aarch64-low.c (aarch64_fill_fpregset): Cast buf to
4157 struct user_fpsimd_state *.
4158 (aarch64_store_fpregset): Likewise.
4159
41602015-11-19 Yao Qi <yao.qi@linaro.org>
4161
4162 * linux-aarch64-low.c (aarch64_fill_gregset): Cast buf to
4163 struct user_pt_regs *.
4164 (aarch64_store_gregset): Likewise.
4165
41662015-11-18 Pedro Alves <palves@redhat.com>
4167
4168 * Makefile.in (all_object_files): Add $IPA_OBJS.
4169
41702015-11-17 Pedro Alves <palves@redhat.com>
4171
4172 * win32-low.c (win32_resume): Use gdb_signal_from_host,
4173 GDB_SIGNAL_0 and gdb_signal_to_string.
4174
41752015-11-17 Pedro Alves <palves@redhat.com>
4176
4177 * win32-low.c (handle_output_debug_string): Remove parameter.
4178 (win32_kill): Remove our_status local and adjust call to
4179 handle_output_debug_string.
4180 (get_child_debug_event): Adjust call to
4181 handle_output_debug_string.
4182
41832015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
4184
4185 * linux-mips-low.c (mips_fill_gregset): Add cast.
4186 (mips_store_gregset): Likewise.
4187 (mips_fill_fpregset): Likewise.
4188 (mips_store_fpregset): Likewise.
4189
41902015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
4191
4192 * linux-mips-low.c (mips_add_watchpoint): Rename private to
4193 priv.
4194
41952015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
4196
4197 * linux-mips-low.c (mips_linux_new_thread): Change type of
4198 watch_type to enum target_hw_bp_type.
4199
42002015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
4201
4202 * linux-arm-low.c (raw_bkpt_type_to_arm_hwbp_type):
4203 Change return type to arm_hwbp_type.
4204
42052015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
4206
4207 * linux-aarch32-low.c (arm_fill_gregset): Add cast.
4208 (arm_store_gregset): Likewise.
4209 * linux-arm-low.c (arm_get_hwcap): Likewise.
4210 (arm_read_description): Likewise.
4211
42122015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
4213
4214 * linux-aarch32-low.c (aarch32_regsets): Use NULL_REGSET.
4215
42162015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
4217
4218 * linux-ppc-low.c (ppc_get_hwcap): Add cast.
4219 (ppc_fill_vsxregset): Likewise.
4220 (ppc_store_vsxregset): Likewise.
4221 (ppc_fill_vrregset): Likewise.
4222 (ppc_store_vrregset): Likewise.
4223 (ppc_fill_evrregset): Likewise.
4224 (ppc_store_evrregset): Likewise.
4225
42262015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
4227
4228 * linux-ppc-low.c (ppc_usrregs_info): Remove
4229 forward-declaration.
4230 (ppc_arch_setup): Move lower in file.
4231
42322015-10-30 Simon Marchi <simon.marchi@ericsson.com>
4233
4234 * proc-service.c (ps_pdread): Change CORE_ADDR cast to uintptr_t.
4235 (ps_pdwrite): Likewise.
4236
42372015-10-29 Henrik Wallin <henrik.wallin@windriver.com>
4238
4239 * linux-arm-low.c (arm_new_thread): Move pointer dereference
4240 to after assert checks.
4241
42422015-10-29 Simon Marchi <simon.marchi@ericsson.com>
4243
4244 * proc-service.c (ps_pdread): Add/adjust casts.
4245 (ps_pdwrite): Add/adjust casts.
4246
42472015-10-29 Simon Marchi <simon.marchi@polymtl.ca>
4248
4249 * server.c (handle_search_memory_1): Cast return value of
4250 memmem.
4251
42522015-10-29 Simon Marchi <simon.marchi@polymtl.ca>
4253
4254 * server.c (write_qxfer_response): Change type of data to
4255 gdb_byte *.
4256
42572015-10-29 Pedro Alves <palves@redhat.com>
4258
4259 * mem-break.c (Z_packet_to_bkpt_type): Add cast.
4260
42612015-10-29 Pedro Alves <palves@redhat.com>
4262
4263 * tracepoint.c (clear_installed_tracepoints): Add casts.
4264
42652015-10-29 Pedro Alves <palves@redhat.com>
4266
4267 * server.c (handle_v_cont, process_serial_event): Add enum
4268 gdb_signal casts to signal parsing code.
4269
42702015-10-29 Pedro Alves <palves@redhat.com>
4271
4272 * linux-low.h (NULL_REGSET): Define.
4273 * linux-aarch64-low.c (aarch64_regsets): Use NULL_REGSET.
4274 * linux-arm-low.c (arm_regsets): Likewise.
4275 * linux-crisv32-low.c (cris_regsets): Likewise.
4276 * linux-m68k-low.c (m68k_regsets): Likewise.
4277 * linux-mips-low.c (mips_regsets): Likewise.
4278 * linux-nios2-low.c (nios2_regsets): Likewise.
4279 * linux-ppc-low.c (ppc_regsets): Likewise.
4280 * linux-s390-low.c (s390_regsets): Likewise.
4281 * linux-sh-low.c (sh_regsets): Likewise.
4282 * linux-sparc-low.c (sparc_regsets): Likewise.
4283 * linux-tic6x-low.c (tic6x_regsets): Likewise.
4284 * linux-tile-low.c (tile_regsets): Likewise.
4285 * linux-x86-low.c (x86_regsets): Likewise.
4286 * linux-xtensa-low.c (xtensa_regsets): Likewise.
4287
42882015-10-29 Pedro Alves <palves@redhat.com>
4289
4290 * linux-low.h (NULL_REGSET): Define.
4291 * linux-aarch64-low.c (aarch64_regsets): Use NULL_REGSET.
4292 * linux-arm-low.c (arm_regsets): Likewise.
4293 * linux-crisv32-low.c (cris_regsets): Likewise.
4294 * linux-m68k-low.c (m68k_regsets): Likewise.
4295 * linux-mips-low.c (mips_regsets): Likewise.
4296 * linux-nios2-low.c (nios2_regsets): Likewise.
4297 * linux-ppc-low.c (ppc_regsets): Likewise.
4298 * linux-s390-low.c (s390_regsets): Likewise.
4299 * linux-sh-low.c (sh_regsets): Likewise.
4300 * linux-sparc-low.c (sparc_regsets): Likewise.
4301 * linux-tic6x-low.c (tic6x_regsets): Likewise.
4302 * linux-tile-low.c (tile_regsets): Likewise.
4303 * linux-x86-low.c (x86_regsets): Likewise.
4304 * linux-xtensa-low.c (xtensa_regsets): Likewise.
4305
43062015-10-26 Doug Evans <dje@google.com>
4307
4308 * linux-low.c (__SIGRTMIN): Move to nat/linux-nat.h.
4309
43102015-10-26 Doug Evans <dje@google.com>
4311
4312 * linux-low.c (W_STOPCODE): Moved to common/gdb_wait.h.
4313
43142015-10-26 Doug Evans <dje@google.com>
4315
4316 * thread-db.c (find_one_thread): Cast ti.ti_tid to unsigned long
4317 for debug_printf.
4318 (attach_thread, find_new_threads_callback): Ditto.
4319
43202015-10-23 Antoine Tremblay <antoine.tremblay@ericsson.com>
4321
4322 * mem-break.h (set_breakpoint_data): Remove.
4323
43242015-10-23 Antoine Tremblay <antoine.tremblay@ericsson.com>
4325
4326 * nto-low.c (nto_sw_breakpoint_from_kind): New function.
4327 (struct target_ops) <sw_breakpoint_from_kind>: Initialize.
4328 (initialize_low): Remove set_breakpoint_data call.
4329 * spu-low.c (spu_sw_breakpoint_from_kind): New function.
4330 (struct target_ops) <sw_breakpoint_from_kind>: Iniitalize.
4331 (initialize_low): Remove set_breakpoint_data call.
4332 * win32-low.c (win32_sw_breakpoint_from_kind): New function.
4333 (struct target_ops) <sw_breakpoint_from_kind>: Initialize.
4334 (initialize_low): Remove set_breakpoint_data call.
4335
43362015-10-23 Antoine Tremblay <antoine.tremblay@ericsson.com>
4337
4338 * linux-low.c (default_breakpoint_kind_from_pc): Move to target.c.
4339 * mem-break.c (set_breakpoint_at): Use target_breakpoint_kind_from_pc.
4340 * target.c (default_breakpoint_kind_from_pc): Moved from linux-low.c
4341 * target.h (target_breakpoint_kind_from_pc): New macro.
4342
43432015-10-22 Antoine Tremblay <antoine.tremblay@ericsson.com>
4344
4345 * linux-low.c (default_breakpoint_kind_from_pc): New function.
4346 (linux_breakpoint_kind_from_pc): Use default_breakpoint_kind_from_pc for
4347 the default breakpoint kind.
4348
43492015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
4350
4351 * linux-arm-low.c (arm_supports_z_point_type): Add software
4352 breakpoint support.
4353
43542015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
4355
4356 * linux-arm-low.c: Refactor breakpoint definitions.
4357 (arm_breakpoint_at): Adjust for arm_abi_breakpoint.
4358 (arm_sw_breakpoint_from_kind): Adjust for arm_breakpoint.
4359
43602015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
4361
4362 * Makefile.in: Add arm.c/o.
4363 * configure.srv: Likewise.
4364 * linux-arm-low.c (arm_breakpoint_kinds): New enum.
4365 (arm_breakpoint_kind_from_pc): New function.
4366 (arm_sw_breakpoint_from_kind): Return proper kind.
4367 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize.
4368
43692015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
4370
4371 * linux-low.c (initialize_low): Ajdust for breakpoint global variables
4372 removal.
4373 * mem-break.c : Remove breakpoint_data/breakpoint_len global variables.
4374 (struct raw_breakpoint) <size>: Remove.
4375 (struct raw_breakpoint) <kind>: Add.
4376 (bp_size): New function.
4377 (bp_opcode): Likewise.
4378 (find_raw_breakpoint_at): Adjust for kind.
4379 (insert_memory_breakpoint): Adjust for kind call bp_size,bp_opcode.
4380 (remove_memory_breakpoint): Adjust for kind call bp_size.
4381 (set_raw_breakpoint_at): Adjust for kind.
4382 (set_breakpoint): Likewise.
4383 (set_breakpoint_at): Call breakpoint_kind_from_pc.
4384 (delete_raw_breakpoint): Adjust for kind.
4385 (delete_breakpoint): Likewise.
4386 (find_gdb_breakpoint): Likewise.
4387 (set_gdb_breakpoint_1): Likewise.
4388 (set_gdb_breakpoint): Likewise.
4389 (delete_gdb_breakpoint_1): Likewise.
4390 (delete_gdb_breakpoint): Likewise.
4391 (uninsert_raw_breakpoint): Likewise.
4392 (reinsert_raw_breakpoint): Likewise.
4393 (set_breakpoint_data): Remove.
4394 (validate_inserted_breakpoint): Adjust for kind call bp_size,bp_opcode.
4395 (check_mem_read): Adjust for kind call bp_size.
4396 (check_mem_write): Adjust for kind call bp_size,bp_opcode.
4397 (clone_one_breakpoint): Adjust for kind.
4398 * mem-break.h (set_gdb_breakpoint): Likewise.
4399 (delete_gdb_breakpoint): Likewise.
4400 * server.c (process_serial_event): Likewise.
4401
44022015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
4403
4404 * linux-aarch64-low.c (aarch64_sw_breakpoint_from_kind): New function.
4405 (struct linux_target_ops) <breakpoint>: Remove.
4406 (struct linux_target_ops) <breakpoint_len>: Remove.
4407 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4408 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4409 * linux-arm-low.c (arm_breakpoint_kind_from_pc): New function.
4410 (arm_sw_breakpoint_from_kind): New function.
4411 * linux-bfin-low.c (bfin_sw_breakpoint_from_kind): New function.
4412 (struct linux_target_ops) <breakpoint>: Remove.
4413 (struct linux_target_ops) <breakpoint_len>: Remove.
4414 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4415 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4416 * linux-cris-low.c (cris_sw_breakpoint_from_kind): New function.
4417 (struct linux_target_ops) <breakpoint>: Remove.
4418 (struct linux_target_ops) <breakpoint_len>: Remove.
4419 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4420 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4421 * linux-crisv32-low.c (cris_sw_breakpoint_from_kind): New function.
4422 (struct linux_target_ops) <breakpoint>: Remove.
4423 (struct linux_target_ops) <breakpoint_len>: Remove.
4424 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4425 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4426 * linux-low.c (linux_wait_1): Call breakpoint_kind_from_pc
4427 and sw_breakpoint_from_kind to increment the pc.
4428 (linux_breakpoint_kind_from_pc): New function.
4429 (linux_sw_breakpoint_from_kind): New function.
4430 (struct target_ops) <sw_breakpoint_from_kind>: Initialize field.
4431 (initialize_low): Call breakpoint_kind_from_pc and
4432 sw_breakpoint_from_kind to replace breakpoint_data/len.
4433 * linux-low.h (struct linux_target_ops) <breakpoint_kind_from_pc>:
4434 New field.
4435 (struct linux_target_ops) <sw_breakpoint_from_kind>: Likewise.
4436 * linux-m32r-low.c (m32r_sw_breakpoint_from_kind): New function.
4437 (struct linux_target_ops) <breakpoint>: Remove.
4438 (struct linux_target_ops) <breakpoint_len>: Remove.
4439 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4440 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4441 * linux-m68k-low.c (m68k_sw_breakpoint_from_kind): New function.
4442 (struct linux_target_ops) <breakpoint>: Remove.
4443 (struct linux_target_ops) <breakpoint_len>: Remove.
4444 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4445 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4446 * linux-mips-low.c (mips_sw_breakpoint_from_kind): New function.
4447 (struct linux_target_ops) <breakpoint>: Remove.
4448 (struct linux_target_ops) <breakpoint_len>: Remove.
4449 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4450 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4451 * linux-nios2-low.c (nios2_sw_breakpoint_from_kind): New function.
4452 (struct linux_target_ops) <breakpoint>: Remove.
4453 (struct linux_target_ops) <breakpoint_len>: Remove.
4454 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4455 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4456 * linux-ppc-low.c (ppc_sw_breakpoint_from_kind): New function.
4457 (struct linux_target_ops) <breakpoint>: Remove.
4458 (struct linux_target_ops) <breakpoint_len>: Remove.
4459 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4460 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4461 * linux-s390-low.c (s390_sw_breakpoint_from_kind): New function.
4462 (struct linux_target_ops) <breakpoint>: Remove.
4463 (struct linux_target_ops) <breakpoint_len>: Remove.
4464 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4465 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4466 * linux-sh-low.c (sh_sw_breakpoint_from_kind): New function.
4467 (struct linux_target_ops) <breakpoint>: Remove.
4468 (struct linux_target_ops) <breakpoint_len>: Remove.
4469 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4470 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4471 * linux-sparc-low.c (sparc_sw_breakpoint_from_kind): New function.
4472 (struct linux_target_ops) <breakpoint>: Remove.
4473 (struct linux_target_ops) <breakpoint_len>: Remove.
4474 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4475 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4476 * linux-tic6x-low.c (tic6x_sw_breakpoint_from_kind): New function.
4477 (struct linux_target_ops) <breakpoint>: Remove.
4478 (struct linux_target_ops) <breakpoint_len>: Remove.
4479 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4480 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4481 * linux-tile-low.c (tile_sw_breakpoint_from_kind): New function.
4482 * linux-x86-low.c (x86_sw_breakpoint_from_kind): New function.
4483 (struct linux_target_ops) <breakpoint>: Remove.
4484 (struct linux_target_ops) <breakpoint_len>: Remove.
4485 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4486 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4487 * linux-xtensa-low.c (xtensa_sw_breakpoint_from_kind) New function.
4488 (struct linux_target_ops) <breakpoint>: Remove.
4489 (struct linux_target_ops) <breakpoint_len>: Remove.
4490 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
4491 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
4492
44932015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
4494
4495 * linux-cris-low.c (cris_get_pc): Remove void arg.
4496
44972015-10-16 Aleksandar Ristovski <aristovski@qnx.com>
4498
4499 * gdbserver/nto-low.c (nto_insert_point, nto_remove_point): Fix
4500 variable name.
4501
45022015-10-16 Aleksandar Ristovski <aristovski@qnx.com>
4503
4504 * inferiors.c (thread_pid_matches_callback): New function.
4505 (find_thread_process): New function.
4506 (remove_thread): Reset current_thread.
4507 (remove_process): Assert threads have been removed first.
4508
45092015-10-15 Yao Qi <yao.qi@linaro.org>
4510
4511 * linux-aarch64-low.c (aarch64_insert_point): Set len to 2
4512 if it is 3.
4513 (aarch64_remove_point): Likewise.
4514 * regcache.c (regcache_register_size): New function.
4515
45162015-10-12 Yao Qi <yao.qi@linaro.org>
4517
4518 * linux-aarch64-low.c: Update all callers as emit_load_store
4519 is renamed to aarch64_emit_load_store.
4520
45212015-10-12 Yao Qi <yao.qi@linaro.org>
4522
4523 * linux-aarch64-low.c: Update all callers of function renaming
4524 from emit_insn to aarch64_emit_insn.
4525
45262015-10-12 Yao Qi <yao.qi@linaro.org>
4527
4528 * linux-aarch64-low.c (enum aarch64_opcodes): Move to
4529 arch/aarch64-insn.h.
4530 (struct aarch64_memory_operand): Likewise.
4531 (ENCODE): Likewise.
4532 (emit_insn): Move to arch/aarch64-insn.c.
4533 (emit_b, emit_bcond, emit_cb, emit_tb): Remove.
4534 (emit_load_store): Move to arch/aarch64-insn.c.
4535 (emit_ldr, emit_ldrb, emit_ldrsw, emit_nop): Remove.
4536 (can_encode_int32): Remove.
4537
45382015-10-12 Yao Qi <yao.qi@linaro.org>
4539
4540 * linux-aarch64-low.c (extract_signed_bitfield): Remove.
4541 (aarch64_decode_ldr_literal): Move to gdb/arch/aarch64-insn.c.
4542 (aarch64_relocate_instruction): Likewise.
4543 (struct aarch64_insn_data): Move to gdb/arch/aarch64-insn.h.
4544 (struct aarch64_insn_visitor): Likewise.
4545
45462015-10-12 Yao Qi <yao.qi@linaro.org>
4547
4548 * linux-aarch64-low.c (struct aarch64_insn_data): New.
4549 (struct aarch64_insn_visitor): New.
4550 (struct aarch64_insn_relocation_data): New.
4551 (aarch64_ftrace_insn_reloc_b): New function.
4552 (aarch64_ftrace_insn_reloc_b_cond): Likewise.
4553 (aarch64_ftrace_insn_reloc_cb): Likewise.
4554 (aarch64_ftrace_insn_reloc_tb): Likewise.
4555 (aarch64_ftrace_insn_reloc_adr): Likewise.
4556 (aarch64_ftrace_insn_reloc_ldr_literal): Likewise.
4557 (aarch64_ftrace_insn_reloc_others): Likewise.
4558 (visitor): New.
4559 (aarch64_relocate_instruction): Use visitor.
4560
45612015-10-12 Yao Qi <yao.qi@linaro.org>
4562
4563 * linux-aarch64-low.c (aarch64_relocate_instruction): Return
4564 int. Add argument buf.
4565 (aarch64_install_fast_tracepoint_jump_pad): Pass buf to
4566 aarch64_relocate_instruction.
4567
45682015-10-12 Yao Qi <yao.qi@linaro.org>
4569
4570 * linux-aarch64-low.c (aarch64_relocate_instruction): Add
4571 argument insn. Remove local variable insn. Don't call
4572 target_read_uint32.
4573 (aarch64_install_fast_tracepoint_jump_pad): Call
4574 target_read_uint32.
4575
45762015-09-30 Yao Qi <yao.qi@linaro.org>
4577
4578 * linux-aarch64-low.c (emit_movk): Shorten a long line.
4579 (emit_load_store_pair): Likewise.
4580
45812015-09-25 Simon Marchi <simon.marchi@ericsson.com>
4582
4583 * dll.c (match_dll): Add cast(s).
4584 (unloaded_dll): Likewise.
4585 * linux-low.c (second_thread_of_pid_p): Likewise.
4586 (delete_lwp_callback): Likewise.
4587 (count_events_callback): Likewise.
4588 (select_event_lwp_callback): Likewise.
4589 (linux_set_resume_request): Likewise.
4590 * server.c (accumulate_file_name_length): Likewise.
4591 (emit_dll_description): Likewise.
4592 (handle_qxfer_threads_worker): Likewise.
4593 (visit_actioned_threads): Likewise.
4594 * thread-db.c (any_thread_of): Likewise.
4595 * tracepoint.c (same_process_p): Likewise.
4596 (match_blocktype): Likewise.
4597 (build_traceframe_info_xml): Likewise.
4598
45992015-09-25 Simon Marchi <simon.marchi@ericsson.com>
4600
4601 * ax.c (gdb_parse_agent_expr): Add cast to allocation result
4602 assignment.
4603 (gdb_unparse_agent_expr): Likewise.
4604 * hostio.c (require_data): Likewise.
4605 (handle_pread): Likewise.
4606 * linux-low.c (disable_regset): Likewise.
4607 (fetch_register): Likewise.
4608 (store_register): Likewise.
4609 (get_dynamic): Likewise.
4610 (linux_qxfer_libraries_svr4): Likewise.
4611 * mem-break.c (delete_fast_tracepoint_jump): Likewise.
4612 (set_fast_tracepoint_jump): Likewise.
4613 (uninsert_fast_tracepoint_jumps_at): Likewise.
4614 (reinsert_fast_tracepoint_jumps_at): Likewise.
4615 (validate_inserted_breakpoint): Likewise.
4616 (clone_agent_expr): Likewise.
4617 * regcache.c (init_register_cache): Likewise.
4618 * remote-utils.c (putpkt_binary_1): Likewise.
4619 (decode_M_packet): Likewise.
4620 (decode_X_packet): Likewise.
4621 (look_up_one_symbol): Likewise.
4622 (relocate_instruction): Likewise.
4623 (monitor_output): Likewise.
4624 * server.c (handle_search_memory): Likewise.
4625 (handle_qxfer_exec_file): Likewise.
4626 (handle_qxfer_libraries): Likewise.
4627 (handle_qxfer): Likewise.
4628 (handle_query): Likewise.
4629 (handle_v_cont): Likewise.
4630 (handle_v_run): Likewise.
4631 (captured_main): Likewise.
4632 * target.c (write_inferior_memory): Likewise.
4633 * thread-db.c (try_thread_db_load_from_dir): Likewise.
4634 * tracepoint.c (init_trace_buffer): Likewise.
4635 (add_tracepoint_action): Likewise.
4636 (add_traceframe): Likewise.
4637 (add_traceframe_block): Likewise.
4638 (cmd_qtdpsrc): Likewise.
4639 (cmd_qtdv): Likewise.
4640 (cmd_qtstatus): Likewise.
4641 (response_source): Likewise.
4642 (response_tsv): Likewise.
4643 (cmd_qtnotes): Likewise.
4644 (gdb_collect): Likewise.
4645 (initialize_tracepoint): Likewise.
4646
46472015-09-21 Pierre Langlois <pierre.langlois@arm.com>
4648
4649 * linux-aarch64-low-.c: Include ax.h and tracepoint.h.
4650 (enum aarch64_opcodes) <RET>, <SUBS>, <AND>, <ORR>, <ORN>,
4651 <EOR>, <LSLV>, <LSRV>, <ASRV>, <SBFM>, <UBFM>, <CSINC>, <MUL>,
4652 <NOP>: New.
4653 (enum aarch64_condition_codes): New enum.
4654 (w0): New static global.
4655 (fp): Likewise.
4656 (lr): Likewise.
4657 (struct aarch64_memory_operand) <type>: New
4658 MEMORY_OPERAND_POSTINDEX type.
4659 (postindex_memory_operand): New helper function.
4660 (emit_ret): New function.
4661 (emit_load_store_pair): New function, factored out of emit_stp
4662 with support for MEMORY_OPERAND_POSTINDEX.
4663 (emit_stp): Rewrite using emit_load_store_pair.
4664 (emit_ldp): New function.
4665 (emit_load_store): Likewise.
4666 (emit_ldr): Mention post-index instruction in comment.
4667 (emit_ldrh): New function.
4668 (emit_ldrb): New function.
4669 (emit_ldrsw): Mention post-index instruction in comment.
4670 (emit_str): Likewise.
4671 (emit_subs): New function.
4672 (emit_cmp): Likewise.
4673 (emit_and): Likewise.
4674 (emit_orr): Likewise.
4675 (emit_orn): Likewise.
4676 (emit_eor): Likewise.
4677 (emit_mvn): Likewise.
4678 (emit_lslv): Likewise.
4679 (emit_lsrv): Likewise.
4680 (emit_asrv): Likewise.
4681 (emit_mul): Likewise.
4682 (emit_sbfm): Likewise.
4683 (emit_sbfx): Likewise.
4684 (emit_ubfm): Likewise.
4685 (emit_ubfx): Likewise.
4686 (emit_csinc): Likewise.
4687 (emit_cset): Likewise.
4688 (emit_nop): Likewise.
4689 (emit_ops_insns): New helper function.
4690 (emit_pop): Likewise.
4691 (emit_push): Likewise.
4692 (aarch64_emit_prologue): New function.
4693 (aarch64_emit_epilogue): Likewise.
4694 (aarch64_emit_add): Likewise.
4695 (aarch64_emit_sub): Likewise.
4696 (aarch64_emit_mul): Likewise.
4697 (aarch64_emit_lsh): Likewise.
4698 (aarch64_emit_rsh_signed): Likewise.
4699 (aarch64_emit_rsh_unsigned): Likewise.
4700 (aarch64_emit_ext): Likewise.
4701 (aarch64_emit_log_not): Likewise.
4702 (aarch64_emit_bit_and): Likewise.
4703 (aarch64_emit_bit_or): Likewise.
4704 (aarch64_emit_bit_xor): Likewise.
4705 (aarch64_emit_bit_not): Likewise.
4706 (aarch64_emit_equal): Likewise.
4707 (aarch64_emit_less_signed): Likewise.
4708 (aarch64_emit_less_unsigned): Likewise.
4709 (aarch64_emit_ref): Likewise.
4710 (aarch64_emit_if_goto): Likewise.
4711 (aarch64_emit_goto): Likewise.
4712 (aarch64_write_goto_address): Likewise.
4713 (aarch64_emit_const): Likewise.
4714 (aarch64_emit_call): Likewise.
4715 (aarch64_emit_reg): Likewise.
4716 (aarch64_emit_pop): Likewise.
4717 (aarch64_emit_stack_flush): Likewise.
4718 (aarch64_emit_zero_ext): Likewise.
4719 (aarch64_emit_swap): Likewise.
4720 (aarch64_emit_stack_adjust): Likewise.
4721 (aarch64_emit_int_call_1): Likewise.
4722 (aarch64_emit_void_call_2): Likewise.
4723 (aarch64_emit_eq_goto): Likewise.
4724 (aarch64_emit_ne_goto): Likewise.
4725 (aarch64_emit_lt_goto): Likewise.
4726 (aarch64_emit_le_goto): Likewise.
4727 (aarch64_emit_gt_goto): Likewise.
4728 (aarch64_emit_ge_got): Likewise.
4729 (aarch64_emit_ops_impl): New static global variable.
4730 (aarch64_emit_ops): New target function, return
4731 &aarch64_emit_ops_impl.
4732 (struct linux_target_ops): Install it.
4733
47342015-09-21 Pierre Langlois <pierre.langlois@arm.com>
4735
4736 * Makefile.in (linux-aarch64-ipa.o, aarch64-ipa.o): New rules.
4737 * configure.srv (aarch64*-*-linux*): Add linux-aarch64-ipa.o and
4738 aarch64-ipa.o.
4739 * linux-aarch64-ipa.c: New file.
4740 * linux-aarch64-low.c: Include arch/aarch64-insn.h, inttypes.h
4741 and endian.h.
4742 (aarch64_get_thread_area): New target method.
4743 (extract_signed_bitfield): New helper function.
4744 (aarch64_decode_ldr_literal): New function.
4745 (enum aarch64_opcodes): New enum.
4746 (struct aarch64_register): New struct.
4747 (struct aarch64_operand): New struct.
4748 (x0): New static global.
4749 (x1): Likewise.
4750 (x2): Likewise.
4751 (x3): Likewise.
4752 (x4): Likewise.
4753 (w2): Likewise.
4754 (ip0): Likewise.
4755 (sp): Likewise.
4756 (xzr): Likewise.
4757 (aarch64_register): New helper function.
4758 (register_operand): Likewise.
4759 (immediate_operand): Likewise.
4760 (struct aarch64_memory_operand): New struct.
4761 (offset_memory_operand): New helper function.
4762 (preindex_memory_operand): Likewise.
4763 (enum aarch64_system_control_registers): New enum.
4764 (ENCODE): New macro.
4765 (emit_insn): New helper function.
4766 (emit_b): New function.
4767 (emit_bcond): Likewise.
4768 (emit_cb): Likewise.
4769 (emit_tb): Likewise.
4770 (emit_blr): Likewise.
4771 (emit_stp): Likewise.
4772 (emit_ldp_q_offset): Likewise.
4773 (emit_stp_q_offset): Likewise.
4774 (emit_load_store): Likewise.
4775 (emit_ldr): Likewise.
4776 (emit_ldrsw): Likewise.
4777 (emit_str): Likewise.
4778 (emit_ldaxr): Likewise.
4779 (emit_stxr): Likewise.
4780 (emit_stlr): Likewise.
4781 (emit_data_processing_reg): Likewise.
4782 (emit_data_processing): Likewise.
4783 (emit_add): Likewise.
4784 (emit_sub): Likewise.
4785 (emit_mov): Likewise.
4786 (emit_movk): Likewise.
4787 (emit_mov_addr): Likewise.
4788 (emit_mrs): Likewise.
4789 (emit_msr): Likewise.
4790 (emit_sevl): Likewise.
4791 (emit_wfe): Likewise.
4792 (append_insns): Likewise.
4793 (can_encode_int32_in): New helper function.
4794 (aarch64_relocate_instruction): New function.
4795 (aarch64_install_fast_tracepoint_jump_pad): Likewise.
4796 (aarch64_get_min_fast_tracepoint_insn_len): Likewise.
4797 (struct linux_target_ops): Install aarch64_get_thread_area,
4798 aarch64_install_fast_tracepoint_jump_pad and
4799 aarch64_get_min_fast_tracepoint_insn_len.
4800
48012015-09-21 Pierre Langlois <pierre.langlois@arm.com>
4802
4803 * Makefile.in (aarch64-insn.o): New rule.
4804 * configure.srv (aarch64*-*-linux*): Add aarch64-insn.o.
4805
48062015-09-21 Yao Qi <yao.qi@linaro.org>
4807
4808 * ax.c [!IN_PROCESS_AGENT] (gdb_agent_op_sizes): Define it.
4809
48102015-09-21 Yao Qi <yao.qi@linaro.org>
4811
4812 * tracepoint.c (max_jump_pad_size): Remove.
4813
48142015-09-18 Yao Qi <yao.qi@linaro.org>
4815
4816 * linux-aarch64-low.c: Don't include sys/uio.h.
4817 (ps_get_thread_area): Call aarch64_ps_get_thread_area.
4818
48192015-09-16 Wei-cheng Wang <cole945@gmail.com>
4820
4821 * tracepoint.c (eval_result_type): Change prototype.
4822 (condition_true_at_tracepoint): Fix argument to compiled_cond.
4823
48242015-09-15 Pedro Alves <palves@redhat.com>
4825
4826 * remote-utils.c (prepare_resume_reply) <TARGET_WAITKIND_EXECD>:
4827 Check whether to report exec events instead of checking whether
4828 multiprocess is enabled.
4829
48302015-09-15 Pedro Alves <palves@redhat.com>
4831
4832 PR remote/18965
4833 * remote-utils.c (prepare_resume_reply): Merge
4834 TARGET_WAITKIND_VFORK_DONE switch case with the
4835 TARGET_WAITKIND_FORKED case.
4836
48372015-09-15 Yao Qi <yao.qi@linaro.org>
4838
4839 * server.c (handle_query): Check string comparison using
4840 "else if" instead of "if".
4841
48422015-09-15 Yao Qi <yao.qi@linaro.org>
4843
4844 * server.c (vCont_supported): New global variable.
4845 (handle_query): Set vCont_supported to 1 if "vContSupported+"
4846 matches. Append ";vContSupported+" to own_buf.
4847 (handle_v_requests): Append ";s;S" to own_buf if target supports
4848 hardware single step or vCont_supported is false.
4849 (capture_main): Set vCont_supported to zero.
4850
48512015-09-15 Yao Qi <yao.qi@linaro.org>
4852
4853 * linux-low.c (linux_supports_conditional_breakpoints): Rename
4854 it to ...
4855 (linux_supports_hardware_single_step): ... New function.
4856 (linux_target_ops): Update.
4857 * lynx-low.c (lynx_target_ops): Set field
4858 supports_hardware_single_step to target_can_do_hardware_single_step.
4859 * nto-low.c (nto_target_ops): Likewise.
4860 * spu-low.c (spu_target_ops): Likewise.
4861 * win32-low.c (win32_target_ops): Likewise.
4862 * target.c (target_can_do_hardware_single_step): New function.
4863 * target.h (struct target_ops) <supports_conditional_breakpoints>:
4864 Remove. <supports_hardware_single_step>: New field.
4865 (target_supports_conditional_breakpoints): Remove.
4866 (target_supports_hardware_single_step): New macro.
4867 (target_can_do_hardware_single_step): Declare.
4868 * server.c (handle_query): Use target_supports_hardware_single_step
4869 instead of target_supports_conditional_breakpoints.
4870
48712015-09-15 Yao Qi <yao.qi@linaro.org>
4872
4873 * linux-aarch64-low.c (aarch64_linux_siginfo_fixup): New
4874 function.
4875 (struct linux_target_ops the_low_target): Install
4876 aarch64_linux_siginfo_fixup.
4877
48782015-09-11 Don Breazeal <donb@codesourcery.com>
4879 Luis Machado <lgustavo@codesourcery.com>
4880
4881 * linux-low.c (linux_mourn): Static declaration.
4882 (linux_arch_setup): Move in front of
4883 handle_extended_wait.
4884 (linux_arch_setup_thread): New function.
4885 (handle_extended_wait): Handle exec events. Call
4886 linux_arch_setup_thread. Make event_lwp argument a
4887 pointer-to-a-pointer.
4888 (check_zombie_leaders): Do not check stopped threads.
4889 (linux_low_ptrace_options): Add PTRACE_O_TRACEEXEC.
4890 (linux_low_filter_event): Add lwp and thread for exec'ing
4891 non-leader thread if leader thread has been deleted.
4892 Refactor code into linux_arch_setup_thread and call it.
4893 Pass child lwp pointer by reference to handle_extended_wait.
4894 (linux_wait_for_event_filtered): Update comment.
4895 (linux_wait_1): Prevent clobbering exec event status.
4896 (linux_supports_exec_events): New function.
4897 (linux_target_ops) <supports_exec_events>: Initialize new member.
4898 * lynx-low.c (lynx_target_ops) <supports_exec_events>: Initialize
4899 new member.
4900 * remote-utils.c (prepare_resume_reply): New stop reason 'exec'.
4901 * server.c (report_exec_events): New global variable.
4902 (handle_query): Handle qSupported query for exec-events feature.
4903 (captured_main): Initialize report_exec_events.
4904 * server.h (report_exec_events): Declare new global variable.
4905 * target.h (struct target_ops) <supports_exec_events>: New
4906 member.
4907 (target_supports_exec_events): New macro.
4908 * win32-low.c (win32_target_ops) <supports_exec_events>:
4909 Initialize new member.
4910
49112015-09-09 Markus Metzger <markus.t.metzger@intel.com>
4912
4913 * linux-low.c (linux_low_enable_btrace): Remove.
4914 (linux_target_ops): Replace linux_low_enable_btrace with
4915 linux_enable_btrace.
4916
49172015-09-03 Yao Qi <yao.qi@linaro.org>
4918
4919 * linux-aarch64-low.c (aarch64_insert_point): Call
4920 aarch64_handle_watchpoint if aarch64_linux_region_ok_for_watchpoint
4921 returns true.
4922
49232015-08-27 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
4924
4925 * linux-low.c (check_stopped_by_breakpoint): Use
4926 GDB_ARCH_IS_TRAP_BRKPT instead of GDB_ARCH_TRAP_BRKPT.
4927
49282015-08-27 Pedro Alves <palves@redhat.com>
4929
4930 * proc-service.c (ps_pdwrite): Return PS_ERR/PS_OK explicily.
4931
49322015-08-26 Simon Marchi <simon.marchi@ericsson.com>
4933
4934 * ax.c (gdb_parse_agent_expr): Replace xmalloc-family function with
4935 the XNEW-family equivalent.
4936 (compile_bytecodes): Likewise.
4937 * dll.c (loaded_dll): Likewise.
4938 * event-loop.c (append_callback_event): Likewise.
4939 (create_file_handler): Likewise.
4940 (create_file_event): Likewise.
4941 * hostio.c (handle_open): Likewise.
4942 * inferiors.c (add_thread): Likewise.
4943 (add_process): Likewise.
4944 * linux-aarch64-low.c (aarch64_linux_new_process): Likewise.
4945 * linux-arm-low.c (arm_new_process): Likewise.
4946 (arm_new_thread): Likewise.
4947 * linux-low.c (add_to_pid_list): Likewise.
4948 (linux_add_process): Likewise.
4949 (handle_extended_wait): Likewise.
4950 (add_lwp): Likewise.
4951 (enqueue_one_deferred_signal): Likewise.
4952 (enqueue_pending_signal): Likewise.
4953 (linux_resume_one_lwp_throw): Likewise.
4954 (linux_resume_one_thread): Likewise.
4955 (linux_read_memory): Likewise.
4956 (linux_write_memory): Likewise.
4957 * linux-mips-low.c (mips_linux_new_process): Likewise.
4958 (mips_linux_new_thread): Likewise.
4959 (mips_add_watchpoint): Likewise.
4960 * linux-x86-low.c (initialize_low_arch): Likewise.
4961 * lynx-low.c (lynx_add_process): Likewise.
4962 * mem-break.c (set_raw_breakpoint_at): Likewise.
4963 (set_breakpoint): Likewise.
4964 (add_condition_to_breakpoint): Likewise.
4965 (add_commands_to_breakpoint): Likewise.
4966 (clone_agent_expr): Likewise.
4967 (clone_one_breakpoint): Likewise.
4968 * regcache.c (new_register_cache): Likewise.
4969 * remote-utils.c (look_up_one_symbol): Likewise.
4970 * server.c (queue_stop_reply): Likewise.
4971 (start_inferior): Likewise.
4972 (queue_stop_reply_callback): Likewise.
4973 (handle_target_event): Likewise.
4974 * spu-low.c (fetch_ppc_memory): Likewise.
4975 (store_ppc_memory): Likewise.
4976 * target.c (set_target_ops): Likewise.
4977 * thread-db.c (thread_db_load_search): Likewise.
4978 (try_thread_db_load_1): Likewise.
4979 * tracepoint.c (add_tracepoint): Likewise.
4980 (add_tracepoint_action): Likewise.
4981 (create_trace_state_variable): Likewise.
4982 (cmd_qtdpsrc): Likewise.
4983 (cmd_qtro): Likewise.
4984 (add_while_stepping_state): Likewise.
4985 * win32-low.c (child_add_thread): Likewise.
4986 (get_image_name): Likewise.
4987
49882015-08-25 Yao Qi <yao.qi@linaro.org>
4989
4990 * linux-aarch64-low.c (aarch64_linux_new_thread): Remove.
4991
49922015-08-25 Yao Qi <yao.qi@linaro.org>
4993
4994 * Makefile.in (aarch64-linux.o): New rule.
4995 * configure.srv (aarch64*-*-linux*): Append aarch64-linux.o to
4996 srv_tgtobj.
4997 * linux-aarch64-low.c: Include nat/aarch64-linux.h.
4998 (aarch64_init_debug_reg_state): Make it extern.
4999 (aarch64_linux_prepare_to_resume): Remove.
5000
50012015-08-25 Yao Qi <yao.qi@linaro.org>
5002
5003 * linux-aarch64-low.c (aarch64_linux_prepare_to_resume): Use
5004 lwp_arch_private_info and ptid_of_lwp.
5005
50062015-08-25 Yao Qi <yao.qi@linaro.org>
5007
5008 * linux-aarch64-low.c (aarch64_get_debug_reg_state): Add argument pid.
5009 Find proc_info by find_process_pid. All callers updated.
5010
50112015-08-25 Yao Qi <yao.qi@linaro.org>
5012
5013 * linux-aarch64-low.c (struct arch64_dr_update_callback_param):
5014 Remove.
5015 (debug_reg_change_callback): Remove.
5016 (aarch64_notify_debug_reg_change): Remove.
5017
50182015-08-25 Yao Qi <yao.qi@linaro.org>
5019
5020 * linux-aarch64-low.c (aarch64_notify_debug_reg_change):
5021 Call current_lwp_ptid.
5022
50232015-08-25 Yao Qi <yao.qi@linaro.org>
5024
5025 * linux-aarch64-low.c (debug_reg_change_callback): Use
5026 debug_printf.
5027
50282015-08-25 Yao Qi <yao.qi@linaro.org>
5029
5030 * linux-aarch64-low.c (debug_reg_change_callback): Use phex.
5031
50322015-08-25 Yao Qi <yao.qi@linaro.org>
5033
5034 * linux-aarch64-low.c (debug_reg_change_callback): Remove comments.
5035
50362015-08-25 Yao Qi <yao.qi@linaro.org>
5037
5038 * linux-aarch64-low.c (debug_reg_change_callback): Re-indent
5039 the code.
5040
50412015-08-25 Yao Qi <yao.qi@linaro.org>
5042
5043 * linux-aarch64-low.c (aarch64_dr_update_callback_param) <pid>:
5044 Remove.
5045 (debug_reg_change_callback): Remove argument entry and add argument
5046 lwp. Remove local variable thread. Don't print thread id in the
5047 debugging output. Don't check whether pid of thread equals to pid.
5048 (aarch64_notify_debug_reg_change): Don't set param.pid. Call
5049 iterate_over_lwps instead find_inferior.
5050
50512015-08-24 Pedro Alves <palves@redhat.com>
5052
5053 * inferiors.c (get_first_process): New function.
5054 * inferiors.h (get_first_process): New declaration.
5055 * remote-utils.c (read_ptid): Default to the first process in the
5056 list, instead of to the current thread's process.
5057
50582015-08-24 Pedro Alves <palves@redhat.com>
5059
5060 * debug.c: Include gdb_sys_time.h instead of sys/time.h.
5061 * event-loop.c: Likewise.
5062 * remote-utils.c: Likewise.
5063 * tracepoint.c: Likewise.
5064
50652015-08-24 Pedro Alves <palves@redhat.com>
5066
5067 * spu-low.c (spu_request_interrupt): Use lwpid_of instead of
5068 ptid_get_lwp.
5069
50702015-08-21 Pedro Alves <palves@redhat.com>
5071
5072 * ax.c (gdb_eval_agent_expr): Return expr_eval_unhandled_opcode
5073 instead of literal 1.
5074
50752015-08-21 Pedro Alves <palves@redhat.com>
5076
5077 * tdesc.c (default_description): Explicitly zero-initialize.
5078
50792015-08-21 Pedro Alves <palves@redhat.com>
5080
5081 PR gdb/18749
5082 * inferiors.c (remove_thread): Discard any pending stop reply for
5083 this thread.
5084 * server.c (remove_all_on_match_pid): Rename to ...
5085 (remove_all_on_match_ptid): ... this. Work with a filter ptid
5086 instead of a pid.
5087 (discard_queued_stop_replies): Change parameter to a ptid. Now
5088 extern.
5089 (handle_v_kill, kill_inferior_callback, captured_main)
5090 (process_serial_event): Adjust.
5091 * server.h (discard_queued_stop_replies): Declare.
5092
50932015-08-21 Pedro Alves <palves@redhat.com>
5094
5095 * linux-low.c (wait_for_sigstop): Always switch to no thread
5096 selected if the previously current thread dies.
5097 * lynx-low.c (lynx_request_interrupt): Use the first thread's
5098 process instead of the current thread's.
5099 * remote-utils.c (input_interrupt): Don't check if there's no
5100 current thread.
5101 * server.c (gdb_read_memory, gdb_write_memory): If setting the
5102 current thread to the general thread fails, error out.
5103 (handle_qxfer_auxv, handle_qxfer_libraries)
5104 (handle_qxfer_libraries_svr4, handle_qxfer_siginfo)
5105 (handle_qxfer_spu, handle_qxfer_statictrace, handle_qxfer_fdpic)
5106 (handle_query): Check if there's a thread selected instead of
5107 checking whether there's any thread in the thread list.
5108 (handle_qxfer_threads, handle_qxfer_btrace)
5109 (handle_qxfer_btrace_conf): Don't error out early if there's no
5110 thread in the thread list.
5111 (handle_v_cont, myresume): Don't set the current thread to the
5112 continue thread.
5113 (process_serial_event) <Hg handling>: Also set thread_id if the
5114 previous general thread is still alive.
5115 (process_serial_event) <g/G handling>: If setting the current
5116 thread to the general thread fails, error out.
5117 * spu-low.c (spu_resume, spu_request_interrupt): Use the first
5118 thread's lwp instead of the current thread's.
5119 * target.c (set_desired_thread): If the desired thread was not
5120 found, leave the current thread pointing to NULL. Return an int
5121 (boolean) indicating success.
5122 * target.h (set_desired_thread): Change return type to int.
5123
51242015-08-20 Max Filippov <jcmvbkbc@gmail.com>
5125
5126 * configure.srv (xtensa*-*-linux*): Add srv_linux_thread_db=yes.
5127 * linux-xtensa-low.c (arch/xtensa.h gdb_proc_service.h): New
5128 #includes.
5129 (ps_get_thread_area): New function.
5130
51312015-08-19 Gary Benson <gbenson@redhat.com>
5132
5133 * hostio.c (handle_pread): Do not attempt to read more data
5134 than hostio_reply_with_data can fit in a packet.
5135
51362015-08-18 Joel Brobecker <brobecker@adacore.com>
5137
5138 * linux-aarch32-low.c (NT_ARM_VFP): Define if not already defined.
5139
51402015-08-14 Matthew Fortune <matthew.fortune@imgtec.com>
5141
5142 * linux-low.c (get_r_debug): Handle DT_MIPS_RLD_MAP_REL.
5143
51442015-08-06 Pedro Alves <palves@redhat.com>
5145
5146 * tracepoint.c (expr_eval_result): Now an int.
5147
51482015-08-06 Pedro Alves <palves@redhat.com>
5149
5150 * gdbthread.h (struct regcache): Forward declare.
5151 (struct thread_info) <regcache_data>: Now a struct regcache
5152 pointer.
5153 * inferiors.c (inferior_regcache_data)
5154 (set_inferior_regcache_data): Now work with struct regcache
5155 pointers.
5156 * inferiors.h (struct regcache): Forward declare.
5157 (inferior_regcache_data, set_inferior_regcache_data): Now work
5158 with struct regcache pointers.
5159 * regcache.c (get_thread_regcache, regcache_invalidate_thread)
5160 (free_register_cache_thread): Remove struct regcache pointer
5161 casts.
5162
51632015-08-06 Pedro Alves <palves@redhat.com>
5164
5165 * server.c (captured_main): On error, print the exception message
5166 to stderr, and if run_once is set, throw a quit.
5167
51682015-08-06 Pedro Alves <palves@redhat.com>
5169
5170 * linux-low.c (move_out_of_jump_pad_callback): Temporarily switch
5171 the current thread.
5172
51732015-08-06 Pedro Alves <palves@redhat.com>
5174
5175 * linux-low.c (linux_write_memory): Rewrite debug output to avoid
5176 reading beyond the passed in buffer length.
5177
51782015-08-06 Pierre Langlois <pierre.langlois@arm.com>
5179
5180 * tracepoint.c (symbol_list) <required>: Remove.
5181
51822015-08-06 Pedro Alves <palves@redhat.com>
5183
5184 * linux-low.c (handle_extended_wait): Set the fork child's suspend
5185 count if stopping and suspending threads.
5186 (check_stopped_by_breakpoint): If stopped by trace, set the LWP's
5187 stop reason to TARGET_STOPPED_BY_SINGLE_STEP.
5188 (linux_detach): Complete an ongoing step-over.
5189 (lwp_suspended_inc, lwp_suspended_decr): New functions. Use
5190 throughout.
5191 (resume_stopped_resumed_lwps): Don't resume a suspended thread.
5192 (linux_wait_1): If passing a signal to the inferior after
5193 finishing a step-over, unsuspend and re-resume all lwps. If we
5194 see a single-step event but the thread should be continuing, don't
5195 pass the trap to gdb.
5196 (stuck_in_jump_pad_callback, move_out_of_jump_pad_callback): Use
5197 internal_error instead of gdb_assert.
5198 (enqueue_pending_signal): New function.
5199 (check_ptrace_stopped_lwp_gone): Add debug output.
5200 (start_step_over): Use internal_error instead of gdb_assert.
5201 (complete_ongoing_step_over): New function.
5202 (linux_resume_one_thread): Don't resume a suspended thread.
5203 (proceed_one_lwp): If the LWP is stepping over a breakpoint, reset
5204 it stepping.
5205
52062015-08-06 Pedro Alves <palves@redhat.com>
5207
5208 * linux-low.c (add_lwp): Set waitstatus to TARGET_WAITKIND_IGNORE.
5209 (linux_thread_alive): Use lwp_is_marked_dead.
5210 (extended_event_reported): Delete.
5211 (linux_wait_1): Check if waitstatus is TARGET_WAITKIND_IGNORE
5212 instead of extended_event_reported.
5213 (mark_lwp_dead): Don't set the 'dead' flag. Store the waitstatus
5214 as well.
5215 (lwp_is_marked_dead): New function.
5216 (lwp_running): Use lwp_is_marked_dead.
5217 * linux-low.h: Delete 'dead' field, and update 'waitstatus's
5218 comment.
5219
52202015-08-06 Pedro Alves <palves@redhat.com>
5221
5222 * linux-low.c (linux_wait_1): Move fork event output out of the
5223 !report_to_gdb check. Pass event_child->waitstatus to
5224 target_waitstatus_to_string instead of ourstatus.
5225
52262015-08-04 Yao Qi <yao.qi@linaro.org>
5227
5228 * linux-aarch64-low.c (aarch64_supports_tracepoints): Return 0
5229 if current_thread is 32 bit.
5230
52312015-08-04 Yao Qi <yao.qi@linaro.org>
5232
5233 * linux-aarch64-low.c (aarch64_supports_z_point_type): Return
5234 0 for Z_PACKET_SW_BP if it may be used in multi-arch debugging.
5235 * server.c (extended_protocol): Remove "static".
5236 * server.h (extended_protocol): Declare it.
5237
52382015-08-04 Yao Qi <yao.qi@linaro.org>
5239
5240 * linux-aarch64-low.c (aarch64_get_pc): Get PC register on
5241 both aarch64 and aarch32.
5242 (aarch64_set_pc): Likewise.
5243
52442015-08-04 Yao Qi <yao.qi@linaro.org>
5245
5246 * configure.srv (case aarch64*-*-linux*): Append arm-with-neon.o
5247 to srv_regobj and append arm-core.xml arm-vfpv3.xml and
5248 arm-with-neon.xml to srv_xmlfiles.
5249 * linux-aarch64-low.c: Include linux-aarch32-low.h.
5250 (is_64bit_tdesc): New function.
5251 (aarch64_linux_read_description): New function.
5252 (aarch64_arch_setup): Call aarch64_linux_read_description.
5253 (regs_info): Rename to regs_info_aarch64.
5254 (aarch64_regs_info): Return right regs_info.
5255 (initialize_low_arch): Call initialize_low_arch_aarch32.
5256
52572015-08-04 Yao Qi <yao.qi@linaro.org>
5258
5259 * configure.srv (srv_tgtobj): Add linux-aarch32-low.o.
5260 * linux-aarch32-low.c: New file.
5261 * linux-aarch32-low.h: New file.
5262 * linux-arm-low.c (arm_fill_gregset): Move it to
5263 linux-aarch32-low.c.
5264 (arm_store_gregset): Likewise.
5265 (arm_fill_vfpregset): Call arm_fill_vfpregset_num
5266 (arm_store_vfpregset): Call arm_store_vfpregset_num.
5267 (arm_arch_setup): Check if PTRACE_GETREGSET works.
5268 (regs_info): Rename to regs_info_arm.
5269 (arm_regs_info): Return regs_info_aarch32 if
5270 have_ptrace_getregset is 1 and target description is
5271 arm_with_neon or arm_with_vfpv3.
5272 (initialize_low_arch): Don't call init_registers_arm_with_neon.
5273 Call initialize_low_arch_aarch32 instead.
5274
52752015-08-04 Yao Qi <yao.qi@linaro.org>
5276
5277 * linux-x86-low.c (have_ptrace_getregset): Move it to ...
5278 * linux-low.c: ... here.
5279 * linux-low.h (have_ptrace_getregset): Declare it.
5280
52812015-08-04 Pedro Alves <palves@redhat.com>
5282
5283 * thread-db.c (struct thread_db): Use new typedefs.
5284 (try_thread_db_load_1): Define local TDB_DLSYM macro and use it in
5285 CHK calls.
5286 (disable_thread_event_reporting): Cast result of dlsym to
5287 destination function pointer type.
5288 (thread_db_mourn): Use td_ta_delete_ftype.
5289
52902015-08-03 Sandra Loosemore <sandra@codesourcery.com>
5291
5292 * linux-nios2-low.c (NIOS2_BREAKPOINT): Conditionalize for
5293 arch variant.
5294 (CDX_BREAKPOINT): Define for R2.
5295 (nios2_breakpoint_at): Check for CDX_BREAKPOINT when R2.
5296 (the_low_target): Add comments.
5297
52982015-07-30 Yao Qi <yao.qi@linaro.org>
5299
5300 * linux-arm-low.c (arm_hwcap): Remove it.
5301 (arm_read_description): New local variable arm_hwcap. Don't
5302 set arm_hwcap to zero.
5303
53042015-07-30 Yao Qi <yao.qi@linaro.org>
5305
5306 * linux-arm-low.c (arm_fill_wmmxregset): Don't use arm_hwcap.
5307 Use regcache->tdesc instead.
5308 (arm_store_wmmxregset): Likewise.
5309 (arm_fill_vfpregset): Likewise.
5310 (arm_store_vfpregset): Likewise.
5311
53122015-07-30 Yao Qi <yao.qi@linaro.org>
5313
5314 * linux-arm-low.c: Include arch/arm.h.
5315 (arm_fill_gregset): Don't use arm_num_regs and arm_regmap.
5316 (arm_store_gregset): Likewise.
5317
53182015-07-29 Simon Marchi <simon.marchi@ericsson.com>
5319
5320 * linux-mips-low.c (mips_linux_prepare_to_resume): Add NULL as
5321 ptrace's 4th parameter.
5322
53232015-07-27 Yao Qi <yao.qi@linaro.org>
5324
5325 * configure.srv (case aarch64*-*-linux*): Don't set
5326 srv_linux_usrregs.
5327
53282015-07-24 Pedro Alves <palves@redhat.c: Likewise.om>
5329
5330 * linux-aarch64-low.c: Include nat/gdb_ptrace.h instead of
5331 sys/ptrace.h.
5332 * linux-arm-low.c: Likewise.
5333 * linux-cris-low.c: Likewise.
5334 * linux-crisv32-low.c: Likewise.
5335 * linux-low.c: Likewise.
5336 * linux-m68k-low.c: Likewise.
5337 * linux-mips-low.c: Likewise.
5338 * linux-nios2-low.c: Likewise.
5339 * linux-s390-low.c: Likewise.
5340 * linux-sparc-low.c: Likewise.
5341 * linux-tic6x-low.c: Likewise.
5342 * linux-tile-low.c: Likewise.
5343 * linux-x86-low.c: Likewise.
5344
53452015-07-24 Pedro Alves <palves@redhat.com>
5346
5347 * config.in: Regenerate.
5348 * configure: Regenerate.
5349
53502015-07-24 Pedro Alves <palves@redhat.com>
5351
5352 * acinclude.m4: Include ../ptrace.m4.
5353 * configure.ac: Call GDB_AC_PTRACE.
5354 * config.in, configure: Regenerate.
5355
53562015-07-24 Yao Qi <yao.qi@linaro.org>
5357
5358 * linux-low.c (linux_create_inferior): Remove setting to
5359 proc->priv->new_inferior.
5360 (linux_attach): Likewise.
5361 (linux_low_filter_event): Likewise.
5362 * linux-low.h (struct process_info_private) <new_inferior>: Remove.
5363
53642015-07-24 Yao Qi <yao.qi@linaro.org>
5365
5366 * linux-low.c (linux_arch_setup): New function.
5367 (linux_low_filter_event): If proc->tdesc is NULL and
5368 proc->attached is true, call the_low_target.arch_setup.
5369 Otherwise, keep status pending, and return.
5370 (linux_resume_one_lwp_throw): Don't call get_pc if
5371 thread->while_stepping isn't NULL. Don't call
5372 get_thread_regcache if proc->tdesc is NULL.
5373 (need_step_over_p): Return 0 if proc->tdesc is NULL.
5374 (linux_target_ops): Install arch_setup.
5375 * server.c (start_inferior): Call the_target->arch_setup.
5376 * target.h (struct target_ops) <arch_setup>: New field.
5377 (target_arch_setup): New marco.
5378 * lynx-low.c (lynx_target_ops): Update.
5379 * nto-low.c (nto_target_ops): Update.
5380 * spu-low.c (spu_target_ops): Update.
5381 * win32-low.c (win32_target_ops): Update.
5382
53832015-07-24 Yao Qi <yao.qi@linaro.org>
5384
5385 * linux-low.c (linux_add_process): Don't set
5386 proc->priv->new_inferior.
5387 (linux_create_inferior): Set proc->priv->new_inferior to 1.
5388 (linux_attach): Likewise.
5389
53902015-07-24 Yao Qi <yao.qi@linaro.org>
5391
5392 * server.c (start_inferior): Code refactor.
5393
53942015-07-24 Yao Qi <yao.qi@linaro.org>
5395
5396 * server.c (process_serial_event): Set general_thread.
5397
53982015-07-21 Yao Qi <yao.qi@linaro.org>
5399
5400 * linux-aarch64-low.c (aarch64_arch_setup): Remove code and call
5401 aarch64_linux_get_debug_reg_capacity.
5402
54032015-07-17 Yao Qi <yao.qi@linaro.org>
5404
5405 * Makefile.in (aarch64-linux-hw-point.o): New rule.
5406 * configure.srv (srv_tgtobj): Append aarch64-linux-hw-point.o.
5407 * linux-aarch64-low.c: Include nat/aarch64-linux-hw-point.h.
5408 (AARCH64_HBP_MAX_NUM): Move to nat/aarch64-linux-hw-point.h.
5409 (AARCH64_HWP_MAX_NUM, AARCH64_HBP_ALIGNMENT): Likewise.
5410 (AARCH64_HWP_ALIGNMENT): Likewise.
5411 (AARCH64_HWP_MAX_LEN_PER_REG): Likewise.
5412 (AARCH64_DEBUG_NUM_SLOTS, AARCH64_DEBUG_ARCH): Likewise.
5413 (aarch64_num_bp_regs, aarch64_num_wp_regs): Likewise.
5414 (AARCH64_DEBUG_ARCH_V8, DR_MARK_ALL_CHANGED): Likewise.
5415 (DR_MARK_N_CHANGED, DR_CLEAR_CHANGED): Likewise.
5416 (DR_HAS_CHANGED, DR_N_HAS_CHANGE): Likewise.
5417 (struct aarch64_debug_reg_state): Likewise.
5418 (struct arch_lwp_info): Likewise.
5419 (aarch64_align_watchpoint): Likewise.
5420 (DR_CONTROL_ENABLED, DR_CONTROL_LENGTH): Likewise.
5421 (aarch64_watchpoint_length): Likewise.
5422 (aarch64_point_encode_ctrl_reg): Likewise
5423 (aarch64_point_is_aligned): Likewise.
5424 (aarch64_align_watchpoint): Likewise.
5425 (aarch64_linux_set_debug_regs):
5426 (aarch64_dr_state_insert_one_point): Likewise.
5427 (aarch64_dr_state_remove_one_point): Likewise.
5428 (aarch64_handle_breakpoint): Likewise.
5429 (aarch64_handle_aligned_watchpoint): Likewise.
5430 (aarch64_handle_unaligned_watchpoint): Likewise.
5431 (aarch64_handle_watchpoint): Likewise.
5432
54332015-07-17 Yao Qi <yao.qi@linaro.org>
5434
5435 * linux-aarch64-low.c (aarch64_handle_breakpoint): Add argument state
5436 and don't aarch64_get_debug_reg_state. All callers update.
5437 (aarch64_handle_aligned_watchpoint): Likewise.
5438 (aarch64_handle_unaligned_watchpoint): Likewise.
5439 (aarch64_handle_watchpoint): Likewise.
5440 (aarch64_insert_point): Call aarch64_get_debug_reg_state earlier.
5441 (aarch64_remove_point): Likewise.
5442
54432015-07-17 Yao Qi <yao.qi@linaro.org>
5444
5445 * linux-aarch64-low.c (aarch64_show_debug_reg_state): Use
5446 debug_printf.
5447 (aarch64_handle_unaligned_watchpoint): Likewise.
5448
54492015-07-15 Jan Kratochvil <jan.kratochvil@redhat.com>
5450
5451 Revert the previous 3 commits:
5452 Move gdb_regex* to common/
5453 Move linux_find_memory_regions_full & co.
5454 gdbserver build-id attribute generator
5455
54562015-07-15 Aleksandar Ristovski <aristovski@qnx.com
5457 Jan Kratochvil <jan.kratochvil@redhat.com>
5458
5459 gdbserver build-id attribute generator.
5460 * linux-low.c (nat/linux-maps.h, search.h, rsp-low.h): Include.
5461 (ElfXX_Ehdr, ElfXX_Phdr, ElfXX_Nhdr): New.
5462 (ELFXX_FLD, ELFXX_SIZEOF, ELFXX_ROUNDUP, BUILD_ID_INVALID): New.
5463 (find_phdr): New.
5464 (get_dynamic): Use find_pdhr to traverse program headers.
5465 (struct mapping_entry, mapping_entry_s, free_mapping_entry_vec)
5466 (compare_mapping_entry_range, struct find_memory_region_callback_data)
5467 (read_build_id, find_memory_region_callback, lrfind_mapping_entry)
5468 (get_hex_build_id): New.
5469 (linux_qxfer_libraries_svr4): Add optional build-id attribute
5470 to reply XML document.
5471
54722015-07-15 Aleksandar Ristovski <aristovski@qnx.com
5473 Jan Kratochvil <jan.kratochvil@redhat.com>
5474
5475 * target.c: Include target/target-utils.h and fcntl.h.
5476 (target_fileio_read_stralloc_1_pread, target_fileio_read_stralloc_1)
5477 (target_fileio_read_stralloc): New functions.
5478
54792015-07-15 Jan Kratochvil <jan.kratochvil@redhat.com>
5480
5481 * Makefile.in (OBS): Add gdb_regex.o.
5482 (gdb_regex.o): New.
5483 * config.in: Rebuilt.
5484 * configure: Rebuilt.
5485
54862015-07-15 Aleksandar Ristovski <aristovski@qnx.com
5487 Jan Kratochvil <jan.kratochvil@redhat.com>
5488
5489 Create empty nat/linux-maps.[ch] and common/target-utils.[ch].
5490 * Makefile.in (OBS): Add target-utils.o.
5491 (linux-maps.o, target-utils.o): New.
5492 * configure.srv (srv_linux_obj): Add linux-maps.o.
5493
54942015-07-15 Pierre Langlois <pierre.langlois@arm.com>
5495
5496 * linux-aarch64-low.c (aarch64_supports_range_stepping): New
5497 function, return 1.
5498 (the_low_target): Install it.
5499
55002015-07-14 Pedro Alves <palves@redhat.com>
5501
5502 * linux-low.c (kill_wait_lwp): Don't assert if waitpid fails.
5503 Instead, ignore ECHILD, and throw an error for other errnos.
5504
55052015-07-10 Pedro Alves <palves@redhat.com>
5506
5507 * event-loop.c (struct callback_event) <data>: Change type to
5508 gdb_client_data instance instead of gdb_client_data pointer.
5509 (append_callback_event): Adjust.
5510
55112015-07-10 Pierre Langlois <pierre.langlois@arm.com>
5512
5513 * linux-aarch64-low.c: Add comments for each linux_target_ops
5514 method. Remove comments already covered in target_ops and
5515 linux_target_ops definitions.
5516 (the_low_target): Add comments for each unimplemented method.
5517
55182015-07-09 Yao Qi <yao.qi@linaro.org>
5519
5520 * linux-aarch64-low.c (aarch64_regmap): Remove.
5521 (aarch64_usrregs_info): Remove.
5522 (regs_info): Set field usrregs to NULL.
5523
55242015-07-02 Markus Metzger <markus.t.metzger@intel.com>
5525
5526 * linux-low.c: Include "rsp-low.h"
5527 (linux_low_encode_pt_config, linux_low_encode_raw): New.
5528 (linux_low_read_btrace): Support BTRACE_FORMAT_PT.
5529 (linux_low_btrace_conf): Support BTRACE_FORMAT_PT.
5530 (handle_btrace_enable_pt): New.
5531 (handle_btrace_general_set): Support "pt".
5532 (handle_btrace_conf_general_set): Support "pt:size".
5533
55342015-06-29 Pierre Langlois <pierre.langlois@arm.com>
5535
5536 * linux-aarch64-low.c (aarch64_supports_z_point_type): Enable for
5537 Z_PACKET_SW_BP.
5538
55392015-06-29 Pierre Langlois <pierre.langlois@arm.com>
5540
5541 * linux-aarch64-low.c: Remove comment about endianness.
5542 (aarch64_breakpoint): Change type to gdb_byte[]. Set to "brk #0".
5543 (aarch64_breakpoint_at): Change type of insn to gdb_byte[]. Use
5544 memcmp.
5545
55462015-06-24 Gary Benson <gbenson@redhat.com>
5547
5548 * linux-i386-ipa.c (stdint.h): Do not include.
5549 * lynx-i386-low.c (stdint.h): Likewise.
5550 * lynx-ppc-low.c (stdint.h): Likewise.
5551 * mem-break.c (stdint.h): Likewise.
5552 * thread-db.c (stdint.h): Likewise.
5553 * tracepoint.c (stdint.h): Likewise.
5554 * win32-low.c (stdint.h): Likewise.
5555
55562015-06-18 Simon Marchi <simon.marchi@ericsson.com>
5557
5558 * server.c (write_qxfer_response): Update call to
5559 remote_escape_output.
5560
55612015-06-15 Aleksandar Ristovski <aristovski@qnx.com
5562 Jan Kratochvil <jan.kratochvil@redhat.com>
5563
5564 Merge multiple hex conversions.
5565 * gdbreplay.c (tohex): Rename to 'fromhex'.
5566 (logchar): Use fromhex.
5567
55682015-06-10 Jan Kratochvil <jan.kratochvil@redhat.com>
5569
5570 * server.c (handle_qxfer_libraries): Set `version' attribute for
5571 <library-list>.
5572
55732015-06-10 Gary Benson <gbenson@redhat.com>
5574
5575 * target.h (struct target_ops) <multifs_open>: New field.
5576 <multifs_unlink>: Likewise.
5577 <multifs_readlink>: Likewise.
5578 * linux-low.c (nat/linux-namespaces.h): New include.
5579 (linux_target_ops): Initialize the_target->multifs_open,
5580 the_target->multifs_unlink and the_target->multifs_readlink.
5581 * hostio.h (hostio_handle_new_gdb_connection): New declaration.
5582 * hostio.c (hostio_fs_pid): New static variable.
5583 (hostio_handle_new_gdb_connection): New function.
5584 (handle_setfs): Likewise.
5585 (handle_open): Use the_target->multifs_open as appropriate.
5586 (handle_unlink): Use the_target->multifs_unlink as appropriate.
5587 (handle_readlink): Use the_target->multifs_readlink as
5588 appropriate.
5589 (handle_vFile): Handle vFile:setfs packets.
5590 * server.c (handle_query): Call hostio_handle_new_gdb_connection
5591 after target_handle_new_gdb_connection.
5592
55932015-06-10 Gary Benson <gbenson@redhat.com>
5594
5595 * configure.ac (AC_CHECK_FUNCS): Add setns.
5596 * config.in: Regenerate.
5597 * configure: Likewise.
5598 * Makefile.in (SFILES): Add nat/linux-namespaces.c.
5599 (linux-namespaces.o): New rule.
5600 * configure.srv (srv_linux_obj): Add linux-namespaces.o.
5601
56022015-06-09 Gary Benson <gbenson@redhat.com>
5603
5604 * hostio.c (handle_open): Process mode argument with
5605 fileio_to_host_mode.
5606
56072015-06-01 Yao Qi <yao.qi@linaro.org>
5608
5609 * linux-s390-low.c (PTRACE_GETREGSET, PTRACE_SETREGSET): Remove.
5610 * linux-x86-low.c: Likewise.
5611
56122015-05-28 Don Breazeal <donb@codesourcery.com>
5613
5614 * linux-low.c (handle_extended_wait): Initialize
5615 thread_info.last_resume_kind for new fork children.
5616
56172015-05-15 Pedro Alves <palves@redhat.com>
5618
5619 * target.h (target_handle_new_gdb_connection): Rewrite using if
5620 wrapped in do/while.
5621
56222015-05-14 Joel Brobecker <brobecker@adacore.com>
5623
5624 * configure.ac: Add prfpregset_t BFD_HAVE_SYS_PROCFS_TYPE check.
5625 * configure, config.in: Regenerate.
5626 * gdb_proc_service.h [HAVE_PRFPREGSET_T] (prfpregset_t):
5627 Declare typedef.
5628
56292015-05-12 Don Breazeal <donb@codesourcery.com>
5630
5631 * linux-low.c (handle_extended_wait): Handle PTRACE_EVENT_FORK and
5632 PTRACE_EVENT_VFORK_DONE.
5633 (linux_low_ptrace_options, extended_event_reported): Add vfork
5634 events.
5635 * remote-utils.c (prepare_resume_reply): New stop reasons "vfork"
5636 and "vforkdone" for RSP 'T' Stop Reply Packet.
5637 * server.h (report_vfork_events): Declare
5638 global variable.
5639
56402015-05-12 Don Breazeal <donb@codesourcery.com>
5641
5642 * linux-aarch64-low.c (aarch64_linux_new_fork): New function.
5643 (the_low_target) <new_fork>: Initialize new member.
5644 * linux-arm-low.c (arm_new_fork): New function.
5645 (the_low_target) <new_fork>: Initialize new member.
5646 * linux-low.c (handle_extended_wait): Call new target function
5647 new_fork.
5648 * linux-low.h (struct linux_target_ops) <new_fork>: New member.
5649 * linux-mips-low.c (mips_add_watchpoint): New function
5650 extracted from mips_insert_point.
5651 (the_low_target) <new_fork>: Initialize new member.
5652 (mips_linux_new_fork): New function.
5653 (mips_insert_point): Call mips_add_watchpoint.
5654 * linux-x86-low.c (x86_linux_new_fork): New function.
5655 (the_low_target) <new_fork>: Initialize new member.
5656
56572015-05-12 Don Breazeal <donb@codesourcery.com>
5658
5659 * linux-low.c (handle_extended_wait): Implement return value,
5660 rename argument 'event_child' to 'event_lwp', handle
5661 PTRACE_EVENT_FORK, call internal_error for unrecognized event.
5662 (linux_low_ptrace_options): New function.
5663 (linux_low_filter_event): Call linux_low_ptrace_options,
5664 use different argument fo linux_enable_event_reporting,
5665 use return value from handle_extended_wait.
5666 (extended_event_reported): New function.
5667 (linux_wait_1): Call extended_event_reported and set
5668 status to report fork events.
5669 (linux_write_memory): Add pid to debug message.
5670 (reset_lwp_ptrace_options_callback): New function.
5671 (linux_handle_new_gdb_connection): New function.
5672 (linux_target_ops): Initialize new structure member.
5673 * linux-low.h (struct lwp_info) <waitstatus>: New member.
5674 * lynx-low.c: Initialize new structure member.
5675 * remote-utils.c (prepare_resume_reply): Implement stop reason
5676 "fork" for "T" stop message.
5677 * server.c (handle_query): Call handle_new_gdb_connection.
5678 * server.h (report_fork_events): Declare global flag.
5679 * target.h (struct target_ops) <handle_new_gdb_connection>:
5680 New member.
5681 (target_handle_new_gdb_connection): New macro.
5682 * win32-low.c: Initialize new structure member.
5683
56842015-05-12 Don Breazeal <donb@codesourcery.com>
5685
5686 * mem-break.c (APPEND_TO_LIST): Define macro.
5687 (clone_agent_expr): New function.
5688 (clone_one_breakpoint): New function.
5689 (clone_all_breakpoints): New function.
5690 * mem-break.h: Declare new functions.
5691
56922015-05-12 Don Breazeal <donb@codesourcery.com>
5693
5694 * linux-low.c (linux_supports_fork_events): New function.
5695 (linux_supports_vfork_events): New function.
5696 (linux_target_ops): Initialize new structure members.
5697 (initialize_low): Call linux_check_ptrace_features.
5698 * lynx-low.c (lynx_target_ops): Initialize new structure
5699 members.
5700 * server.c (report_fork_events, report_vfork_events):
5701 New global flags.
5702 (handle_query): Add new features to qSupported packet and
5703 response.
5704 (captured_main): Initialize new global variables.
5705 * target.h (struct target_ops) <supports_fork_events>:
5706 New member.
5707 <supports_vfork_events>: New member.
5708 (target_supports_fork_events): New macro.
5709 (target_supports_vfork_events): New macro.
5710 * win32-low.c (win32_target_ops): Initialize new structure
5711 members.
5712
57132015-05-12 Gary Benson <gbenson@redhat.com>
5714
5715 * server.c (handle_qxfer_exec_file): Use current process
5716 if annex is empty.
5717
57182015-05-08 Sandra Loosemore <sandra@codesourcery.com>
5719
5720 * linux-nios2-low.c: Include elf/common.h. Adjust comments.
5721 Remove HAVE_PTRACE_GETREGS conditionals.
5722 (nios2_regsets): Use PTRACE_GETREGSET and PTRACE_SETREGSET
5723 instead of PTRACE_GETREGS and PTRACE_SETREGS.
5724
57252015-05-08 Yao Qi <yao.qi@linaro.org>
5726
5727 * linux-low.c (linux_supports_conditional_breakpoints): New
5728 function.
5729 (linux_target_ops): Install new target method.
5730 * lynx-low.c (lynx_target_ops): Install NULL hook for
5731 supports_conditional_breakpoints.
5732 * nto-low.c (nto_target_ops): Likewise.
5733 * spu-low.c (spu_target_ops): Likewise.
5734 * win32-low.c (win32_target_ops): Likewise.
5735 * server.c (handle_query): Check
5736 target_supports_conditional_breakpoints.
5737 * target.h (struct target_ops) <supports_conditional_breakpoints>:
5738 New field.
5739 (target_supports_conditional_breakpoints): New macro.
5740
57412015-05-06 Pedro Alves <palves@redhat.com>
5742
5743 PR server/18081
5744 * server.c (start_inferior): If the process exits, mourn it.
5745
57462015-04-21 Gary Benson <gbenson@redhat.com>
5747
5748 * hostio.c (fileio_open_flags_to_host): Factored out to
5749 fileio_to_host_openflags in common/fileio.c. Single use
5750 updated.
5751
57522015-04-17 Max Filippov <jcmvbkbc@gmail.com>
5753
5754 * linux-xtensa-low.c (xtensa_fill_gregset)
5755 (xtensa_store_gregset): Check XCHAL_HAVE_LOOPS instead of
5756 XCHAL_HAVE_LOOP.
5757
57582015-04-17 Max Filippov <jcmvbkbc@gmail.com>
5759
5760 * linux-xtensa-low.c (xtensa_usrregs_info): Remove.
5761 (regs_info): Replace usrregs pointer with NULL.
5762
57632015-04-17 Gary Benson <gbenson@redhat.com>
5764
5765 * target.h (struct target_ops) <pid_to_exec_file>: New field.
5766 * linux-low.c (linux_target_ops): Initialize pid_to_exec_file.
5767 * server.c (handle_qxfer_exec_file): New function.
5768 (qxfer_packets): Add exec-file entry.
5769 (handle_query): Report qXfer:exec-file:read as supported packet.
5770
57712015-04-14 Romain Naour <romain.naour@openwide.fr> (tiny change)
5772
5773 * linux-low.c (linux_read_offsets): Remove get_thread_lwp.
5774
57752015-04-09 Gary Benson <gbenson@redhat.com>
5776
5777 * hostio-errno.c (errno_to_fileio_error): Remove function.
5778 Update caller to use remote_fileio_to_fio_error.
5779
57802015-04-09 Yao Qi <yao.qi@linaro.org>
5781
5782 * linux-low.c (linux_insert_point): Call
5783 insert_memory_breakpoint if TYPE is raw_bkpt_type_sw.
5784 (linux_remove_point): Call remove_memory_breakpoint if type is
5785 raw_bkpt_type_sw.
5786 * linux-x86-low.c (x86_insert_point): Don't call
5787 insert_memory_breakpoint.
5788 (x86_remove_point): Don't call remove_memory_breakpoint.
5789
57902015-04-01 Pedro Alves <palves@redhat.com>
5791 Cleber Rosa <crosa@redhat.com>
5792
5793 * server.c (gdbserver_usage): Reorganize and extend the usage
5794 message.
5795
57962015-03-24 Pedro Alves <palves@redhat.com>
5797
5798 * linux-low.c (check_stopped_by_breakpoint): Tweak debug log
5799 output. Also dump TRAP_TRACE.
5800 (linux_low_filter_event): In debug output, distinguish a
5801 resume_stop SIGSTOP from a delayed SIGSTOP.
5802
58032015-03-24 Gary Benson <gbenson@redhat.com>
5804
5805 * linux-x86-low.c (x86_linux_new_thread): Moved to
5806 nat/x86-linux.c.
5807 (x86_linux_prepare_to_resume): Likewise.
5808
58092015-03-24 Gary Benson <gbenson@redhat.com>
5810
5811 * Makefile.in (x86-linux-dregs.o): New rule.
5812 * configure.srv: Add x86-linux-dregs.o to relevant targets.
5813 * linux-x86-low.c: Include nat/x86-linux-dregs.h.
5814 (u_debugreg_offset): Moved to nat/x86-linux-dregs.c.
5815 (x86_linux_dr_get): Likewise.
5816 (x86_linux_dr_set): Likewise.
5817 (update_debug_registers_callback): Likewise.
5818 (x86_linux_dr_set_addr): Likewise.
5819 (x86_linux_dr_get_addr): Likewise.
5820 (x86_linux_dr_set_control): Likewise.
5821 (x86_linux_dr_get_control): Likewise.
5822 (x86_linux_dr_get_status): Likewise.
5823 (x86_linux_update_debug_registers): Likewise.
5824
58252015-03-24 Gary Benson <gbenson@redhat.com>
5826
5827 * linux-x86-low.c (x86_linux_update_debug_registers):
5828 New function, factored out from...
5829 (x86_linux_prepare_to_resume): ...this.
5830
58312015-03-24 Gary Benson <gbenson@redhat.com>
5832
5833 * linux-x86-low.c (x86_linux_dr_get): Update comments.
5834 (x86_linux_dr_set): Likewise.
5835 (update_debug_registers_callback): Likewise.
5836 (x86_linux_dr_set_addr): Likewise.
5837 (x86_linux_dr_get_addr): Likewise.
5838 (x86_linux_dr_set_control): Likewise.
5839 (x86_linux_dr_get_control): Likewise.
5840 (x86_linux_dr_get_status): Likewise.
5841 (x86_linux_prepare_to_resume): Likewise.
5842
58432015-03-24 Gary Benson <gbenson@redhat.com>
5844
5845 * linux-x86-low.c (x86_linux_dr_get): Add assertion.
5846 Use perror_with_name. Pass string through gettext.
5847 (x86_linux_dr_set): Likewise.
5848
58492015-03-24 Gary Benson <gbenson@redhat.com>
5850
5851 * linux-x86-low.c (x86_dr_low_set_addr): Rename to...
5852 (x86_linux_dr_set_addr): ...this.
5853 (x86_dr_low_get_addr): Rename to...
5854 (x86_linux_dr_get_addr): ...this.
5855 (x86_dr_low_set_control): Rename to...
5856 (x86_linux_dr_set_control): ...this.
5857 (x86_dr_low_get_control): Rename to...
5858 (x86_linux_dr_get_control): ...this.
5859 (x86_dr_low_get_status): Rename to...
5860 (x86_linux_dr_get_status): ...this.
5861 (x86_dr_low): Update with new function names.
5862
58632015-03-24 Gary Benson <gbenson@redhat.com>
5864
5865 * Makefile.in (x86-linux.o): New rule.
5866 * configure.srv: Add x86-linux.o to relevant targets.
5867 * linux-low.c (lwp_set_arch_private_info): New function.
5868 (lwp_arch_private_info): Likewise.
5869 * linux-x86-low.c: Include nat/x86-linux.h.
5870 (arch_lwp_info): Removed structure.
5871 (update_debug_registers_callback):
5872 Use lwp_set_debug_registers_changed.
5873 (x86_linux_prepare_to_resume): Use lwp_debug_registers_changed
5874 and lwp_set_debug_registers_changed.
5875 (x86_linux_new_thread): Use lwp_set_debug_registers_changed.
5876
58772015-03-24 Gary Benson <gbenson@redhat.com>
5878
5879 * linux-low.h (linux_target_ops) <new_thread>: Changed signature.
5880 * linux-arm-low.c (arm_new_thread): Likewise.
5881 * linux-aarch64-low.c (aarch64_linux_new_thread): Likewise.
5882 * linux-mips-low.c (mips_linux_new_thread): Likewise.
5883 * linux-x86-low.c (x86_linux_new_thread): Likewise.
5884 * linux-low.c (add_lwp): Update the_low_target.new_thread call.
5885
58862015-03-24 Gary Benson <gbenson@redhat.com>
5887
5888 * linux-low.c (ptid_of_lwp): New function.
5889 (lwp_is_stopped): Likewise.
5890 (lwp_stop_reason): Likewise.
5891 * linux-x86-low.c (update_debug_registers_callback):
5892 Use lwp_is_stopped.
5893 (x86_linux_prepare_to_resume): Use ptid_of_lwp and
5894 lwp_stop_reason.
5895
58962015-03-24 Gary Benson <gbenson@redhat.com>
5897
5898 * linux-low.h (linux_stop_lwp): Remove declaration.
5899
59002015-03-24 Gary Benson <gbenson@redhat.com>
5901
5902 * linux-low.h: Include nat/linux-nat.h.
5903 * linux-low.c (iterate_over_lwps_args): New structure.
5904 (iterate_over_lwps_filter): New function.
5905 (iterate_over_lwps): Likewise.
5906 * linux-x86-low.c (update_debug_registers_callback):
5907 Update signature to what iterate_over_lwps expects.
5908 Remove PID check that iterate_over_lwps now performs.
5909 (x86_dr_low_set_addr): Use iterate_over_lwps.
5910 (x86_dr_low_set_control): Likewise.
5911
59122015-03-24 Gary Benson <gbenson@redhat.com>
5913
5914 * linux-x86-low.c (x86_debug_reg_state): New function.
5915 (x86_linux_prepare_to_resume): Use the above.
5916
59172015-03-24 Gary Benson <gbenson@redhat.com>
5918
5919 * linux-low.c (current_lwp_ptid): New function.
5920 * linux-x86-low.c: Include nat/linux-nat.h.
5921 (x86_dr_low_get_addr): Use current_lwp_ptid.
5922 (x86_dr_low_get_control): Likewise.
5923 (x86_dr_low_get_status): Likewise.
5924
59252015-03-20 Pedro Alves <palves@redhat.com>
5926
5927 * tracepoint.c (cmd_qtstatus): Make "str" const.
5928
59292015-03-20 Pedro Alves <palves@redhat.com>
5930
5931 * server.c (handle_general_set): Make "req_str" const.
5932
59332015-03-19 Pedro Alves <palves@redhat.com>
5934
5935 * linux-low.c (linux_resume_one_lwp): Rename to ...
5936 (linux_resume_one_lwp_throw): ... this. Don't handle ESRCH here,
5937 instead call perror_with_name.
5938 (check_ptrace_stopped_lwp_gone): New function.
5939 (linux_resume_one_lwp): Reimplement as wrapper around
5940 linux_resume_one_lwp_throw that swallows errors if the LWP is
5941 gone.
5942
59432015-03-19 Pedro Alves <palves@redhat.com>
5944
5945 * linux-low.c (count_events_callback, select_event_lwp_callback):
5946 No longer check whether the thread has resume_stop as last resume
5947 kind.
5948
59492015-03-19 Pedro Alves <palves@redhat.com>
5950
5951 * linux-low.c (count_events_callback, select_event_lwp_callback):
5952 Use the lwp's status_pending_p field, not the thread's.
5953
59542015-03-19 Pedro Alves <palves@redhat.com>
5955
5956 * linux-low.c (select_event_lwp_callback): Update comments to
5957 no longer mention SIGTRAP.
5958
59592015-03-18 Gary Benson <gbenson@redhat.com>
5960
5961 * server.c (handle_query): Do not report vFile:fstat as supported.
5962
59632015-03-11 Gary Benson <gbenson@redhat.com>
5964
5965 * hostio.c (sys/types.h): New include.
5966 (sys/stat.h): Likewise.
5967 (common-remote-fileio.h): Likewise.
5968 (handle_fstat): New function.
5969 (handle_vFile): Handle vFile:fstat packets.
5970
59712015-03-11 Gary Benson <gbenson@redhat.com>
5972
5973 * configure.ac (AC_CHECK_MEMBERS): Add checks for
5974 struct stat.st_blocks and struct stat.st_blksize.
5975 * configure: Regenerate.
5976 * config.in: Likewise.
5977 * Makefile.in (SFILES): Add common/common-remote-fileio.c.
5978 (OBS): Add common-remote-fileio.o.
5979 (common-remote-fileio.o): New rule.
5980
59812015-03-09 Pedro Alves <palves@redhat.com>
5982
5983 * tracepoint.c (gdb_agent_helper_thread): Cast '&sockaddr' to
5984 'struct sockaddr' pointer in 'accept' call.
5985
59862015-03-09 Pedro Alves <palves@redhat.com>
5987
5988 Revert:
5989 2015-03-07 Pedro Alves <palves@redhat.com>
5990 * gdbreplay.c: No longer include <netinet/in.h>, <sys/socket.h>,
5991 or <winsock2.h> here. Instead include "gdb_socket.h".
5992 (remote_open): Use union gdb_sockaddr_u.
5993 * remote-utils.c: No longer include <netinet/in.h>, <sys/socket.h>
5994 or <winsock2.h> here. Instead include "gdb_socket.h".
5995 (handle_accept_event, remote_prepare): Use union gdb_sockaddr_u.
5996 * tracepoint.c: Include "gdb_socket.h" instead of <sys/socket.h>
5997 or <sys/un.h>.
5998 (init_named_socket, gdb_agent_helper_thread): Use union
5999 gdb_sockaddr_u.
6000
60012015-03-07 Pedro Alves <palves@redhat.com>
6002
6003 * configure.ac (build_warnings): Move
6004 -Wdeclaration-after-statement to the C-specific set.
6005 * configure: Regenerate.
6006
60072015-03-07 Pedro Alves <palves@redhat.com>
6008
6009 * gdbreplay.c: No longer include <netinet/in.h>, <sys/socket.h>,
6010 or <winsock2.h> here. Instead include "gdb_socket.h".
6011 (remote_open): Use union gdb_sockaddr_u.
6012 * remote-utils.c: No longer include <netinet/in.h>, <sys/socket.h>
6013 or <winsock2.h> here. Instead include "gdb_socket.h".
6014 (handle_accept_event, remote_prepare): Use union gdb_sockaddr_u.
6015 * tracepoint.c: Include "gdb_socket.h" instead of <sys/socket.h>
6016 or <sys/un.h>.
6017 (init_named_socket, gdb_agent_helper_thread): Use union
6018 gdb_sockaddr_u.
6019
60202015-03-07 Pedro Alves <palves@redhat.com>
6021
6022 Adjust all callers of TRY_CATCH to use TRY/CATCH/END_CATCH
6023 instead.
6024
60252015-03-06 Yao Qi <yao.qi@linaro.org>
6026
6027 * linux-aarch64-low.c (aarch64_insert_point): Use
6028 show_debug_regs as a boolean.
6029 (aarch64_remove_point): Likewise.
6030
60312015-03-05 Pedro Alves <palves@redhat.com>
6032
6033 * lynx-low.c (lynx_target_ops): Install NULL hooks for
6034 stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
6035 stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint.
6036 * nto-low.c (nto_target_ops): Likewise.
6037 * spu-low.c (spu_target_ops): Likewise.
6038 * win32-low.c (win32_target_ops): Likewise.
6039
60402015-03-04 Pedro Alves <palves@redhat.com>
6041
6042 * linux-low.c (check_stopped_by_breakpoint) [USE_SIGTRAP_SIGINFO]:
6043 Decide whether a breakpoint triggered based on the SIGTRAP's
6044 siginfo.si_code.
6045 (thread_still_has_status_pending_p) [USE_SIGTRAP_SIGINFO]: Don't check whether a
6046 breakpoint is inserted if relying on SIGTRAP's siginfo.si_code.
6047 (linux_low_filter_event): Check for breakpoints before checking
6048 watchpoints.
6049 (linux_wait_1): Don't re-increment the PC if relying on SIGTRAP's
6050 siginfo.si_code.
6051 (linux_stopped_by_sw_breakpoint)
6052 (linux_supports_stopped_by_sw_breakpoint)
6053 (linux_stopped_by_hw_breakpoint)
6054 (linux_supports_stopped_by_hw_breakpoint): New functions.
6055 (linux_target_ops): Install new target methods.
6056
60572015-03-04 Pedro Alves <palves@redhat.com>
6058
6059 * remote-utils.c (prepare_resume_reply): Report swbreak/hbreak.
6060 * server.c (swbreak_feature, hwbreak_feature): New globals.
6061 (handle_query) <qSupported>: Handle "swbreak+" and "hwbreak+".
6062 (captured_main): Clear swbreak_feature and hwbreak_feature.
6063 * server.h (swbreak_feature, hwbreak_feature): Declare.
6064 * target.h (struct target_ops) <stopped_by_sw_breakpoint,
6065 supports_stopped_by_sw_breakpoint, stopped_by_hw_breakpoint,
6066 supports_stopped_by_hw_breakpoint>: New fields.
6067 (target_supports_stopped_by_sw_breakpoint)
6068 (target_stopped_by_sw_breakpoint)
6069 (target_supports_stopped_by_hw_breakpoint)
6070 (target_stopped_by_hw_breakpoint): Declare.
6071
60722015-03-04 Pedro Alves <palves@redhat.com>
6073
6074 enum lwp_stop_reason -> enum target_stop_reason
6075 * linux-low.c (check_stopped_by_breakpoint): Adjust.
6076 (thread_still_has_status_pending_p, check_stopped_by_watchpoint)
6077 (linux_wait_1, stuck_in_jump_pad_callback)
6078 (move_out_of_jump_pad_callback, linux_resume_one_lwp)
6079 (linux_stopped_by_watchpoint):
6080 * linux-low.h (enum lwp_stop_reason): Delete.
6081 (struct lwp_info) <stop_reason>: Now an enum target_stop_reason.
6082 * linux-x86-low.c (x86_linux_prepare_to_resume): Adjust.
6083
60842015-03-04 Yao Qi <yao.qi@linaro.org>
6085
6086 * Makefile.in (SFILES): Add linux-aarch64-low.c.
6087
60882015-03-03 Gary Benson <gbenson@redhat.com>
6089
6090 * hostio.c (handle_vFile): Fix prefix lengths.
6091
60922015-03-03 Markus Metzger <markus.t.metzger@intel.com>
6093
6094 * linux-low.c (linux_low_enable_btrace): Do not overwrite non-zero
6095 ptr_bits.
6096
60972015-03-02 Andreas Arnez <arnez@linux.vnet.ibm.com>
6098
6099 * Makefile.in (s390-vx-linux64.c, s390-tevx-linux64.c)
6100 (s390x-vx-linux64.c, s390x-tevx-linux64.c): New rules.
6101 (clean): Add "rm -f" for above C files.
6102 * configure.srv (srv_regobj): Add s390-vx-linux64.o,
6103 s390-tevx-linux64.o, s390x-vx-linux64.o, and s390x-tevx-linux64.o.
6104 (srv_xmlfiles): Add s390-vx-linux64.xml, s390-tevx-linux64.xml,
6105 s390x-vx-linux64.xml, s390x-tevx-linux64.xml, and s390-vx.xml.
6106 * linux-s390-low.c (HWCAP_S390_VX): New macro.
6107 (init_registers_s390_vx_linux64, init_registers_s390_tevx_linux64)
6108 (init_registers_s390x_vx_linux64)
6109 (init_registers_s390x_tevx_linux64)
6110 (tdesc_s390_vx_linux64, tdesc_s390_tevx_linux64)
6111 (tdesc_s390x_vx_linux64, tdesc_s390x_tevx_linux64): New extern
6112 declarations.
6113 (s390_fill_vxrs_low, s390_store_vxrs_low, s390_fill_vxrs_high)
6114 (s390_store_vxrs_high): New functions.
6115 (s390_regsets): Add entries for NT_S390_VXRS_LOW and
6116 NT_S390_VXRS_HIGH.
6117 (s390_arch_setup): Add logic for selecting one of the new target
6118 descriptions. Activate the new vector regsets if applicable.
6119 (initialize_low_arch): Also invoke init_registers_s390_vx_linux64,
6120 init_registers_s390_tevx_linux64, init_registers_s390x_vx_linux64,
6121 and init_registers_s390x_tevx_linux64.
6122
61232015-03-01 Pedro Alves <palves@redhat.com>
6124
6125 * linux-i386-ipa.c (gdb_agent_get_raw_reg): Constify 'raw_regs'
6126 parameter.
6127
61282015-02-27 Pedro Alves <palves@redhat.com>
6129
6130 * linux-x86-low.c (u_debugreg_offset): New function.
6131 (x86_linux_dr_get, x86_linux_dr_set): Use it.
6132
61332015-02-27 Pedro Alves <palves@redhat.com>
6134
6135 * gdb_proc_service.h: Wrap with EXTERN_C_PUSH/EXTERN_C_POP.
6136 [!HAVE_PROC_SERVICE_H] (struct ps_prochandle): Forward declare.
6137 [!HAVE_PROC_SERVICE_H] (ps_pdread, ps_pdwrite, ps_ptread)
6138 ps_ptwrite, ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6139 (ps_lsetfpregs, ps_getpid)
6140 (ps_get_thread_area, ps_pglobal_lookup, ps_pstop, ps_pcontinue)
6141 (ps_lstop, ps_lcontinue, ps_lgetxregsize, ps_lgetxregs)
6142 (ps_lsetxregs, ps_plog): Declare.
6143
61442015-02-27 Pedro Alves <palves@redhat.com>
6145
6146 * linux-amd64-ipa.c (gdb_agent_get_raw_reg): Use
6147 IP_AGENT_EXPORT_FUNC.
6148 * linux-i386-ipa.c (gdb_agent_get_raw_reg): Use
6149 IP_AGENT_EXPORT_FUNC.
6150 * tracepoint.c (ATTR_USED, ATTR_NOINLINE, ATTR_CONSTRUCTOR)
6151 (IP_AGENT_EXPORT): Delete.
6152 (gdb_tp_heap_buffer, gdb_jump_pad_buffer, gdb_jump_pad_buffer_end)
6153 (gdb_trampoline_buffer, gdb_trampoline_buffer_end)
6154 (gdb_trampoline_buffer_error, collecting, gdb_collect)
6155 (stop_tracing, flush_trace_buffer, about_to_request_buffer_space)
6156 (trace_buffer_is_full, stopping_tracepoint, expr_eval_result)
6157 (error_tracepoint, tracepoints, tracing, trace_buffer_ctrl)
6158 (trace_buffer_ctrl_curr, trace_buffer_lo, trace_buffer_hi)
6159 (traceframe_read_count, traceframe_write_count)
6160 (traceframes_created, trace_state_variables, get_raw_reg)
6161 (get_trace_state_variable_value, set_trace_state_variable_value)
6162 (ust_loaded, helper_thread_id, cmd_buf): Use
6163 IPA_SYM_EXPORTED_NAME.
6164 (stop_tracing, flush_trace_buffer): Use IP_AGENT_EXPORT_FUNC.
6165 (tracepoints) Use IP_AGENT_EXPORT_VAR.
6166 (stopping_tracepoint, trace_buffer_is_full, expr_eval_result): Use
6167 IP_AGENT_EXPORT_VAR and wrap in EXTERN_C_PUSH/EXTERN_C_POP.
6168 (last_tracepoint): Move into !IN_PROCESS_AGENT block.
6169 (error_tracepoint): Use IP_AGENT_EXPORT_VAR and wrap in
6170 EXTERN_C_PUSH/EXTERN_C_POP.
6171 (trace_state_variables): Use IP_AGENT_EXPORT_VAR.
6172 (trace_buffer_lo, trace_buffer_hi): Use IP_AGENT_EXPORT_VAR and
6173 wrap in EXTERN_C_PUSH/EXTERN_C_POP.
6174 (trace_buffer_ctrl, trace_buffer_ctrl_curr)
6175 (traceframe_write_count, traceframe_read_count)
6176 (traceframes_created, tracing): Use IP_AGENT_EXPORT_VAR.
6177 (about_to_request_buffer_space, get_trace_state_variable_value)
6178 (set_trace_state_variable_value): Use IP_AGENT_EXPORT_FUNC.
6179 (collecting): Use IP_AGENT_EXPORT_VAR and wrap in
6180 EXTERN_C_PUSH/EXTERN_C_POP.
6181 (gdb_collect): Use IP_AGENT_EXPORT_FUNC.
6182 (ust_loaded, cmd_buf): Use IP_AGENT_EXPORT_VAR.
6183 (helper_thread_id, gdb_agent_capability): Use IP_AGENT_EXPORT_VAR
6184 and wrap in EXTERN_C_PUSH/EXTERN_C_POP.
6185 (gdb_tp_heap_buffer, gdb_jump_pad_buffer, gdb_jump_pad_buffer_end)
6186 (gdb_trampoline_buffer, gdb_trampoline_buffer_end)
6187 (gdb_trampoline_buffer_error): Use IP_AGENT_EXPORT_VAR.
6188 * tracepoint.h (ATTR_USED, ATTR_NOINLINE, EXPORTED_SYMBOL):
6189 Define.
6190 (IP_AGENT_EXPORT_FUNC, IP_AGENT_EXPORT_VAR)
6191 (IP_AGENT_EXPORT_VAR_DECL): Define.
6192 (tracing): Declare.
6193 (gdb_agent_get_raw_reg): Declare.
6194
61952015-02-27 Tom Tromey <tromey@redhat.com>
6196 Pedro Alves <palves@redhat.com>
6197
6198 Rename symbols whose names are reserved C++ keywords throughout.
6199
62002015-02-27 Pedro Alves <palves@redhat.com>
6201
6202 * Makefile.in (COMPILER): New, get it from autoconf.
6203 (CXX): Get from autoconf instead.
6204 (COMPILE.pre): Use COMPILER.
6205 (CC-LD): Rename to ...
6206 (CC_LD): ... this. Use COMPILER.
6207 (gdbserver$(EXEEXT), gdbreplay$(EXEEXT), $(IPA_LIB)): Adjust.
6208 (CXX_FOR_TARGET): Default to g++ instead of gcc.
6209 * acinclude.m4: Include build-with-cxx.m4.
6210 * configure.ac: Call AC_PROG_CXX and GDB_AC_BUILD_WITH_CXX.
6211 Disable -Werror by default if building in C++ mode.
6212 (build_warnings): Add -Wno-sign-compare, -Wno-write-strings and
6213 -Wno-narrowing in C++ mode. Run supported-warning-flags tests with
6214 the C++ compiler. Save/restore CXXFLAGS too.
6215 * configure: Regenerate.
6216
62172015-02-27 Pedro Alves <palves@redhat.com>
6218
6219 * acinclude.m4: Include libiberty.m4.
6220 * configure.ac: Call libiberty_INIT.
6221 * config.in, configure: Regenerate.
6222
62232015-02-26 Pedro Alves <palves@redhat.com>
6224
6225 * linux-low.c (linux_wait_1): When incrementing the PC past a
6226 program breakpoint always use the_low_target.breakpoint_len as
6227 increment, rather than the maximum between that and
6228 the_low_target.decr_pc_after_break.
6229
62302015-02-23 Pedro Alves <palves@redhat.com>
6231
6232 * linux-low.c (check_stopped_by_breakpoint): Don't check if the
6233 thread was doing a step-over; always adjust the PC if
6234 we stepped over a permanent breakpoint.
6235 (linux_wait_1): If we stepped over breakpoint that was on top of a
6236 permanent breakpoint, manually advance the PC past it.
6237
62382015-02-23 Pedro Alves <palves@redhat.com>
6239
6240 * linux-x86-low.c (REGSIZE): Define in both 32-bit and 64-bit
6241 modes.
6242 (x86_fill_gregset, x86_store_gregset): Use it when handling
6243 $orig_eax.
6244
62452015-02-20 Pedro Alves <palves@redhat.com>
6246
6247 * thread-db.c: Include "nat/linux-procfs.h".
6248 (thread_db_init): Skip listing new threads if the kernel supports
6249 PTRACE_EVENT_CLONE and /proc/PID/task/ is accessible.
6250
62512015-02-20 Pedro Alves <palves@redhat.com>
6252
6253 * linux-low.c (status_pending_p_callback): Use ptid_match.
6254
62552015-02-19 Antoine Tremblay <antoine.tremblay@ericsson.com>
6256
6257 PR breakpoints/16812
6258 * linux-low.c (wstatus_maybe_breakpoint): Remove.
6259 (linux_low_filter_event): Update wstatus_maybe_breakpoint name.
6260 (linux_wait_1): Report SIGTRAP,SIGILL,SIGSEGV.
6261
62622015-02-10 Antoine Tremblay <antoine.tremblay@ericsson.com>
6263
6264 PR breakpoints/15956
6265 * tracepoint.c (cmd_qtinit): Add check for current_thread.
6266
62672015-02-09 Markus Metzger <markus.t.metzger@intel.com>
6268
6269 * linux-low.c (linux_low_btrace_conf): Print size.
6270 * server.c (handle_btrace_conf_general_set): New.
6271 (hanle_general_set): Call handle_btrace_conf_general_set.
6272 (handle_query): Report Qbtrace-conf:bts:size as supported.
6273
62742015-02-09 Markus Metzger <markus.t.metzger@intel.com>
6275
6276 * linux-low.c (linux_low_enable_btrace): Update parameters.
6277 (linux_low_btrace_conf): New.
6278 (linux_target_ops)<to_btrace_conf>: Initialize.
6279 * server.c (current_btrace_conf): New.
6280 (handle_btrace_enable): Rename to ...
6281 (handle_btrace_enable_bts): ... this. Pass &current_btrace_conf
6282 to target_enable_btrace. Update comment. Update users.
6283 (handle_qxfer_btrace_conf): New.
6284 (qxfer_packets): Add btrace-conf entry.
6285 (handle_query): Report qXfer:btrace-conf:read as supported packet.
6286 * target.h (target_ops)<enable_btrace>: Update parameters and comment.
6287 (target_ops)<read_btrace_conf>: New.
6288 (target_enable_btrace): Update parameters.
6289 (target_read_btrace_conf): New.
6290
62912015-02-09 Markus Metzger <markus.t.metzger@intel.com>
6292
6293 * server.c (handle_btrace_general_set): Remove call to
6294 target_supports_btrace.
6295 (supported_btrace_packets): New.
6296 (handle_query): Call supported_btrace_packets.
6297 * target.h: include btrace-common.h.
6298 (btrace_target_info): Removed.
6299 (supports_btrace, target_supports_btrace): Update parameters.
6300
63012015-02-09 Markus Metzger <markus.t.metzger@intel.com>
6302
6303 * Makefile.in (SFILES): Add common/btrace-common.c.
6304 (OBS): Add common/btrace-common.o.
6305 (btrace-common.o): Add build rules.
6306 * linux-low: Include btrace-common.h.
6307 (linux_low_read_btrace): Use struct btrace_data. Call
6308 btrace_data_init and btrace_data_fini.
6309
63102015-02-06 Pedro Alves <palves@redhat.com>
6311
6312 * thread-db.c (find_new_threads_callback): Add debug output.
6313
63142015-02-04 Pedro Alves <palves@redhat.com>
6315
6316 * linux-low.c (handle_extended_wait): Don't resume LWPs here.
6317 (resume_stopped_resumed_lwps): New function.
6318 (linux_wait_for_event_filtered): Use it.
6319
63202015-01-15 Sergio Durigan Junior <sergiodj@redhat.com>
6321
6322 * Makefile.in (SFILES): Add linux-personality.c.
6323 (linux-personality.o): New rule.
6324 * configure.srv (srv_linux_obj): Add linux-personality.o to the
6325 list of objects to be built.
6326 * linux-low.c: Include nat/linux-personality.h.
6327 (linux_create_inferior): Remove code to disable address space
6328 randomization (moved to ../nat/linux-personality.c). Create
6329 cleanup to disable address space randomization.
6330
63312015-01-15 Sergio Durigan Junior <sergiodj@redhat.com>
6332
6333 * Makefile.in (posix-strerror.o): New rule.
6334 (mingw-strerror.o): Likewise.
6335 * configure: Regenerated.
6336 * configure.ac: Source file ../common/common.host. Initialize new
6337 variable srv_host_obs. Add srv_host_obs to GDBSERVER_DEPFILES.
6338
63392015-01-14 Yao Qi <yao@codesourcery.com>
6340
6341 * Makefile.in (SFILES): Add nat/ppc-linux.c.
6342 (ppc-linux.o): New rule.
6343 * configure.srv (powerpc*-*-linux*): Add ppc-linux.o.
6344 * configure.ac: AC_CHECK_FUNCS(getauxval).
6345 * config.in: Re-generated.
6346 * configure: Re-generated.
6347 * linux-ppc-low.c (ppc_arch_setup) [__powerpc64__]: Call
6348 ppc64_64bit_inferior_p
6349
63502015-01-14 Yao Qi <yao@codesourcery.com>
6351
6352 * linux-ppc-low.c: Include "nat/ppc-linux.h".
6353 (PPC_FEATURE_HAS_VSX): Move to nat/ppc-linux.h.
6354 (PPC_FEATURE_HAS_ALTIVEC, PPC_FEATURE_HAS_SPE): Likewise.
6355 (PT_ORIG_R3, PT_TRAP): Likewise.
6356 (PTRACE_GETVSXREGS, PTRACE_SETVSXREGS): Likewise.
6357 (PTRACE_GETVRREGS, PTRACE_SETVRREGS): Likewise.
6358 (PTRACE_GETEVRREGS, PTRACE_SETEVRREGS): Likewise.
6359
63602015-01-10 Joel Brobecker <brobecker@adacore.com>
6361
6362 * i387-fp.c (i387_cache_to_xsave): In look over
6363 num_avx512_zmmh_high_registers, replace use of struct i387_xsave
6364 zmmh_low_space field by use of zmmh_high_space.
6365
63662015-01-09 Pedro Alves <palves@redhat.com>
6367
6368 * linux-low.c (step_over_bkpt): Move higher up in the file.
6369 (handle_extended_wait): Don't store the stop_pc here.
6370 (get_stop_pc): Adjust comments and rename to ...
6371 (check_stopped_by_breakpoint): ... this. Record whether the LWP
6372 stopped for a software breakpoint or hardware breakpoint.
6373 (thread_still_has_status_pending_p): New function.
6374 (status_pending_p_callback): Use
6375 thread_still_has_status_pending_p. If the event is no longer
6376 interesting, resume the LWP.
6377 (handle_tracepoints): Add assert.
6378 (maybe_move_out_of_jump_pad): Remove cancel_breakpoints call.
6379 (wstatus_maybe_breakpoint): New function.
6380 (cancel_breakpoint): Delete function.
6381 (check_stopped_by_watchpoint): New function, factored out from
6382 linux_low_filter_event.
6383 (lp_status_maybe_breakpoint): Delete function.
6384 (linux_low_filter_event): Remove filter_ptid argument.
6385 Leave thread group exits pending here. Store the LWP's stop PC.
6386 Always leave events pending.
6387 (linux_wait_for_event_filtered): Pull all events out of the
6388 kernel, and leave them all pending.
6389 (count_events_callback, select_event_lwp_callback): Consider all
6390 events.
6391 (cancel_breakpoints_callback, linux_cancel_breakpoints): Delete.
6392 (select_event_lwp): Only give preference to the stepping LWP in
6393 all-stop mode. Adjust comments.
6394 (ignore_event): New function.
6395 (linux_wait_1): Delete 'retry' label. Use ignore_event. Remove
6396 references to cancel_breakpoints. Adjust to renames. Also give
6397 equal priority to all LWPs that have had events in non-stop mode.
6398 If reporting a software breakpoint event, unadjust the LWP's PC.
6399 (linux_wait): If linux_wait_1 returned an ignored event, retry.
6400 (stuck_in_jump_pad_callback, move_out_of_jump_pad_callback):
6401 Adjust.
6402 (linux_resume_one_lwp): Store the LWP's PC. Adjust.
6403 (resume_status_pending_p): Use thread_still_has_status_pending_p.
6404 (linux_stopped_by_watchpoint): Adjust.
6405 (linux_target_ops): Remove reference to linux_cancel_breakpoints.
6406 * linux-low.h (enum lwp_stop_reason): New.
6407 (struct lwp_info) <stop_pc>: Adjust comment.
6408 <stopped_by_watchpoint>: Delete field.
6409 <stop_reason>: New field.
6410 * linux-x86-low.c (x86_linux_prepare_to_resume): Adjust.
6411 * mem-break.c (software_breakpoint_inserted_here)
6412 (hardware_breakpoint_inserted_here): New function.
6413 * mem-break.h (software_breakpoint_inserted_here)
6414 (hardware_breakpoint_inserted_here): Declare.
6415 * target.h (struct target_ops) <cancel_breakpoints>: Remove field.
6416 (cancel_breakpoints): Delete.
6417 * tracepoint.c (clear_installed_tracepoints, stop_tracing)
6418 (upload_fast_traceframes): Remove references to
6419 cancel_breakpoints.
6420
64212015-01-09 Pedro Alves <palves@redhat.com>
6422
6423 * thread-db.c (find_new_threads_callback): Ignore thread if the
6424 kernel thread ID is -1.
6425
64262015-01-09 Pedro Alves <palves@redhat.com>
6427
6428 * linux-low.c (linux_attach_fail_reason_string): Move to
6429 nat/linux-ptrace.c, and rename.
6430 (linux_attach_lwp): Update comment.
6431 (attach_proc_task_lwp_callback): New function.
6432 (linux_attach): Adjust to rename and use
6433 linux_proc_attach_tgid_threads.
6434 (linux_attach_fail_reason_string): Delete declaration.
6435
64362015-01-01 Joel Brobecker <brobecker@adacore.com>
6437
6438 * gdbreplay.c (gdbreplay_version): Update copyright year to 2015.
6439 * server.c (gdbserver_version): Likewise.
6440
64412014-12-29 Sergio Durigan Junior <sergiodj@redhat.com>
6442
6443 * remote-utils.c: Include ctype.h.
6444 (input_interrupt): Explicitly handle the case when the char
6445 received is the NUL byte. Improve the printing of non-ASCII
6446 characters.
6447
64482014-12-16 Joel Brobecker <brobecker@adacore.com>
6449
6450 * linux-low.c (linux_low_filter_event): Update call to
6451 linux_enable_event_reporting following the addition of
6452 a new parameter to that function.
6453
64542014-12-16 Catalin Udma <catalin.udma@freescale.com>
6455
6456 PR server/17457
6457 * linux-aarch64-low.c (AARCH64_FPSR_REGNO): New define.
6458 (AARCH64_FPCR_REGNO): Likewise.
6459 (AARCH64_NUM_REGS): Update to include fpsr/fpcr registers.
6460 (aarch64_fill_fpregset): Add missing fpsr/fpcr registers.
6461 (aarch64_store_fpregset): Likewise.
6462
64632014-12-15 Joel Brobecker <brobecker@adacore.com>
6464
6465 * lynx-low.c (lynx_resume): Use PTRACE_SINGLESTEP_ONE if N == 1.
6466 Remove FIXME comment about assumption about N.
6467
64682014-12-13 Joel Brobecker <brobecker@adacore.com>
6469
6470 * configure.ac: If large-file support is disabled in GDBserver,
6471 pass --disable-largefile to ACX_CONFIGURE_DIR call for "gnulib".
6472 * configure: Regenerate.
6473
64742014-12-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
6475
6476 * linux-low.c (regsets_fetch_inferior_registers): Suppress the
6477 warning upon ENODATA from ptrace.
6478 * linux-s390-low.c (s390_store_tdb): New.
6479 (s390_regsets): Add regset for NT_S390_TDB.
6480
64812014-12-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
6482
6483 * linux-low.c (regsets_store_inferior_registers): Skip regsets
6484 without a fill_function.
6485 * linux-s390-low.c (s390_fill_last_break): Remove.
6486 (s390_regsets): Set fill_function to NULL for NT_S390_LAST_BREAK.
6487 (s390_arch_setup): Use regset's size instead of fill_function for
6488 loop end condition.
6489
64902014-12-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
6491
6492 * linux-low.c (regsets_fetch_inferior_registers): Do not invoke
6493 the regset's store function when ptrace returned an error.
6494 * regcache.c (get_thread_regcache): Invalidate register cache
6495 before fetching inferior's registers.
6496
64972014-12-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
6498
6499 * linux-low.c (regsets_fetch_inferior_registers): Rephrase
6500 while-loop as for-loop.
6501 (regsets_store_inferior_registers): Likewise.
6502
65032014-11-28 Yao Qi <yao@codesourcery.com>
6504
6505 * configure.ac(AC_CHECK_FUNCS): Remove readlink.
6506 * config.in, configure: Re-generate.
6507 * hostio.c (handle_unlink): Remove code checking HAVE_READLINK
6508 is defined.
6509
65102014-11-21 Yao Qi <yao@codesourcery.com>
6511
6512 * configure.ac: Don't invoke AC_FUNC_ALLOCA.
6513 (AC_CHECK_HEADERS): Remove malloc.h.
6514 * configure: Re-generated.
6515 * config.in: Re-generated.
6516 * server.h: Don't include alloca.h and malloc.h.
6517 * gdbreplay.c: Don't check HAVE_ALLOCA_H is defined.
6518 Don't include malloc.h.
6519
65202014-11-17 Joel Brobecker <brobecker@adacore.com>
6521
6522 * lynx-low.c (lynx_write_memory): Put lynx_read_memory and
6523 corresponding ERRNO check in same block.
6524
65252014-11-12 Pedro Alves <palves@redhat.com>
6526
6527 * server.c (cont_thread): Update comment.
6528 (start_inferior, attach_inferior): No longer clear cont_thread.
6529 (handle_v_cont): No longer set cont_thread.
6530 (captured_main): Clear cont_thread each time a GDB connects.
6531
65322014-11-12 Pedro Alves <palves@redhat.com>
6533
6534 * linux-low.c (linux_wait_1): Don't force a wait for the Hc
6535 thread, and don't resume all threads if the Hc thread has exited.
6536
65372014-11-12 Pedro Alves <palves@redhat.com>
6538
6539 * linux-low.c (linux_request_interrupt): Always send a SIGINT to
6540 the process group instead of to a specific LWP.
6541
65422014-10-15 Pedro Alves <palves@redhat.com>
6543
6544 PR server/17487
6545 * win32-arm-low.c (arm_set_thread_context): Remove current_event
6546 parameter.
6547 (arm_set_thread_context): Delete.
6548 (the_low_target): Adjust.
6549 * win32-i386-low.c (debug_registers_changed)
6550 (debug_registers_used): Delete.
6551 (update_debug_registers_callback): New function.
6552 (x86_dr_low_set_addr, x86_dr_low_set_control): Mark all threads as
6553 needing to update their debug registers.
6554 (win32_get_current_dr): New function.
6555 (x86_dr_low_get_addr, x86_dr_low_get_control)
6556 (x86_dr_low_get_status): Fetch the debug register from the thread
6557 record's context.
6558 (i386_initial_stuff): Adjust.
6559 (i386_get_thread_context): Remove current_event parameter. Don't
6560 clear debug_registers_changed nor copy DR values to
6561 debug_reg_state.
6562 (i386_set_thread_context): Delete.
6563 (i386_prepare_to_resume): New function.
6564 (i386_thread_added): Mark the thread as needing to update irs
6565 debug registers.
6566 (the_low_target): Remove i386_set_thread_context and install
6567 i386_prepare_to_resume.
6568 * win32-low.c (win32_get_thread_context): Adjust.
6569 (win32_set_thread_context): Use SetThreadContext
6570 directly.
6571 (win32_prepare_to_resume): New function.
6572 (win32_require_context): New function, factored out from ...
6573 (thread_rec): ... this.
6574 (continue_one_thread): Call win32_prepare_to_resume on each thread
6575 we're about to continue.
6576 (win32_resume): Call win32_prepare_to_resume on the event thread.
6577 * win32-low.h (struct win32_thread_info)
6578 <debug_registers_changed>: New field.
6579 (struct win32_target_ops): Change prototype of set_thread_context,
6580 delete set_thread_context and add prepare_to_resume.
6581 (win32_require_context): New declaration.
6582
65832014-10-08 Gary Benson <gbenson@redhat.com>
6584
6585 * server.h: Do not include common-exceptions.h.
6586
65872014-10-08 Gary Benson <gbenson@redhat.com>
6588
6589 * server.h: Do not include cleanups.h.
6590
65912014-09-30 James Hogan <james.hogan@imgtec.com>
6592
6593 * Makefile.in (clean): Add rm -f commands for mips-dsp-linux.c and
6594 mips64-dsp-linux.c.
6595
65962014-09-23 Yao Qi <yao@codesourcery.com>
6597
6598 * linux-low.c (lp_status_maybe_breakpoint): New function.
6599 (linux_low_filter_event): Call lp_status_maybe_breakpoint.
6600 (count_events_callback): Likewise.
6601 (select_event_lwp_callback): Likewise.
6602 (cancel_breakpoints_callback): Likewise.
6603
66042014-09-19 Don Breazeal <donb@codesourcery.com>
6605
6606 * linux-low.c (handle_extended_wait): Call
6607 linux_ptrace_get_extended_event.
6608 (get_stop_pc, get_detach_signal, linux_low_filter_event): Call
6609 linux_is_extended_waitstatus.
6610
66112014-09-16 Joel Brobecker <brobecker@adacore.com>
6612
6613 * Makefile.in (CPPFLAGS): Define.
6614 (INTERNAL_CFLAGS_BASE): Add ${CPPFLAGS}.
6615 (IPAGENT_CFLAGS): Remove ${CPPFLAGS}.
6616
66172014-09-16 Gary Benson <gbenson@redhat.com>
6618
6619 * inferiors.h (current_inferior): Renamed as...
6620 (current_thread): New variable. All uses updated.
6621 * linux-low.c (get_pc): Renamed saved_inferior as saved_thread.
6622 (maybe_move_out_of_jump_pad): Likewise.
6623 (cancel_breakpoint): Likewise.
6624 (linux_low_filter_event): Likewise.
6625 (wait_for_sigstop): Likewise.
6626 (linux_resume_one_lwp): Likewise.
6627 (need_step_over_p): Likewise.
6628 (start_step_over): Likewise.
6629 (linux_stabilize_threads): Renamed save_inferior as saved_thread.
6630 * linux-x86-low.c (x86_linux_update_xmltarget): Likewise.
6631 * proc-service.c (ps_lgetregs): Renamed reg_inferior as reg_thread
6632 and save_inferior as saved_thread.
6633 * regcache.c (get_thread_regcache): Renamed saved_inferior as
6634 saved_thread.
6635 (regcache_invalidate_thread): Likewise.
6636 * remote-utils.c (prepare_resume_reply): Likewise.
6637 * thread-db.c (thread_db_get_tls_address): Likewise.
6638 (disable_thread_event_reporting): Likewise.
6639 (remove_thread_event_breakpoints): Likewise.
6640 * tracepoint.c (gdb_agent_about_to_close): Renamed save_inferior
6641 as saved_thread.
6642 * target.h (set_desired_inferior): Renamed as...
6643 (set_desired_thread): New declaration. All uses updated.
6644 * server.c (myresume): Updated comment to reference thread instead
6645 of inferior.
6646 (handle_serial_event): Likewise.
6647 (handle_target_event): Likewise.
6648
66492014-09-12 Tom Tromey <tromey@redhat.com>
6650 Gary Benson <gbenson@redhat.com>
6651
6652 * regcache.h: Include common-regcache.h.
6653 (regcache_read_pc): Don't declare.
6654 * regcache.c (get_thread_regcache_for_ptid): New function.
6655
66562014-09-11 Tom Tromey <tromey@redhat.com>
6657 Gary Benson <gbenson@redhat.com>
6658
6659 * symbol.c: New file.
6660 * Makefile.in (SFILES): Add symbol.c.
6661 (OBS): Add symbol.o.
6662
66632014-09-11 Gary Benson <gbenson@redhat.com>
6664
6665 * target.c (target_stop_ptid, target_continue_ptid): New
6666 functions.
6667
66682014-09-11 Tom Tromey <tromey@redhat.com>
6669 Gary Benson <gbenson@redhat.com>
6670
6671 * target.h: Include target/target.h.
6672 * target.c (target_read_memory, target_read_uint32)
6673 (target_write_memory): New functions.
6674
66752014-09-11 Gary Benson <gbenson@redhat.com>
6676
6677 * server.h (debug_hw_points): Don't declare.
6678 * server.c (debug_hw_points): Don't define. Replace all uses
6679 with show_debug_regs.
6680 * linux-aarch64-low.c (debug_hw_points): Don't define. Replace
6681 all uses with show_debug_regs.
6682
66832014-09-08 Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
6684
6685 * linux-ppc-low.c (ppc_collect_ptrace_register): Adjust routine to take
6686 endianness into account.
6687 (ppc_supply_ptrace_register): Likewise.
6688
66892014-09-03 James Hogan <james.hogan@imgtec.com>
6690
6691 * linux-mips-low.c (mips_read_description): Reset errno to 0 prior
6692 to reading DSP_CONTROL with PTRACE_PEEKUSER ptrace call.
6693
66942014-09-03 Gary Benson <gbenson@redhat.com>
6695
6696 * linux-x86-low.c (x86_linux_prepare_to_resume): Use
6697 ALL_DEBUG_ADDRESS_REGISTERS.
6698
66992014-09-02 Gary Benson <gbenson@redhat.com>
6700
6701 * i386-low.h: Renamed as...
6702 * x86-low.h: New file. All type, function and variable name
6703 prefixes changed from "i386_" to "x86_". All references updated.
6704 * i386-low.c: Renamed as...
6705 * x86-low.c: New file. All type, function and variable name
6706 prefixes changed from "i386_" to "x86_". All references updated.
6707
67082014-09-02 Gary Benson <gbenson@redhat.com>
6709
6710 * linux-x86-low.c (x86_linux_new_process): Use XCNEW.
6711 (x86_linux_new_thread): Likewise.
6712
67132014-08-29 Gary Benson <gbenson@redhat.com>
6714
6715 * server.h (setjmp.h): Do not include.
6716 (toplevel): Do not declare.
6717 (common-exceptions.h): Include.
6718 (cleanups.h): Likewise.
6719 * server.c (toplevel): Do not define.
6720 (exit_code): New static global.
6721 (detach_or_kill_for_exit_cleanup): New function.
6722 (main): New function. Original main renamed to...
6723 (captured_main): New function.
6724 * utils.c (verror) [!IN_PROCESS_AGENT]: Use throw_verror.
6725
67262014-08-29 Gary Benson <gbenson@redhat.com>
6727
6728 * Makefile.in (SFILES): Add common/common-exceptions.c.
6729 (OBS): Add common-exceptions.o.
6730 (common-exceptions.o): New rule.
6731 * utils.c (prepare_to_throw_exception): New function.
6732
67332014-08-29 Gary Benson <gbenson@redhat.com>
6734
6735 * config.in: Regenerate.
6736 * configure: Likewise.
6737
67382014-08-29 Gary Benson <gbenson@redhat.com>
6739
6740 * Makefile.in (SFILES): Add common/cleanups.c.
6741 (OBS): cleanups.o.
6742 (cleanups.o): New rule.
6743
67442014-08-29 Gary Benson <gbenson@redhat.com>
6745
6746 * utils.c (internal_vwarning): New function.
6747
67482014-08-28 Gary Benson <gbenson@redhat.com>
6749
6750 * utils.h (fatal): Remove declaration.
6751 * utils.c (fatal): Remove function.
6752
67532014-08-28 Gary Benson <gbenson@redhat.com>
6754
6755 * tracepoint.c (gdb_agent_init): Replace fatal with
6756 perror_with_name.
6757 (initialize_tracepoint): Likewise.
6758
67592014-08-28 Gary Benson <gbenson@redhat.com>
6760
6761 * remote-utils.c (remote_prepare): Replace fatal with error.
6762
67632014-08-28 Gary Benson <gbenson@redhat.com>
6764
6765 * linux-low.c (linux_async): Replace fatal with warning.
6766 Tidy up and return.
6767 (linux_start_non_stop): Return -1 if linux_async failed.
6768
67692014-08-28 Gary Benson <gbenson@redhat.com>
6770
6771 * linux-x86-low.c (i386_dr_low_set_addr): Replace check with
6772 gdb_assert.
6773 (i386_dr_low_get_addr): Remove vague comment.
6774 * win32-i386-low.c (i386_dr_low_set_addr): Replace check with
6775 gdb_assert.
6776
67772014-08-28 Gary Benson <gbenson@redhat.com>
6778
6779 * inferiors.c (get_thread_process): Replace check with gdb_assert.
6780 * linux-low.c (linux_wait_for_event_filtered): Replace fatal with
6781 internal_error.
6782 (linux_resume_one_lwp): Likewise.
6783 * linux-x86-low.c (x86_siginfo_fixup): Replace checks with
6784 gdb_assert.
6785 * mem-break.c (raw_bkpt_type_to_target_hw_bp_type): Replace fatal
6786 with internal_error.
6787 * regcache.c (get_thread_regcache): Replace check with gdb_assert.
6788 (init_register_cache): Replace fatal with gdb_assert_not_reached.
6789 (find_register_by_name): Replace fatal with internal_error.
6790 (find_regno): Likewise.
6791 * tdesc.c (init_target_desc): Replace check with gdb_assert.
6792 * thread-db.c (thread_db_create_event): Likewise.
6793 (thread_db_load_search): Likewise.
6794 (try_thread_db_load_1): Likewise.
6795 * tracepoint.c (get_jump_space_head): Replace fatal with
6796 internal_error.
6797 (claim_trampoline_space): Likewise.
6798 (have_fast_tracepoint_trampoline_buffer): Likewise.
6799 (cmd_qtstart): Likewise.
6800 (stop_tracing): Likewise.
6801 (fast_tracepoint_collecting): Likewise.
6802 (target_malloc): Likewise.
6803 (download_tracepoint): Likewise.
6804 (download_trace_state_variables): Replace check with gdb_assert.
6805 (upload_fast_traceframes): Replace fatal with internal_error.
6806
68072014-08-19 Tom Tromey <tromey@redhat.com>
6808 Gary Benson <gbenson@redhat.com>
6809
6810 * Makefile.in (SFILES): Add common/common-debug.c.
6811 (OBS): Add common-debug.o.
6812 (common-debug.o): New rule.
6813 * debug.h (debug_printf): Don't declare.
6814 * debug.c (debug_printf): Renamed and rewritten as...
6815 (debug_vprintf): New function.
6816
68172014-08-19 Gary Benson <gbenson@redhat.com>
6818
6819 * utils.h: Do not include print-utils.h.
6820
68212014-08-19 Tom Tromey <tromey@redhat.com>
6822 Gary Benson <gbenson@redhat.com>
6823
6824 * server.h: Add static assertion.
6825 (gdb_byte, CORE_ADDR, LONGEST, ULONGEST): Remove.
6826
68272014-08-19 Tom Tromey <tromey@redhat.com>
6828 Gary Benson <gbenson@redhat.com>
6829
6830 * Makefile.in (SFILES): Add common/errors.c.
6831 (OBS): Add errors.o.
6832 (IPA_OBS): Add errors-ipa.o.
6833 (errors.o): New rule.
6834 (errors-ipa.o): Likewise.
6835 * utils.h (perror_with_name, error, warning): Don't declare.
6836 * utils.c (warning): Renamed and rewritten as...
6837 (vwarning): New function.
6838 (error): Renamed and rewritten as...
6839 (verror): New function.
6840 (internal_error): Renamed and rewritten as...
6841 (internal_verror): New function.
6842
68432014-08-07 Gary Benson <gbenson@redhat.com>
6844
6845 * configure.ac (AC_CHECK_HEADERS): Remove errno.h.
6846 * configure: Regenerate.
6847 * config.in: Likewise.
6848 * server.h: Do not include errno.h.
6849 * event-loop.c: Likewise.
6850 * hostio-errno.c: Likewise.
6851 * linux-low.c: Likewise.
6852 * remote-utils.c: Likewise.
6853 * spu-low.c: Likewise.
6854 * utils.c: Likewise.
6855 * gdbreplay.c: Unconditionally include errno.h.
6856
68572014-08-07 Gary Benson <gbenson@redhat.com>
6858
6859 * server.h: Do not include string.h.
6860 * event-loop.c: Likewise.
6861 * linux-low.c: Likewise.
6862 * regcache.c: Likewise.
6863 * remote-utils.c: Likewise.
6864 * spu-low.c: Likewise.
6865 * utils.c: Likewise.
6866
68672014-08-07 Gary Benson <gbenson@redhat.com>
6868
6869 * server.h: Do not include gdb_assert.h.
6870
68712014-08-07 Gary Benson <gbenson@redhat.com>
6872
6873 * server.h: Do not include common-utils.h.
6874
68752014-08-07 Gary Benson <gbenson@redhat.com>
6876
6877 * server.h: Do not include ptid.h.
6878 * notif.h: Likewise.
6879
68802014-08-07 Gary Benson <gbenson@redhat.com>
6881
6882 * server.h: Do not include gdb_locale.h.
6883
68842014-08-07 Gary Benson <gbenson@redhat.com>
6885
6886 * server.h: Do not include gdb/signals.h.
6887 * win32-low.c: Likewise.
6888
68892014-08-07 Gary Benson <gbenson@redhat.com>
6890
6891 * server.h: Do not include pathmax.h.
6892
68932014-08-07 Gary Benson <gbenson@redhat.com>
6894
6895 * server.h: Do not include libiberty.h.
6896 * linux-bfin-low.c: Likewise.
6897
68982014-08-07 Gary Benson <gbenson@redhat.com>
6899
6900 * server.h: Do not include ansidecl.h.
6901
69022014-08-07 Gary Benson <gbenson@redhat.com>
6903
6904 * linux-x86-low.c: Do not include stddef.h.
6905 * lynx-ppc-low.c: Likewise.
6906 * tracepoint.c: Likewise.
6907
69082014-08-07 Gary Benson <gbenson@redhat.com>
6909
6910 * server.h: Do not include stdarg.h.
6911 * nto-low.c: Likewise.
6912
69132014-08-07 Gary Benson <gbenson@redhat.com>
6914
6915 * server.h: Do not include stdlib.h.
6916 * inferiors.c: Likewise.
6917 * linux-low.c: Likewise.
6918 * regcache.c: Likewise.
6919 * spu-low.c: Likewise.
6920 * tracepoint.c: Likewise.
6921 * utils.c: Likewise.
6922
69232014-08-07 Gary Benson <gbenson@redhat.com>
6924
6925 * server.h: Do not include stdio.h.
6926 * linux-low.c: Likewise.
6927 * remote-utils.c: Likewise.
6928 * spu-low.c: Likewise.
6929 * utils.c: Likewise.
6930 * wincecompat.c: Likewise.
6931
69322014-08-06 Gary Benson <gbenson@redhat.com>
6933
6934 * regcache.c (init_register_cache): Move conditionals inside if.
6935
69362014-08-06 Gary Benson <gbenson@redhat.com>
6937
6938 * linux-low.c (linux_supports_non_stop): Use target_is_async_p.
6939
69402014-07-31 Gary Benson <gbenson@redhat.com>
6941
6942 * ax.h: Do not include server.h.
6943 * gdbthread.h: Likewise.
6944 * lynx-low.h: Likewise.
6945 * notif.h: Likewise.
6946
69472014-07-30 Gary Benson <gbenson@redhat.com>
6948
6949 * server.h: Include common-defs.h.
6950 Do not include config.h or build-gnulib-gdbserver/config.h.
6951
69522014-07-30 Gary Benson <gbenson@redhat.com>
6953
6954 * hostio-errno.c: Move server.h to top of includes list.
6955 * inferiors.c: Likewise.
6956 * linux-x86-low.c: Likewise.
6957 * notif.c: Include server.h.
6958
69592014-07-24 Tom Tromey <tromey@redhat.com>
6960 Gary Benson <gbenson@redhat.com>
6961
6962 * server.h (CORE_ADDR): Now unsigned.
6963
69642014-07-16 Pedro Alves <palves@redhat.com>
6965
6966 * linux-low.c (linux_kill_one_lwp): Use kill_lwp, not kill.
6967
69682014-07-15 Pedro Alves <palves@redhat.com>
6969
6970 * linux-low.c (linux_kill_one_lwp): Save errno and work with saved
6971 copy.
6972
69732014-07-11 Pedro Alves <palves@redhat.com>
6974
6975 * linux-low.c (kill_wait_lwp): New function, based on
6976 kill_one_lwp_callback, but use my_waitpid directly.
6977 (kill_one_lwp_callback, linux_kill): Use it.
6978
69792014-06-23 Pedro Alves <palves@redhat.com>
6980
6981 * linux-x86-low.c (x86_linux_prepare_to_resume): Clear DR_CONTROL
6982 before setting DR0..DR3.
6983
69842014-06-20 Gary Benson <gbenson@redhat.com>
6985
6986 * configure.ac (AC_REPLACE_FUNCS) <vasprintf, vsnprintf>: Removed.
6987 * configure: Regenerated.
6988 * config.in: Likewise.
6989
69902014-06-20 Gary Benson <gbenson@redhat.com>
6991
6992 * Makefile.in (SFILES): Update locations for files moved
6993 from common to nat.
6994 (object file files): Reordered.
6995
69962014-06-20 Gary Benson <gbenson@redhat.com>
6997
6998 * i386-low.h (i386_dr_low_can_set_addr): Removed.
6999 (i386_dr_low_set_addr): Likewise.
7000 (i386_dr_low_get_addr): Likewise.
7001 (i386_dr_low_can_set_control): Likewise.
7002 (i386_dr_low_set_control): Likewise.
7003 (i386_dr_low_get_control): Likewise.
7004 (i386_dr_low_get_status): Likewise.
7005 (i386_get_debug_register_length): Likewise.
7006 * linux-x86-low.c (i386_dr_low_set_addr):
7007 Changed signature. Made static.
7008 (i386_dr_low_get_addr): Likewise.
7009 (i386_dr_low_set_control): Likewise.
7010 (i386_dr_low_get_control): Likewise.
7011 (i386_dr_low_get_status): Likewise.
7012 (i386_dr_low): New global variable.
7013 * win32-i386-low.c (i386_dr_low_set_addr):
7014 Changed signature. Made static.
7015 (i386_dr_low_get_addr): Likewise.
7016 (i386_dr_low_set_control): Likewise.
7017 (i386_dr_low_get_control): Likewise.
7018 (i386_dr_low_get_status): Likewise.
7019 (i386_dr_low): New global variable.
7020
70212014-06-20 Marcus Shawcroft <marcus.shawcroft@arm.com>
7022
7023 * configure.ac: Invoke. AC_CHECK_TOOL(AR, ar).
7024 * Makefile.in (AR, AR_FLAGS): Define.
7025 * configure: Regenerate.
7026
70272014-06-19 Gary Benson <gbenson@redhat.com>
7028
7029 * Makefile.in (i386-dregs.o): New rule.
7030 * configure.srv: Add i386-dregs.o to all targets using i386-low.o.
7031 * i386-low.c (target.h): Remove include.
7032 (TARGET_HAS_DR_LEN_8): Now in i386-dregs.c.
7033 (DR_CONTROL_SHIFT): Likewise.
7034 (DR_CONTROL_SIZE): Likewise.
7035 (DR_RW_EXECUTE): Likewise.
7036 (DR_RW_WRITE): Likewise.
7037 (DR_RW_READ): Likewise.
7038 (DR_RW_IORW): Likewise.
7039 (DR_LEN_1): Likewise.
7040 (DR_LEN_2): Likewise.
7041 (DR_LEN_4): Likewise.
7042 (DR_LEN_8): Likewise.
7043 (DR_LOCAL_ENABLE_SHIFT): Likewise.
7044 (DR_GLOBAL_ENABLE_SHIFT): Likewise.
7045 (DR_ENABLE_SIZE): Likewise.
7046 (DR_LOCAL_SLOWDOWN): Likewise.
7047 (DR_GLOBAL_SLOWDOWN): Likewise.
7048 (DR_CONTROL_RESERVED): Likewise.
7049 (I386_DR_CONTROL_MASK): Likewise.
7050 (I386_DR_VACANT): Likewise.
7051 (I386_DR_LOCAL_ENABLE): Likewise.
7052 (I386_DR_GLOBAL_ENABLE): Likewise.
7053 (I386_DR_DISABLE): Likewise.
7054 (I386_DR_SET_RW_LEN): Likewise.
7055 (I386_DR_GET_RW_LEN): Likewise.
7056 (I386_DR_WATCH_HIT): Likewise.
7057 (i386_wp_op_t): Likewise.
7058 (i386_show_dr): Likewise.
7059 (i386_length_and_rw_bits): Likewise.
7060 (i386_insert_aligned_watchpoint): Likewise.
7061 (i386_remove_aligned_watchpoint): Likewise.
7062 (i386_handle_nonaligned_watchpoint): Likewise.
7063 i386_update_inferior_debug_regs(): Likewise.
7064 (i386_dr_insert_watchpoint): Likewise.
7065 (i386_dr_remove_watchpoint): Likewise.
7066 (i386_dr_region_ok_for_watchpoint): Likewise.
7067 (i386_dr_stopped_data_address): Likewise.
7068 (i386_dr_stopped_by_watchpoint): Likewise.
7069
70702014-06-19 Gary Benson <gbenson@redhat.com>
7071
7072 * i386-low.c (i386_dr_show): Renamed to
7073 i386_show_dr and made static. All uses updated.
7074 (i386_dr_length_and_rw_bits): Renamed to
7075 i386_length_and_rw_bits and made static.
7076 All uses updated.
7077 (i386_dr_insert_aligned_watchpoint): Renamed to
7078 i386_insert_aligned_watchpoint and made static.
7079 All uses updated.
7080 (i386_dr_remove_aligned_watchpoint): Renamed to
7081 i386_remove_aligned_watchpoint and made static.
7082 All uses updated.
7083 (i386_dr_update_inferior_debug_regs): Renamed to
7084 i386_update_inferior_debug_regs and made static.
7085 All uses updated.
7086
70872014-06-18 Gary Benson <gbenson@redhat.com>
7088
7089 * i386-low.h (i386_dr_low_can_set_addr): New macro.
7090 (i386_dr_low_can_set_control): Likewise.
7091 (i386_get_debug_register_length): Likewise.
7092 * i386-low.c (i386_dr_low_can_set_addr): Now in i386-low.h.
7093 (i386_dr_low_can_set_control): Likewise.
7094 (i386_get_debug_register_length): Likewise.
7095
70962014-06-17 Gary Benson <gbenson@redhat.com>
7097
7098 * i386-low.h (i386-dregs.h): New include.
7099 (DR_FIRSTADDR): Now in i386-dregs.h.
7100 (DR_LASTADDR): Likewise.
7101 (DR_NADDR): Likewise.
7102 (DR_STATUS): Likewise.
7103 (DR_CONTROL): Likewise.
7104 (i386_debug_reg_state): Likewise.
7105 (i386_dr_insert_watchpoint): Likewise.
7106 (i386_dr_remove_watchpoint): Likewise.
7107 (i386_dr_region_ok_for_watchpoint): Likewise.
7108 (i386_dr_stopped_data_address): Likewise.
7109 (i386_dr_stopped_by_watchpoint): Likewise.
7110 * i386-low.c (ALL_DEBUG_REGISTERS): Likewise.
7111
71122014-06-18 Gary Benson <gbenson@redhat.com>
7113
7114 * i386-low.h (i386_low_insert_watchpoint): Renamed to
7115 i386_dr_insert_watchpoint.
7116 (i386_low_remove_watchpoint): Renamed to
7117 i386_dr_remove_watchpoint.
7118 (i386_low_region_ok_for_watchpoint): Renamed to
7119 i386_dr_region_ok_for_watchpoint.
7120 (i386_low_stopped_data_address): Renamed to
7121 i386_dr_stopped_data_address.
7122 (i386_low_stopped_by_watchpoint): Renamed to
7123 i386_dr_stopped_by_watchpoint.
7124 * i386-low.c (i386_show_dr): Renamed to
7125 i386_dr_show and made nonstatic. All uses updated.
7126 (i386_length_and_rw_bits): Renamed to
7127 i386_dr_length_and_rw_bits and made nonstatic.
7128 All uses updated.
7129 (i386_insert_aligned_watchpoint): Renamed to
7130 i386_dr_insert_aligned_watchpoint and made nonstatic.
7131 All uses updated.
7132 (i386_remove_aligned_watchpoint): Renamed to
7133 i386_dr_remove_aligned_watchpoint and made nonstatic.
7134 All uses updated.
7135 (i386_update_inferior_debug_regs): Renamed to
7136 i386_dr_update_inferior_debug_regs and made nonstatic.
7137 All uses updated.
7138 (i386_low_insert_watchpoint): Renamed to
7139 i386_dr_insert_watchpoint. All uses updated.
7140 (i386_low_remove_watchpoint): Renamed to
7141 i386_dr_remove_watchpoint. All uses updated.
7142 (i386_low_region_ok_for_watchpoint): Renamed to
7143 i386_dr_region_ok_for_watchpoint. All uses updated.
7144 (i386_low_stopped_data_address): Renamed to
7145 i386_dr_stopped_data_address. All uses updated.
7146 (i386_low_stopped_by_watchpoint): Renamed to
7147 i386_dr_stopped_by_watchpoint. All uses updated.
7148
71492014-06-18 Gary Benson <gbenson@redhat.com>
7150
7151 * i386-low.c (i386_dr_low_can_set_addr): New macro.
7152 (i386_dr_low_can_set_control): Likewise.
7153 (i386_insert_aligned_watchpoint): New check.
7154
71552014-06-18 Gary Benson <gbenson@redhat.com>
7156
7157 * i386-low.c (i386_update_inferior_debug_regs) <inf_state>:
7158 Renamed to state.
7159
71602014-06-18 Gary Benson <gbenson@redhat.com>
7161
7162 * i386-low.c (i386_length_and_rw_bits): Use internal_error
7163 instead of fatal and error.
7164 (i386_handle_nonaligned_watchpoint): Likewise.
7165
71662014-06-18 Gary Benson <gbenson@redhat.com>
7167
7168 * i386-low.c (i386_get_debug_register_length): New macro.
7169 (TARGET_HAS_DR_LEN_8): Remove conditional. Use above macro.
7170 (i386_show_dr): Use debug_printf instead of fprintf. Use
7171 phex to format values.
7172
71732014-06-18 Gary Benson <gbenson@redhat.com>
7174
7175 * i386-low.h: Comment changes.
7176 * i386-low.c: Likewise.
7177
71782014-06-18 Gary Benson <gbenson@redhat.com>
7179
7180 * i386-low.c: Whitespace changes.
7181
71822014-06-12 Tom Tromey <tromey@redhat.com>
7183
7184 * utils.c (freeargv): Remove.
7185
71862014-06-12 Tom Tromey <tromey@redhat.com>
7187
7188 * debug.c (debug_printf): Remove HAVE_GETTIMEOFDAY checks.
7189 * server.c (monitor_show_help): Remove HAVE_GETTIMEOFDAY check.
7190 (parse_debug_format_options): Likewise.
7191 (gdbserver_usage): Likewise.
7192 * Makefile.in (LIBIBERTY_BUILDDIR, LIBIBERTY): New variables.
7193 (SUBDIRS, REQUIRED_SUBDIRS): Add libiberty.
7194 (gdbserver$(EXEEXT), gdbreplay$(EXEEXT)): Depend on and link
7195 against libiberty.
7196 ($(LIBGNU)): Depend on libiberty.
7197 (all-lib): Recurse into all subdirs.
7198 (install-only): Invoke "install" target in subdirs.
7199 (vasprintf.o, vsnprintf.o, safe-ctype.o, lbasename.o): Remove
7200 targets.
7201 * configure: Rebuild.
7202 * configure.ac: Add ACX_CONFIGURE_DIR for libiberty. Don't check
7203 for vasprintf, vsnprintf, or gettimeofday.
7204 * configure.srv: Don't add safe-ctype.o or lbasename.o to
7205 srv_tgtobj.
7206
72072014-06-05 Joel Brobecker <brobecker@adacore.com>
7208
7209 * development.sh: Delete.
7210 * Makefile.in (config.status): Adjust dependency on development.sh.
7211 * configure.ac: Adjust development.sh source call.
7212 * configure: Regenerate.
7213
72142014-06-02 Pedro Alves <palves@redhat.com>
7215
7216 * ax.c (gdb_free_agent_expr): New function.
7217 * ax.h (gdb_free_agent_expr): New declaration.
7218 * mem-break.c (delete_gdb_breakpoint_1): Also clear the commands
7219 list.
7220 (clear_breakpoint_conditions, clear_breakpoint_commands): Make
7221 static.
7222 (clear_breakpoint_conditions_and_commands): New function.
7223 * mem-break.h (clear_breakpoint_conditions): Delete declaration.
7224 (clear_breakpoint_conditions_and_commands): New declaration.
7225
72262014-05-23 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
7227
7228 * linux-aarch64-low.c (asm/ptrace.h): Include.
7229
72302014-05-21 Jan Kratochvil <jan.kratochvil@redhat.com>
7231
7232 Fix TLS access for -static -pthread.
7233 * gdbserver/thread-db.c (struct thread_db): Add td_thr_tlsbase_p.
7234 (thread_db_get_tls_address): Call it if LOAD_MODULE is zero.
7235 (thread_db_load_search, try_thread_db_load_1): Initialize it.
7236
72372014-05-20 Pedro Alves <palves@redhat.com>
7238
7239 * linux-aarch64-low.c (aarch64_insert_point)
7240 (aarch64_remove_point): No longer check whether the type is
7241 supported here. Adjust to new interface.
7242 (the_low_target): Install aarch64_supports_z_point_type as
7243 supports_z_point_type method.
7244 * linux-arm-low.c (raw_bkpt_type_to_arm_hwbp_type): New function.
7245 (arm_linux_hw_point_initialize): Take an enum raw_bkpt_type
7246 instead of a Z packet char. Adjust.
7247 (arm_supports_z_point_type): New function.
7248 (arm_insert_point, arm_remove_point): Adjust to new interface.
7249 (the_low_target): Install arm_supports_z_point_type.
7250 * linux-crisv32-low.c (cris_supports_z_point_type): New function.
7251 (cris_insert_point, cris_remove_point): Adjust to new interface.
7252 Don't check whether the type is supported here.
7253 (the_low_target): Install cris_supports_z_point_type.
7254 * linux-low.c (linux_supports_z_point_type): New function.
7255 (linux_insert_point, linux_remove_point): Adjust to new interface.
7256 * linux-low.h (struct linux_target_ops) <insert_point,
7257 remove_point>: Take an enum raw_bkpt_type instead of a char. Add
7258 raw_breakpoint pointer parameter.
7259 <supports_z_point_type>: New method.
7260 * linux-mips-low.c (mips_supports_z_point_type): New function.
7261 (mips_insert_point, mips_remove_point): Adjust to new interface.
7262 Use mips_supports_z_point_type.
7263 (the_low_target): Install mips_supports_z_point_type.
7264 * linux-ppc-low.c (the_low_target): Install NULL as
7265 supports_z_point_type method.
7266 * linux-s390-low.c (the_low_target): Install NULL as
7267 supports_z_point_type method.
7268 * linux-sparc-low.c (the_low_target): Install NULL as
7269 supports_z_point_type method.
7270 * linux-x86-low.c (x86_supports_z_point_type): New function.
7271 (x86_insert_point): Adjust to new insert_point interface. Use
7272 insert_memory_breakpoint. Adjust to new
7273 i386_low_insert_watchpoint interface.
7274 (x86_remove_point): Adjust to remove_point interface. Use
7275 remove_memory_breakpoint. Adjust to new
7276 i386_low_remove_watchpoint interface.
7277 (the_low_target): Install x86_supports_z_point_type.
7278 * lynx-low.c (lynx_target_ops): Install NULL as
7279 supports_z_point_type callback.
7280 * nto-low.c (nto_supports_z_point_type): New.
7281 (nto_insert_point, nto_remove_point): Adjust to new interface.
7282 (nto_target_ops): Install nto_supports_z_point_type.
7283 * mem-break.c: Adjust intro comment.
7284 (struct raw_breakpoint) <raw_type, size>: New fields.
7285 <inserted>: Update comment.
7286 <shlib_disabled>: Delete field.
7287 (enum bkpt_type) <gdb_breakpoint>: Delete value.
7288 <gdb_breakpoint_Z0, gdb_breakpoint_Z1, gdb_breakpoint_Z2,
7289 gdb_breakpoint_Z3, gdb_breakpoint_Z4>: New values.
7290 (raw_bkpt_type_to_target_hw_bp_type): New function.
7291 (find_enabled_raw_code_breakpoint_at): New function.
7292 (find_raw_breakpoint_at): New type and size parameters. Use them.
7293 (insert_memory_breakpoint): New function, based off
7294 set_raw_breakpoint_at.
7295 (remove_memory_breakpoint): New function.
7296 (set_raw_breakpoint_at): Reimplement.
7297 (set_breakpoint): New, based on set_breakpoint_at.
7298 (set_breakpoint_at): Reimplement.
7299 (delete_raw_breakpoint): Go through the_target->remove_point
7300 instead of assuming memory breakpoints.
7301 (find_gdb_breakpoint_at): Delete.
7302 (Z_packet_to_bkpt_type, Z_packet_to_raw_bkpt_type): New functions.
7303 (find_gdb_breakpoint): New function.
7304 (set_gdb_breakpoint_at): Delete.
7305 (z_type_supported): New function.
7306 (set_gdb_breakpoint_1): New function, loosely based off
7307 set_gdb_breakpoint_at.
7308 (check_gdb_bp_preconditions, set_gdb_breakpoint): New functions.
7309 (delete_gdb_breakpoint_at): Delete.
7310 (delete_gdb_breakpoint_1): New function, loosely based off
7311 delete_gdb_breakpoint_at.
7312 (delete_gdb_breakpoint): New function.
7313 (clear_gdb_breakpoint_conditions): Rename to ...
7314 (clear_breakpoint_conditions): ... this. Don't handle a NULL
7315 breakpoint.
7316 (add_condition_to_breakpoint): Make static.
7317 (add_breakpoint_condition): Take a struct breakpoint pointer
7318 instead of an address. Adjust.
7319 (gdb_condition_true_at_breakpoint): Rename to ...
7320 (gdb_condition_true_at_breakpoint_z_type): ... this, and add
7321 z_type parameter.
7322 (gdb_condition_true_at_breakpoint): Reimplement.
7323 (add_breakpoint_commands): Take a struct breakpoint pointer
7324 instead of an address. Adjust.
7325 (gdb_no_commands_at_breakpoint): Rename to ...
7326 (gdb_no_commands_at_breakpoint_z_type): ... this. Add z_type
7327 parameter. Return true if no breakpoint was found. Change debug
7328 output.
7329 (gdb_no_commands_at_breakpoint): Reimplement.
7330 (run_breakpoint_commands): Rename to ...
7331 (run_breakpoint_commands_z_type): ... this. Add z_type parameter,
7332 and change return type to boolean.
7333 (run_breakpoint_commands): New function.
7334 (gdb_breakpoint_here): Also check for Z1 breakpoints.
7335 (uninsert_raw_breakpoint): Don't try to reinsert a disabled
7336 breakpoint. Go through the_target->remove_point instead of
7337 assuming memory breakpoint.
7338 (uninsert_breakpoints_at, uninsert_all_breakpoints): Uninsert
7339 software and hardware breakpoints.
7340 (reinsert_raw_breakpoint): Go through the_target->insert_point
7341 instead of assuming memory breakpoint.
7342 (reinsert_breakpoints_at, reinsert_all_breakpoints): Reinsert
7343 software and hardware breakpoints.
7344 (check_breakpoints, breakpoint_here, breakpoint_inserted_here):
7345 Check both software and hardware breakpoints.
7346 (validate_inserted_breakpoint): Assert the breakpoint is a
7347 software breakpoint. Set the inserted flag to -1 instead of
7348 setting shlib_disabled.
7349 (delete_disabled_breakpoints): Adjust.
7350 (validate_breakpoints): Only validate software breakpoints.
7351 Adjust to inserted flag change.
7352 (check_mem_read, check_mem_write): Skip breakpoint types other
7353 than software breakpoints. Adjust to inserted flag change.
7354 * mem-break.h (enum raw_bkpt_type): New enum.
7355 (raw_breakpoint, struct process_info): Forward declare.
7356 (Z_packet_to_target_hw_bp_type): Delete declaration.
7357 (raw_bkpt_type_to_target_hw_bp_type, Z_packet_to_raw_bkpt_type)
7358 (set_gdb_breakpoint, delete_gdb_breakpoint)
7359 (clear_breakpoint_conditions): New declarations.
7360 (set_gdb_breakpoint_at, clear_gdb_breakpoint_conditions): Delete.
7361 (breakpoint_inserted_here): Update comment.
7362 (add_breakpoint_condition, add_breakpoint_commands): Replace
7363 address parameter with a breakpoint pointer parameter.
7364 (gdb_breakpoint_here): Update comment.
7365 (delete_gdb_breakpoint_at): Delete.
7366 (insert_memory_breakpoint, remove_memory_breakpoint): Declare.
7367 * server.c (process_point_options): Take a struct breakpoint
7368 pointer instead of an address. Adjust.
7369 (process_serial_event) <Z/z packets>: Use set_gdb_breakpoint and
7370 delete_gdb_breakpoint.
7371 * spu-low.c (spu_target_ops): Install NULL as
7372 supports_z_point_type method.
7373 * target.h: Include mem-break.h.
7374 (struct target_ops) <prepare_to_access_memory>: Update comment.
7375 <supports_z_point_type>: New field.
7376 <insert_point, remove_point>: Take an enum raw_bkpt_type argument
7377 instead of a char. Also take a raw breakpoint pointer.
7378 * win32-arm-low.c (the_low_target): Install NULL as
7379 supports_z_point_type.
7380 * win32-i386-low.c (i386_supports_z_point_type): New function.
7381 (i386_insert_point, i386_remove_point): Adjust to new interface.
7382 (the_low_target): Install i386_supports_z_point_type.
7383 * win32-low.c (win32_supports_z_point_type): New function.
7384 (win32_insert_point, win32_remove_point): Adjust to new interface.
7385 (win32_target_ops): Install win32_supports_z_point_type.
7386 * win32-low.h (struct win32_target_ops):
7387 <supports_z_point_type>: New method.
7388 <insert_point, remove_point>: Take an enum raw_bkpt_type argument
7389 instead of a char. Also take a raw breakpoint pointer.
7390
73912014-05-20 Pedro Alves <palves@redhat.com>
7392
7393 * mem-break.h: Include break-common.h.
7394 (Z_PACKET_SW_BP, Z_PACKET_HW_BP, Z_PACKET_WRITE_WP)
7395 (Z_PACKET_READ_WP, Z_PACKET_ACCESS_WP): New defines.
7396 (Z_packet_to_target_hw_bp_type): New declaration.
7397 * mem-break.c (Z_packet_to_target_hw_bp_type): New function.
7398 * i386-low.c (Z_PACKET_HW_BP, Z_PACKET_WRITE_WP, Z_PACKET_READ_WP)
7399 (Z_PACKET_ACCESS_WP): Delete macros.
7400 (Z_packet_to_hw_type): Delete function.
7401 * i386-low.h: Don't include break-common.h here.
7402 (Z_packet_to_hw_type): Delete declaration.
7403 * linux-x86-low.c (x86_insert_point, x86_insert_point): Call
7404 Z_packet_to_target_hw_bp_type instead of Z_packet_to_hw_type.
7405 * win32-i386-low.c (i386_insert_point, i386_remove_point): Call
7406 Z_packet_to_target_hw_bp_type instead of Z_packet_to_hw_type.
7407 * linux-aarch64-low.c: Don't include break-common.h here.
7408 (Z_PACKET_SW_BP, Z_PACKET_HW_BP, Z_PACKET_WRITE_WP)
7409 (Z_PACKET_READ_WP, Z_PACKET_ACCESS_WP): Delete macros.
7410 (Z_packet_to_target_hw_bp_type): Delete function.
7411 * linux-mips-low.c (rsp_bp_type_to_target_hw_bp_type): Delete
7412 function.
7413 (mips_insert_point, mips_remove_point): Use
7414 Z_packet_to_target_hw_bp_type.
7415
74162014-05-20 Pedro Alves <palves@redhat.com>
7417
7418 * linux-aarch64-low.c: Include break-common.h.
7419 (enum target_point_type): Delete.
7420 (Z_packet_to_point_type): Rename to ...
7421 (Z_packet_to_target_hw_bp_type): ... this, and return a
7422 target_hw_bp_type instead.
7423 (aarch64_show_debug_reg_state): Take an enum target_hw_bp_type
7424 instead of an enum target_point_type.
7425 (aarch64_point_encode_ctrl_reg): Likewise. Compute type mask from
7426 breakpoint type.
7427 (aarch64_dr_state_insert_one_point)
7428 (aarch64_dr_state_remove_one_point, aarch64_handle_breakpoint)
7429 (aarch64_handle_aligned_watchpoint)
7430 (aarch64_handle_unaligned_watchpoint, aarch64_handle_watchpoint):
7431 Take an enum target_hw_bp_type instead of an enum
7432 target_point_type.
7433 (aarch64_supports_z_point_type): New function.
7434 (aarch64_insert_point, aarch64_remove_point): Use it. Adjust to
7435 use Z_packet_to_target_hw_bp_type.
7436
74372014-05-20 Joel Brobecker <brobecker@adacore.com>
7438
7439 * configure.ac: Only use -Werror by default when DEVELOPMENT
7440 is true.
7441 * configure: Regenerate.
7442
74432014-05-19 Jan Kratochvil <jan.kratochvil@redhat.com>
7444
7445 Fix gdbserver qGetTLSAddr for x86_64 -m32.
7446 * linux-x86-low.c (X86_64_USER_REGS): New.
7447 (x86_fill_gregset): Call memset for BUF first in x86_64 -m32 case.
7448
74492014-04-28 Yao Qi <yao@codesourcery.com>
7450
7451 * Makefile.in (i386-avx512.c): Fix the typo of generated file
7452 name.
7453
74542014-04-25 Pedro Alves <palves@redhat.com>
7455
7456 PR server/16255
7457 * linux-low.c (linux_attach_fail_reason_string): New function.
7458 (linux_attach_lwp): Delete.
7459 (linux_attach_lwp_1): Rename to ...
7460 (linux_attach_lwp): ... this. Take a ptid instead of a pid as
7461 argument. Remove "initial" parameter. Return int instead of
7462 void. Don't error or warn here.
7463 (linux_attach): Adjust to call linux_attach_lwp. Call error on
7464 failure to attach to the tgid. Call warning when failing to
7465 attach to an lwp.
7466 * linux-low.h (linux_attach_lwp): Take a ptid instead of a pid as
7467 argument. Remove "initial" parameter. Return int instead of
7468 void. Don't error or warn here.
7469 (linux_attach_fail_reason_string): New declaration.
7470 * thread-db.c (attach_thread): Adjust to linux_attach_lwp's
7471 interface change. Use linux_attach_fail_reason_string.
7472
74732014-04-24 Michael Sturm <michael.sturm@mintel.com>
7474 Walfred Tedeschi <walfred.tedeschi@intel.com>
7475
7476 * Makefile.in: Added rules to handle new files
7477 i386-avx512.c i386-avx512-linux.c amd64-avx512.c
7478 amd64-avx512-linux.c x32-avx512.c x32-avx512-linux.c.
7479 * configure.srv (srv_i386_regobj): Add i386-avx512.o.
7480 (srv_i386_linux_regobj): Add i386-avx512-linux.o.
7481 (srv_amd64_regobj): Add amd64-avx512.o and x32-avx512.o.
7482 (srv_amd64_linux_regobj): Add amd64-avx512-linux.o and
7483 x32-avx512-linux.o.
7484 (srv_i386_32bit_xmlfiles): Add i386/32bit-avx512.xml.
7485 (srv_i386_64bit_xmlfiles): Add i386/64bit-avx512.xml.
7486 (srv_amd64_xmlfiles): Add i386/amd64-avx512.xml and
7487 i386/x32-avx512.xml.
7488 (srv_i386_linux_xmlfiles): Add i386/i386-avx512-linux.xml.
7489 (srv_amd64_linux_xmlfiles): Add i386/amd64-avx512-linux.xml and
7490 i386/x32-avx512-linux.xml.
7491 * i387-fp.c (num_avx512_k_registers): New constant for number
7492 of K registers.
7493 (num_avx512_zmmh_low_registers): New constant for number of
7494 lower ZMM registers (0-15).
7495 (num_avx512_zmmh_high_registers): New constant for number of
7496 higher ZMM registers (16-31).
7497 (num_avx512_ymmh_registers): New contant for number of higher
7498 YMM registers (ymm16-31 added by avx521 on x86_64).
7499 (num_avx512_xmm_registers): New constant for number of higher
7500 XMM registers (xmm16-31 added by AVX512 on x86_64).
7501 (struct i387_xsave): Add space for AVX512 registers.
7502 (i387_cache_to_xsave): Change raw buffer size to 64 characters.
7503 Add code to handle AVX512 registers.
7504 (i387_xsave_to_cache): Add code to handle AVX512 registers.
7505 * linux-x86-low.c (init_registers_amd64_avx512_linux): New
7506 prototypei from generated file.
7507 (tdesc_amd64_avx512_linux): Likewise.
7508 (init_registers_x32_avx512_linux): Likewise.
7509 (tdesc_x32_avx512_linux): Likewise.
7510 (init_registers_i386_avx512_linux): Likewise.
7511 (tdesc_i386_avx512_linux): Likewise.
7512 (x86_64_regmap): Add AVX512 registers.
7513 (x86_linux_read_description): Add code to handle AVX512 XSTATE
7514 mask.
7515 (initialize_low_arch): Add code to initialize AVX512 registers.
7516
75172014-04-23 Pedro Alves <palves@redhat.com>
7518
7519 * mem-break.c (find_gdb_breakpoint_at): Make static.
7520 * mem-break.h (find_gdb_breakpoint_at): Delete declaration.
7521
75222014-04-23 Pedro Alves <palves@redhat.com>
7523
7524 * i386-low.c: Don't include break-common.h here.
7525 (i386_low_insert_watchpoint, i386_low_remove_watchpoint): Change
7526 prototype to take target_hw_bp_type as argument instead of a Z
7527 packet char.
7528 * i386-low.h: Include break-common.h here.
7529 (Z_packet_to_hw_type): Declare.
7530 (i386_low_insert_watchpoint, i386_low_remove_watchpoint): Change
7531 prototypes.
7532 * linux-x86-low.c (x86_insert_point): Convert the packet number to
7533 a target_hw_bp_type before calling i386_low_insert_watchpoint.
7534 (x86_remove_point): Convert the packet number to a
7535 target_hw_bp_type before calling i386_low_remove_watchpoint.
7536 * win32-i386-low.c (i386_insert_point): Convert the packet number
7537 to a target_hw_bp_type before calling i386_low_insert_watchpoint.
7538 (i386_remove_point): Convert the packet number to a
7539 target_hw_bp_type before calling i386_low_remove_watchpoint.
7540
75412014-04-23 Pedro Alves <palves@redhat.com>
7542
7543 * utils.h (perror_with_name): Add ATTRIBUTE_NORETURN.
7544
75452014-04-10 Pedro Alves <palves@redhat.com>
7546
7547 * mem-break.c (add_breakpoint_condition, add_breakpoint_commands):
7548 Check if the condition or command is NULL before checking if the
7549 breakpoint is known. On success, return true.
7550 * mem-break.h (add_breakpoint_condition): Document return.
7551 (add_breakpoint_commands): Add describing comment.
7552 * server.c (skip_to_semicolon): New function.
7553 (process_point_options): Use it.
7554
75552014-04-09 Pedro Alves <palves@redhat.com>
7556
7557 * linux-low.c (linux_read_loadmap): Pass current_inferior directly
7558 to lwpid_of.
7559
75602014-02-27 Pedro Alves <palves@redhat.com>
7561
7562 PR 12702
7563 * inferiors.h (A_I_NEXT, ALL_INFERIORS_TYPE, ALL_PROCESSES): New
7564 macros.
7565 * linux-low.c (delete_lwp, handle_extended_wait): Add debug
7566 output.
7567 (last_thread_of_process_p): Take a PID argument instead of a
7568 thread pointer.
7569 (linux_wait_for_lwp): Delete.
7570 (num_lwps, check_zombie_leaders, not_stopped_callback): New
7571 functions.
7572 (linux_low_filter_event): New function, party factored out from
7573 linux_wait_for_event.
7574 (linux_wait_for_event): Rename to ...
7575 (linux_wait_for_event_filtered): ... this. Add new filter ptid
7576 argument. Partly rewrite. Always use waitpid(-1, WNOHANG) and
7577 sigsuspend. Check for zombie leaders.
7578 (linux_wait_for_event): Reimplement as wrapper around
7579 linux_wait_for_event_filtered.
7580 (linux_wait_1): Handle TARGET_WAITKIND_NO_RESUMED. Assume that if
7581 a normal or signal exit is seen, it's the whole process exiting.
7582 (wait_for_sigstop): No longer a for_each_inferior callback.
7583 Rewrite on top of linux_wait_for_event_filtered.
7584 (stop_all_lwps): Call wait_for_sigstop directly.
7585 * server.c (resume, handle_target_event): Handle
7586 TARGET_WAITKIND_NO_RESUMED.
7587
75882014-02-26 Joel Brobecker <brobecker@adacore.com>
7589
7590 * win32-low.c (psapi_get_dll_name,
7591 * win32_CreateToolhelp32Snapshot): Delete.
7592 (win32_CreateToolhelp32Snapshot, win32_Module32First)
7593 (win32_Module32Next, load_toolhelp, toolhelp_get_dll_name):
7594 Delete.
7595 (handle_load_dll): Add function description.
7596 Remove code using psapi_get_dll_name and toolhelp_get_dll_name.
7597
75982014-02-26 Joel Brobecker <brobecker@adacore.com>
7599
7600 * win32-low.c (win32_add_one_solib): Add 0x1000 to load_addr.
7601 Add comment.
7602 (win32_add_all_dlls): Remove 0x1000 offset applied to DLL
7603 base address when calling win32_add_one_solib.
7604 (handle_load_dll): Delete local variable load_addr.
7605 Remove 0x1000 offset applied to DLL base address when calling
7606 win32_add_one_solib.
7607 (handle_unload_dll): Add comment.
7608
76092014-02-26 Joel Brobecker <brobecker@adacore.com>
7610
7611 * win32-low.c (win32_add_all_dlls): Renames
7612 win32_ensure_ntdll_loaded. Rewrite function documentation.
7613 Adjust implementation to always load all DLLs.
7614 Add 0x1000 offset to DLL base address when calling
7615 win32_add_one_solib.
7616 (child_initialization_done): New static global.
7617 (do_initial_child_stuff): Set child_initialization_done to
7618 zero during child initialization, and 1 after. Replace call
7619 to win32_ensure_ntdll_loaded by call to win32_add_all_dlls.
7620 Add comment.
7621 (match_dll_by_basename, dll_is_loaded_by_basename): Delete.
7622 (handle_unload_dll): Add function documentation.
7623 (get_child_debug_event): Ignore load and unload DLL events
7624 during child initialization.
7625
76262014-02-20 Doug Evans <dje@google.com>
7627
7628 Remove global all_lwps.
7629 * inferiors.h (ptid_of): Move here from linux-low.h.
7630 (pid_of, lwpid_of): Ditto.
7631 * linux-aarch64-low.c (debug_reg_change_callback): Update, "entry"
7632 parameter is a struct thread_info * now.
7633 (aarch64_notify_debug_reg_change): Fetch pid from current_inferior
7634 directly. Pass &all_threads to find_inferior instead of &all_lwps.
7635 (aarch64_stopped_data_address): Fetch lwpid from current_inferior
7636 directly.
7637 (aarch64_linux_prepare_to_resume): Fetch ptid from thread.
7638 (aarch64_arch_setup): Fetch lwpid from current_inferior directly.
7639 * linux-arm-low.c (update_registers_callback): Update, "entry"
7640 parameter is a struct thread_info * now.
7641 Fetch lwpid from current_inferior directly.
7642 (arm_insert_point): Pass &all_threads to find_inferior instead of
7643 &all_lwps.
7644 (arm_remove_point): Ditto.
7645 (arm_stopped_by_watchpoint): Fetch lwp from current_inferior.
7646 (arm_prepare_to_resume): Fetch pid from thread.
7647 (arm_read_description): Fetch lwpid from current_inferior directly.
7648 * linux-low.c (all_lwps): Delete.
7649 (delete_lwp): Delete call to remove_inferior.
7650 (handle_extended_wait): Fetch lwpid from thread.
7651 (add_lwp): Don't set lwp->entry.id. Remove call to
7652 add_inferior_to_list.
7653 (linux_attach_lwp_1): Fetch pid from current_inferior directly.
7654 (linux_kill_one_lwp): Fetch ptid,lwpid from thread.
7655 (kill_one_lwp_callback): Ditto.
7656 (linux_kill): Don't dereference NULL pointer.
7657 Fetch ptid,lwpid from thread.
7658 (get_detach_signal): Fetch ptid from thread.
7659 (linux_detach_one_lwp): Fetch ptid,lwpid from thread.
7660 Simplify call to regcache_invalidate_thread.
7661 (delete_lwp_callback): Update, "entry" parameter is a
7662 struct thread_info * now. Fetch pid from thread.
7663 (linux_mourn): Pass &all_threads to find_inferior instead of &all_lwps.
7664 (status_pending_p_callback): Update, "entry" parameter is a
7665 struct thread_info * now. Fetch ptid from thread.
7666 (find_lwp_pid): Update, "entry" parameter is a
7667 struct thread_info * now.
7668 (linux_wait_for_lwp): Fetch pid from thread.
7669 (linux_fast_tracepoint_collecting): Fetch lwpid from thread.
7670 (maybe_move_out_of_jump_pad): Fetch lwpid from current_inferior.
7671 (enqueue_one_deferred_signal): Fetch lwpid from thread.
7672 (dequeue_one_deferred_signal): Ditto.
7673 (cancel_breakpoint): Fetch ptid from current_inferior.
7674 (linux_wait_for_event): Pass &all_threads to find_inferior,
7675 not &all_lwps. Fetch ptid, lwpid from thread.
7676 (count_events_callback): Update, "entry" parameter is a
7677 struct thread_info * now.
7678 (select_singlestep_lwp_callback): Ditto.
7679 (select_event_lwp_callback): Ditto.
7680 (cancel_breakpoints_callback): Ditto.
7681 (linux_cancel_breakpoints): Pass &all_threads to find_inferior,
7682 not &all_lwps.
7683 (select_event_lwp): Ditto. Fetch ptid from event_thread.
7684 (unsuspend_one_lwp): Update, "entry" parameter is a
7685 struct thread_info * now.
7686 (unsuspend_all_lwps): Pass &all_threads to find_inferior,
7687 not &all_lwps.
7688 (linux_stabilize_threads): Ditto. And for for_each_inferior.
7689 Fetch lwpid from thread, not lwp.
7690 (linux_wait_1): Fetch ptid, lwpid from current_inferior.
7691 Pass &all_threads to find_inferior, not &all_lwps.
7692 (send_sigstop): Fetch lwpid from thread, not lwp.
7693 (send_sigstop_callback): Update, "entry" parameter is a
7694 struct thread_info * now.
7695 (suspend_and_send_sigstop_callback): Ditto.
7696 (wait_for_sigstop): Ditto. Fetch ptid, lwpid from thread, lwp.
7697 (stuck_in_jump_pad_callback): Update, "entry" parameter is a
7698 struct thread_info * now.
7699 (move_out_of_jump_pad_callback): Ditto. Fetch ptid, lwpid
7700 from thread, lwp.
7701 (lwp_running): Update, "entry" parameter is a
7702 struct thread_info * now.
7703 (stop_all_lwps): Fetch ptid from thread.
7704 Pass &all_threads to find_inferior, for_each_inferior, not &all_lwps.
7705 (linux_resume_one_lwp): Fetch lwpid from thread.
7706 (linux_set_resume_request): Update, "entry" parameter is a
7707 struct thread_info * now. Fetch pid, lwpid from thread.
7708 (resume_status_pending_p): Update, "entry" parameter is a
7709 struct thread_info * now.
7710 (need_step_over_p): Ditto. Fetch lwpid from thread.
7711 (start_step_over): Fetch lwpid from thread.
7712 (linux_resume_one_thread): Update, "entry" parameter is a
7713 struct thread_info * now. Fetch lwpid from thread.
7714 (linux_resume): Pass &all_threads to find_inferior, not &all_lwps.
7715 (proceed_one_lwp): Update, "entry" parameter is a
7716 struct thread_info * now. Fetch lwpid from thread.
7717 (unsuspend_and_proceed_one_lwp): Update, "entry" parameter is a
7718 struct thread_info * now.
7719 (proceed_all_lwps): Pass &all_threads to find_inferior, not &all_lwps.
7720 (unstop_all_lwps): Ditto. Fetch lwpid from thread.
7721 (regsets_fetch_inferior_registers): Fetch lwpid from current_inferior
7722 directly.
7723 (regsets_store_inferior_registers): Ditto.
7724 (fetch_register, store_register): Ditto.
7725 (linux_read_memory, linux_write_memory): Ditto.
7726 (linux_request_interrupt): Ditto.
7727 (linux_read_auxv): Ditto.
7728 (linux_xfer_siginfo): Ditto.
7729 (linux_qxfer_spu): Ditto.
7730 (linux_qxfer_libraries_svr4): Ditto.
7731 * linux-low.h (ptid_of, pid_of, lwpid_of): Delete,
7732 moved to inferiors.h.
7733 (get_lwp): Delete.
7734 (get_thread_lwp): Update.
7735 (struct lwp_info): Delete member "entry". Simplify comment for
7736 member "thread".
7737 (all_lwps): Delete.
7738 * linux-mips-low.c (mips_read_description): Fetch lwpid from
7739 current_inferior directly.
7740 (update_watch_registers_callback): Update, "entry" parameter is a
7741 struct thread_info * now. Fetch pid from thread.
7742 (mips_linux_prepare_to_resume): Fetch ptid from thread.
7743 (mips_insert_point): Fetch lwpid from current_inferior.
7744 Pass &all_threads to find_inferior, not &all_lwps.
7745 (mips_remove_point): Pass &all_threads to find_inferior, not &all_lwps.
7746 (mips_stopped_by_watchpoint): Fetch lwpid from current_inferior
7747 directly.
7748 (mips_stopped_data_address): Ditto.
7749 * linux-s390-low.c (s390_arch_setup): Fetch pid from current_inferior
7750 directly.
7751 * linux-tile-low.c (tile_arch_setup): Ditto.
7752 * linux-x86-low.c (x86_get_thread_area): Fetch lwpid from thread.
7753 (update_debug_registers_callback): Update, "entry" parameter is a
7754 struct thread_info * now. Fetch pid from thread.
7755 (i386_dr_low_set_addr): Fetch pid from current_inferior directly.
7756 Pass &all_threads to find_inferior, not &all_lwps.
7757 (i386_dr_low_get_addr): Fetch ptid from current_inferior directly.
7758 (i386_dr_low_set_control): Fetch pid from current_inferior directly.
7759 Pass &all_threads to find_inferior, not &all_lwps.
7760 (i386_dr_low_get_control): Fetch ptid from current_inferior directly.
7761 (i386_dr_low_get_status): Ditto.
7762 (x86_linux_prepare_to_resume): Fetch ptid from thread.
7763 (x86_siginfo_fixup): Fetch lwpid from current_inferior directly.
7764 (x86_linux_read_description): Ditto.
7765 * proc-service.c (ps_getpid): Fetch pid from current_inferior directly.
7766
77672014-02-20 Doug Evans <dje@google.com>
7768
7769 * inferiors.c (get_first_inferior): Fix buglet.
7770
77712014-02-19 Doug Evans <dje@google.com>
7772
7773 * gdbthread.h (add_thread): Change result type to struct thread_info *.
7774 * inferiors.c (add_thread): Change result type to struct thread_info *.
7775 All callers updated.
7776 (add_lwp): Call add_thread here instead of in callers.
7777 All callers updated.
7778 * linux-low.h (get_lwp_thread): Rewrite.
7779 (struct lwp_info): New member "thread".
7780
77812014-02-19 Doug Evans <dje@google.com>
7782
7783 * linux-low.c (add_lwp): Change result to struct lwp_info *.
7784 All callers updated.
7785
77862014-02-19 Doug Evans <dje@google.com>
7787
7788 * inferiors.c (add_thread): Fix whitespace.
7789
77902014-02-19 Doug Evans <dje@google.com>
7791
7792 * dll.c (clear_dlls): Replace accessing list implemention details
7793 with API function.
7794 * gdbthread.h (get_first_thread): Declare.
7795 * inferiors.c (for_each_inferior_with_data): New function.
7796 (get_first_thread): New function.
7797 (find_thread_ptid): Simplify.
7798 (get_first_inferior): New function.
7799 (clear_list): Delete.
7800 (one_inferior_p): New function.
7801 (clear_inferior_list): New function.
7802 (clear_inferiors): Update.
7803 * inferiors.h (for_each_inferior_with_data): Declare.
7804 (clear_inferior_list): Declare.
7805 (one_inferior_p): Declare.
7806 (get_first_inferior): Declare.
7807 * linux-low.c (linux_wait_for_event): Replace accessing list
7808 implemention details with API function.
7809 * server.c (target_running): Ditto.
7810 (accumulate_file_name_length): New function.
7811 (emit_dll_description): New function.
7812 (handle_qxfer_libraries): Replace accessing list implemention
7813 details with API function.
7814 (handle_qxfer_threads_worker): New function.
7815 (handle_qxfer_threads_proper): Replace accessing list implemention
7816 details with API function.
7817 (handle_query): Ditto.
7818 (visit_actioned_threads_callback_ftype): New typedef.
7819 (visit_actioned_threads_data): New struct.
7820 (visit_actioned_threads): Rewrite to be find_inferior callback.
7821 (resume): Call find_inferior.
7822 (handle_status): Replace accessing list implemention
7823 details with API function.
7824 (process_serial_event): Replace accessing list implemention details
7825 with API function.
7826 * target.c (set_desired_inferior): Replace accessing list implemention
7827 details with API function.
7828 * tracepoint.c (same_process_p): New function.
7829 (gdb_agent_about_to_close): Replace accessing list implemention
7830 details with API function.
7831 * win32-low.c (child_delete_thread): Replace accessing list
7832 implemention details with API function.
7833 (match_dll_by_basename): New function.
7834 (dll_is_loaded_by_basename): New function.
7835 (win32_ensure_ntdll_loaded): Replace accessing list implemention
7836 details call to dll_is_loaded_by_basename.
7837
78382014-02-19 Doug Evans <dje@google.com>
7839
7840 * dll.h (struct dll_info): Add comment.
7841 * gdbthread.h (struct thread_info): Add comment.
7842 (current_ptid): Simplify.
7843 * inferiors.c (add_process): Update.
7844 (remove_process): Update.
7845 * inferiors.h (struct process_info): Rename member "head" to "entry".
7846 * linux-low.c (delete_lwp): Update.
7847 (add_lwp): Update.
7848 (last_thread_of_process_p): Update.
7849 (kill_one_lwp_callback, linux_kill): Update.
7850 (status_pending_p_callback): Update.
7851 (wait_for_sigstop): Update. Simplify read of ptid.
7852 (start_step_over): Update.
7853 * linux-low.h (ptid_of, pid_of, lwpid_of): Update.
7854 (get_lwp_thread): Update.
7855 (struct lwp_info): Rename member "head" to "entry".
7856 * regcache.h (inferior_list_entry): Delete.
7857 * server.c (kill_inferior_callback): Update.
7858 (detach_or_kill_inferior_callback): Update.
7859 (print_started_pid): Update.
7860 (print_attached_pid): Update.
7861 (process_serial_event): Simplify read of ptid.
7862 * thread-db.c (thread_db_create_event): Update.
7863 (thread_db_get_tls_address): Update.
7864 * win32-low.c (current_inferior_ptid): Simplify.
7865
78662014-02-19 Tom Tromey <tromey@redhat.com>
7867
7868 * target.h (struct target_ops) <supports_btrace>: Add target_ops
7869 argument.
7870 (target_supports_btrace): Update.
7871
78722014-02-14 Yao Qi <yao@codesourcery.com>
7873
7874 * Makefile.in (IPA_OBJS): Append rsp-low-ipa.o.
7875 (rsp-low-ipa.o): New target.
7876
78772014-02-12 Tom Tromey <tromey@redhat.com>
7878
7879 * ax.c (gdb_parse_agent_expr): Use hex2bin, not
7880 convert_ascii_to_int.
7881 * regcache.c (registers_to_string): Likewise.
7882 * remote-utils.c (decode_M_packet): Likewise.
7883 * server.c (process_serial_event): Likewise.
7884
78852014-02-12 Tom Tromey <tromey@redhat.com>
7886
7887 * server.c (handle_query, handle_v_run): Use hex2bin, not
7888 unhexify.
7889 * tracepoint.c (cmd_qtdpsrc, cmd_qtdv, cmd_qtnotes): Likewise.
7890
78912014-02-12 Tom Tromey <tromey@redhat.com>
7892
7893 * ax.c (gdb_unparse_agent_expr): Use bin2hex, not
7894 convert_int_to_ascii.
7895 * regcache.c (registers_to_string, collect_register_as_string):
7896 Likewise.
7897 * remote-utils.c (look_up_one_symbol, relocate_instruction):
7898 Likewise.
7899 * server.c (process_serial_event): Likewise.
7900 * tracepoint.c (cmd_qtstatus, response_source, response_tsv)
7901 (cmd_qtbuffer, cstr_to_hexstr): Likewise.
7902
79032014-02-12 Tom Tromey <tromey@redhat.com>
7904
7905 * remote-utils.c (look_up_one_symbol, monitor_output): Use
7906 bin2hex, not hexify.
7907 * tracepoint.c (cmd_qtstatus): Likewise.
7908
79092014-02-12 Tom Tromey <tromey@redhat.com>
7910
7911 * remote-utils.c (monitor_output): Pass explicit length to
7912 hexify.
7913
79142014-02-12 Tom Tromey <tromey@redhat.com>
7915
7916 * tracepoint.c: Include rsp-low.h.
7917 * server.c: Include rsp-low.h.
7918 * remote-utils.h (convert_ascii_to_int, convert_int_to_ascii)
7919 (unhexify, hexify, remote_escape_output, unpack_varlen_hex): Don't
7920 declare.
7921 * remote-utils.c: Include rsp-low.h.
7922 (fromhex, hexchars, ishex, unhexify, tohex, hexify)
7923 (remote_escape_output, remote_unescape_input, unpack_varlen_hex)
7924 (convert_int_to_ascii, convert_ascii_to_int): Move to
7925 common/rsp-low.c.
7926 * regcache.c: Include rsp-low.h.
7927 * ax.c: Include rsp-low.h.
7928 * Makefile.in (SFILES): Add common/rsp-low.c.
7929 (OBS): Add rsp-low.o.
7930 (rsp-low.o): New target.
7931
79322014-02-12 Tom Tromey <tromey@redhat.com>
7933
7934 * utils.h (pulongest, plongest, phex_nz): Don't declare.
7935 Include print-utils.h.
7936 * utils.c (NUMCELLS, CELLSIZE, get_cell, decimal2str, pulongest)
7937 (plongest, thirty_two, phex_nz): Remove.
7938 * Makefile.in (SFILES): Add common/print-utils.c.
7939 (OBS): Add print-utils.o.
7940 (print-utils-ipa.o): New target.
7941 (print-utils.o): New target.
7942 (IPA_OBJS): Add print-utils-ipa.o.
7943
79442014-02-06 Tom Tromey <tromey@redhat.com>
7945
7946 * Makefile.in (SFILES): Fix indentation.
7947
79482014-02-05 Doug Evans <dje@google.com>
7949
7950 * linux-low.c (linux_wait_for_event): Improve comment.
7951 (linux_wait_1): Keep current_inferior in sync with event_child.
7952
79532014-01-22 Doug Evans <dje@google.com>
7954
7955 * gdbthread.h (gdb_id_to_thread): Delete, unused.
7956
79572014-01-22 Doug Evans <dje@google.com>
7958
7959 * configure.ac (AC_CHECK_FUNCS): Add test for gettimeofday.
7960 * configure: Regenerate.
7961 * config.in: Regenerate.
7962 * Makefile.in (SFILES): Add debug.c.
7963 (OBS): Add debug.o.
7964 * debug.c: New file.
7965 * debug.h: New file.
7966 * linux-aarch64-low.c (*): Update all debugging printfs to use
7967 debug_printf instead of fprintf.
7968 * linux-arm-low.c (*): Ditto.
7969 * linux-cris-low.c (*): Ditto.
7970 * linux-crisv32-low.c (*): Ditto.
7971 * linux-m32r-low.c (*): Ditto.
7972 * linux-sparc-low.c (*): Ditto.
7973 * linux-x86.c (*): Ditto.
7974 * linux-low.c (*): Ditto.
7975 (linux_wait_1): Add calls to debug_enter, debug_exit.
7976 (linux_wait): Remove redundant debugging printf.
7977 (stop_all_lwps): Add calls to debug_enter, debug_exit.
7978 (linux_resume, unstop_all_lwps): Ditto.
7979 * mem-break.c (*): Update all debugging printfs to use
7980 debug_printf instead of fprintf.
7981 * remote-utils.c (*): Ditto.
7982 * thread-db.c (*): Ditto.
7983 * server.c #include <ctype.h>, "gdb_vecs.h".
7984 (debug_threads): Moved to debug.c.
7985 (*): Update all debugging printfs to use debug_printf instead of
7986 fprintf.
7987 (start_inferior): Replace call to fflush with call to debug_flush.
7988 (monitor_show_help): Mention set debug-format.
7989 (parse_debug_format_options): New function.
7990 (handle_monitor_command): Handle "monitor set debug-format".
7991 (gdbserver_usage): Mention --debug-format.
7992 (main): Parse --debug-format.
7993 * server.h (debug_threads): Declaration moved to debug.h.
7994 #include "debug.h".
7995 * tracepoint.c (trace_debug_1) [!IN_PROCESS_AGENT]: Add version of
7996 trace_debug_1 that uses debug_printf.
7997 (tracepoint_look_up_symbols): Update all debugging printfs to use
7998 debug_printf instead of fprintf.
7999
80002014-01-20 Baruch Siach <baruch@tkos.co.il>
8001
8002 * linux-xtensa-low.c: Include asm/ptrace.h instead of
8003 sys/ptrace.h.
8004
80052014-01-17 Pedro Alves <palves@redhat.com>
8006
8007 PR build/16445
8008 * linux-x86-low.c: Don't include elf/common.h if ELFMAG0 is
8009 defined after including gdb_proc_service.h.
8010
80112014-01-16 Doug Evans <dje@google.com>
8012
8013 * dll.c (UNSPECIFIED_CORE_ADDR): New macro.
8014 (match_dll): Use it.
8015
80162014-01-16 Markus Metzger <markus.t.metzger@intel.com>
8017
8018 * target.h (target_ops) <read_btrace>: Change parameters and
8019 return type to allow error reporting.
8020 * server.c (handle_qxfer_btrace): Support delta reads. Pass
8021 trace reading errors on.
8022 * linux-low.c (linux_low_read_btrace): Pass trace reading
8023 errors on.
8024 (linux_low_disable_btrace): New.
8025
80262014-01-15 Doug Evans <dje@google.com>
8027
8028 * inferiors.c (thread_id_to_gdb_id): Delete.
8029 * inferiors.h (thread_id_to_gdb_id): Delete.
8030
80312014-01-13 Eli Zaretskii <eliz@gnu.org>
8032
8033 * Makefile.in (INCLUDE_CFLAGS): Remove trailing slash from
8034 "-I$(srcdir)/../". Fixes MinGW compilation errors with old GCC
8035 versions.
8036
80372014-01-08 Pedro Alves <palves@redhat.com>
8038
8039 * server.c (handle_status): Don't discard previous queued stop
8040 replies or thread's pending status here.
8041 (main) <disconnection>: Do it here instead.
8042
80432014-01-08 Pedro Alves <palves@redhat.com>
8044
8045 * gdbthread.h (struct thread_info) <status_pending_p>: New field.
8046 * server.c (visit_actioned_threads, handle_pending_status): New
8047 function.
8048 (handle_v_cont): Factor out parts to ...
8049 (resume): ... this new function. If in all-stop, and a thread
8050 being resumed has a pending status, report it without actually
8051 resuming.
8052 (myresume): Adjust to use the new 'resume' function.
8053 (clear_pending_status_callback, set_pending_status_callback)
8054 (find_status_pending_thread_callback): New functions.
8055 (handle_status): Handle the case of multiple threads having
8056 interesting statuses to report. Report threads' real last signal
8057 instead of always reporting GDB_SIGNAL_TRAP. Look for a thread
8058 with an interesting thread to report the status for, instead of
8059 always reporting the status of the first thread.
8060
80612014-01-01 Joel Brobecker <brobecker@adacore.com>
8062
8063 * gdbserver.c (gdbserver_version): Set copyright year to 2014.
8064 * gdbreplay.c (gdbreplay_version): Likewise.
8065
80662013-12-18 Yufeng Zhang <yufeng.zhang@arm.com>
8067
8068 * linux-aarch64-low.c (aarch64_linux_set_debug_regs): Set
8069 iov.iov_len with the real length in use.
8070
80712013-12-13 Joel Brobecker <brobecker@adacore.com>
8072
8073 * Makefile.in (safe-ctype.o, lbasename.o): New rules.
8074 * configure.srv: Add safe-ctype.o and lbasename.o to srv_tgtobj
8075 for all targets that use win32-low.c.
8076 * win32-low.c (win32_ensure_ntdll_loaded): New function.
8077 (do_initial_child_stuff): Add call to win32_ensure_ntdll_loaded.
8078
80792013-12-13 Pedro Alves <palves@redhat.com>
8080
8081 * target.c (mywait): Set OURSTATUS->KIND to TARGET_WAITKIND_STOPPED
8082 if equal to TARGET_WAITKIND_LOADED.
8083 * win32-low.c (cached_status): New static global.
8084 (win32_wait): Add declaration.
8085 (do_initial_child_stuff): Flush all initial pending debug events
8086 up to the initial breakpoint.
8087 (win32_wait): If CACHED_STATUS was set, return that instead
8088 of doing a real wait. Remove the code resuming the execution
8089 of the inferior after receiving a TARGET_WAITKIND_LOADED event
8090 during the initial phase. Also remove the code changing
8091 OURSTATUS->KIND from TARGET_WAITKIND_LOADED to
8092 TARGET_WAITKIND_STOPPED.
8093
80942013-12-11 Yao Qi <yao@codesourcery.com>
8095
8096 * notif.c (handle_notif_ack): Return 0 if no notification
8097 matches.
8098
80992013-11-20 Doug Evans <dje@google.com>
8100
8101 * linux-low.c (linux_set_resume_request): Fix comment.
8102
81032013-11-20 Doug Evans <dje@google.com>
8104
8105 * linux-low.c (resume_status_pending_p): Tweak comment.
8106
81072013-11-20 Walfred Tedeschi <walfred.tedeschi@intel.com>
8108
8109 * Makefile.in: Add i386-mpx.c, i386-mpx-linux.c, amd64-mpx.c,
8110 amd64-mpx-linux.c, x32-mpx.c and x32-mpx-linux.c generation.
8111 * configure.srv (srv_i386_regobj): Add i386-mpx.o.
8112 (srv_i386_linux_regobj): Add i386-mpx-linux.o.
8113 (srv_amd64_regobj): Add amd64-mpx.o.
8114 (srv_amd64_linux_regobj): Add amd64-mpx-linux.o.
8115 (srv_i386_32bit_xmlfiles): Add i386/32bit-mpx.xml.
8116 (srv_i386_64bit_xmlfiles): Add i386/64bit-mpx.xml.
8117 * i387-fp.c (num_pl_bnd_register) Added constant.
8118 (num_pl_bnd_cfg_registers) Added constant.
8119 (struct i387_xsave) Added reserved area and MPX fields.
8120 (i387_cache_to_xsave, i387_xsave_to_cache) Add MPX.
8121 * linux-x86-low.c (init_registers_i386_mpx_linux): Declare new
8122 function.
8123 (tdesc_i386_mpx_linux): Add MPX amd64 target.
8124 (init_registers_amd64_mpx_linux): Declare new function.
8125 (tdesc_amd64_mpx_linux): Add MPX amd64 target.
8126 (x86_64_regmap): Add MPX registers.
8127 (x86_linux_read_description): Add MPX case.
8128 (initialize_low_arch): Initialize MPX targets.
8129
81302013-11-18 Tom Tromey <tromey@redhat.com>
8131
8132 * configure: Rebuild.
8133 * configure.ac: Don't check for stdlib.h.
8134 * gdbreplay.c: Unconditionally include stdlib.h.
8135
81362013-11-18 Tom Tromey <tromey@redhat.com>
8137
8138 * config.in: Rebuild.
8139 * configure: Rebuild.
8140 * configure.ac: Don't use AC_HEADER_DIRENT.
8141
81422013-11-18 Tom Tromey <tromey@redhat.com>
8143
8144 * server.h: Don't check HAVE_STRING_H.
8145 * gdbreplay.c: Don't check HAVE_STRING_H.
8146 * configure: Rebuild.
8147
81482013-11-18 Tom Tromey <tromey@redhat.com>
8149
8150 * Makefile.in (gdbreplay$(EXEEXT)): Depend on and link against
8151 LIBGNU.
8152
81532013-11-08 Tom Tromey <tromey@redhat.com>
8154
8155 * configure, config.in: Rebuild.
8156 * configure.ac: Remove unused configury.
8157
81582013-11-08 Tom Tromey <tromey@redhat.com>
8159
8160 * acinclude.m4: Include common.m4, codeset.m4.
8161 * configure, config.in: Rebuild.
8162 * configure.ac: Use GDB_AC_COMMON.
8163
81642013-11-06 Andreas Arnez <arnez@linux.vnet.ibm.com>
8165
8166 * linux-s390-low.c (HWCAP_S390_TE): New define.
8167 (s390_arch_setup): Consider the TE field in the HWCAP for
8168 determining 'have_regset_tdb'.
8169
81702013-10-16 Sergio Durigan Junior <sergiodj@redhat.com>
8171
8172 PR gdb/16014
8173 * tracepoint.c (download_tracepoint_1): Remove unnecessary double
8174 call to sizeof.
8175
81762013-10-02 Pedro Alves <palves@redhat.com>
8177
8178 * server.c (process_serial_event): Don't output "GDBserver
8179 exiting" if GDB is connected through stdio.
8180 * target.c (mywait): Likewise, be silent if GDB is connected
8181 through stdio.
8182
81832013-10-01 Joel Brobecker <brobecker@adacore.com>
8184
8185 * lynx-low.c (lynx_add_threads_after_attach): New function.
8186 (lynx_attach): Remove call to add_thread. Add call to
8187 lynx_add_threads_after_attach instead.
8188
81892013-09-28 Mike Frysinger <vapier@gentoo.org>
8190
8191 * configure.ac (AC_CHECK_HEADERS): Add sys/syscall.h
8192 * config.in, configure: Regenerated.
8193
81942013-09-18 Yao Qi <yao@codesourcery.com>
8195
8196 PR server/15959
8197 * server.c (start_inferior): Clear 'resume_info'.
8198
81992013-09-16 Jiong Wang <jiwang@tilera.com>
8200
8201 * linux-tile-low.c (tile_regsets): Modify the size field to 64-bit
8202 for each register.
8203
82042013-09-16 Jiong Wang <jiwang@tilera.com>
8205
8206 * configure.srv <tilegx*-*-linux*>: Remove linux-osdata.o from and add
8207 linux-tile-low.o to srv_tgtobj.
8208
82092013-09-16 Will Newton <will.newton@linaro.org>
8210
8211 * linux-aarch64-low.c (aarch64_linux_set_debug_regs): Zero
8212 out regs.
8213
82142013-09-06 Pedro Alves <palves@redhat.com>
8215
8216 * Makefile.in (gdb_proc_service_h, regdef_h, regcache_h)
8217 (signals_def, signals_h, ptid_h, ax_h, agent_h, linux_btrace_h)
8218 (linux_osdata_h, vec_h, gdb_vecs_h, host_defs_h, libiberty_h)
8219 (server_h, gdbthread_h, linux_low_h, linux_ptrace_h)
8220 (gdb_thread_db_h, linux_procfs_h, lynx_low_h, nto_low_h)
8221 (mips_linux_watch_h, i386_low_h, win32_low_h): Delete.
8222
82232013-09-06 Pedro Alves <palves@redhat.com>
8224
8225 * Makefile.in (linux-btrace.o, mips-linux-watch.o): Remove
8226 explicit header dependencies and use $COMPILE/$POSTCOMPILE.
8227
82282013-09-06 Pedro Alves <palves@redhat.com>
8229
8230 * linux-amd64-ipa.c: Include tracepoint.h.
8231 * linux-i386-ipa.c: Include tracepoint.h.
8232
82332013-09-06 Ricard Wanderlof <ricardw@axis.com>
8234
8235 * linux-crisv32-low.c (PTRACE_GET_THREAD_AREA): New macro.
8236 (ps_get_thread_area): New function.
8237
82382013-09-06 Ricard Wanderlof <ricardw@axis.com>
8239
8240 * linux-crisv32-low.c (elf_gregset_t): Delete typedef.
8241 (initialize_low_arch): Call init_registers_crisv32 rather than
8242 init_register_crisv32.
8243
82442013-09-05 Pedro Alves <palves@redhat.com>
8245
8246 * server.h (handle_vFile, hostio_last_error_from_errno): Move
8247 to ...
8248 * hostio.h: ... this new file.
8249 * hostio.c, server.c, linux-low.c, nto-low.c, spu-low,
8250 win32-low.c: Include hostio.h.
8251
82522013-09-05 Pedro Alves <palves@redhat.com>
8253
8254 * server.h (gdb_client_data, handler_func, callback_handler_func)
8255 (delete_file_handler, add_file_handler, append_callback_event)
8256 (delete_callback_event, start_event_loop, initialize_event_loop):
8257 Move to event-loop.h and include it.
8258 * event-loop.h: New file.
8259
82602013-09-05 Pedro Alves <palves@redhat.com>
8261
8262 * dll.c, inferiors.c, remote-utils.c, server.c: Include "dll.h".
8263 * server.h (struct dll_info, all_dlls, dlls_changed, clear_dlls)
8264 (loaded_dll, unloaded_dll): Move to ...
8265 * dll.h: ... this new file.
8266 * inferiors.c, remote-utils.c, win32-low.c: Include "dll.h".
8267
82682013-09-05 Pedro Alves <palves@redhat.com>
8269
8270 * server.h (current_process, get_thread_process, all_processes)
8271 (add_inferior_to_list, for_each_inferior, current_inferior)
8272 (remove_inferior, add_process, remove_process, find_process_pid)
8273 (have_started_inferiors_p, have_attached_inferiors_p)
8274 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id)
8275 (clear_inferiors, find_inferior, find_inferior_id)
8276 (inferior_target_data, set_inferior_target_data)
8277 (inferior_regcache_data, set_inferior_regcache_data): Move to
8278 inferiors.h, and include it.
8279 * inferiors.h: New file.
8280
82812013-09-05 Pedro Alves <palves@redhat.com>
8282
8283 * server.h (struct emit_ops, current_insn_ptr, emit_error):
8284 Move ...
8285 * ax.h: ... here.
8286
82872013-09-05 Pedro Alves <palves@redhat.com>
8288
8289 * ax.c, linux-low.c, linux-x86-low.c, server.c: Include
8290 tracepoint.h.
8291 * server.h (IPA_BUFSIZ, initialize_tracepoint, tracing)
8292 (disconnected_tracing, tracepoint_look_up_symbols, stop_tracing
8293 (handle_tracepoint_general_set, handle_tracepoint_query)
8294 (tracepoint_finished_step, tracepoint_was_hit)
8295 (release_while_stepping_state_list, current_traceframe)
8296 (in_readonly_region, traceframe_read_mem)
8297 (fetch_traceframe_registers, traceframe_read_sdata)
8298 (traceframe_read_info, struct fast_tpoint_collect_status)
8299 (fast_tracepoint_collecting, force_unlock_trace_buffer)
8300 (handle_tracepoit_bkpts, initialize_low_tracepoint)
8301 (supply_fast_tracepoint_registers)
8302 (supply_static_tracepoint_registers, set_trampoline_buffer_space)
8303 (ipa_tdesc, claim_trampoline_space)
8304 (have_fast_tracepoint_trampoline_buffer, gdb_agent_about_to_close)
8305 (agent_mem_read, agent_get_trace_state_variable_value)
8306 (agent_set_trace_state_variable_value, agent_tsv_read)
8307 (agent_mem_read_string, get_raw_reg_func_addr)
8308 (get_get_tsv_func_addr, get_set_tsv_func_addr): Move to ...
8309 * tracepoint.h: ... this new file.
8310
83112013-09-05 Pedro Alves <palves@redhat.com>
8312
8313 * server.h (perror_with_name, error, fatal, warning, paddress)
8314 (pulongest, plongest, phex_nz, pfildes): Move to utils.h, and
8315 include it.
8316 * utils.h: New file.
8317
83182013-09-05 Pedro Alves <palves@redhat.com>
8319
8320 * server.h (remote_debug, noack_mode, transport_is_reliable)
8321 (gdb_connected, STDIO_CONNECTION_NAME, remote_connection_is_stdio)
8322 (read_ptid, write_ptid, putpkt, putpkt_binary, putpkt_notif)
8323 (getpkt, remote_prepare, remote_open, remote_close, write_ok)
8324 (write_enn, initialize_async_io, enable_async_io)
8325 (disable_async_io, check_remote_input_interrupt_request)
8326 (convert_ascii_to_int, convert_int_to_ascii, new_thread_notify)
8327 (dead_thread_notify, prepare_resume_reply)
8328 (decode_address_to_semicolon, decode_address, decode_m_packet)
8329 (decode_M_packet, decode_X_packet, decode_xfer_write)
8330 (decode_search_memory_packet, unhexify, hexify)
8331 (remote_escape_output, unpack_varlen_hex, clear_symbol_cache)
8332 (look_up_one_symbol, relocate_instruction)
8333 (monitor_output): Move to remote-utils.h, and include it.
8334 * remote-utils.h: New file.
8335
83362013-09-05 Pedro Alves <palves@redhat.com>
8337
8338 * server.h (_): Delete.
8339
83402013-09-02 Pedro Alves <palves@redhat.com>
8341
8342 * tracepoint.c (TRACEFRAME_EOB_MARKER_SIZE): New macro.
8343 (init_trace_buffer): Ensure at least TRACEFRAME_EOB_MARKER_SIZE is
8344 allocated.
8345 (trace_buffer_alloc): Use TRACEFRAME_EOB_MARKER_SIZE.
8346
83472013-09-02 Pierre Muller <muller@sourceware.org>
8348
8349 * win32-low.c (child_xfer_memory): Check if ReadProcessMemory
8350 or WriteProcessMemory complete successfully and handle
8351 ERROR_PARTIAL_COPY error.
8352
83532013-09-02 Pedro Alves <palves@redhat.com>
8354
8355 * server.c (gdb_read_memory): Return -1 on traceframe memory read
8356 error instead of EIO.
8357
83582013-08-28 Jan Kratochvil <jan.kratochvil@redhat.com>
8359
8360 PR server/15604
8361 * linux-low.c: Include filestuff.h.
8362 (linux_create_inferior) <pid == 0>: Call close_most_fds.
8363 * lynx-low.c: Include filestuff.h.
8364 (lynx_create_inferior) <pid == 0>: Call close_most_fds.
8365 * server.c: Include filestuff.h.
8366 (main): Call notice_open_fds.
8367 * spu-low.c: Include filestuff.h.
8368 (spu_create_inferior) <pid == 0>: Call close_most_fds.
8369
83702013-08-22 Luis Machado <lgustavo@codesourcery.com>
8371
8372 * Makefile.in: Explain why ../target and ../nat are not
8373 listed as include file search paths.
8374 (linux-waitpid.o): New object file rule.
8375 * configure.srv (srv_native_linux_obj): New variable.
8376 Replace all occurrences of linux native object files with
8377 $srv_native_linux_obj.
8378 * linux-low.c: Include nat/linux-nat.h and nat/linux-waitpid.h.
8379 (HAS_NOMMU): Move defining logic to common/linux-ptrace.c.
8380 (linux_enable_event_reporting): Remove declaration.
8381 (my_waitpid): Moved to common/linux-waitpid.c.
8382 (linux_wait_for_event): Pass ptid when calling
8383 linux_enable_event_reporting.
8384 (linux_supports_tracefork_flag): Remove.
8385 (linux_enable_event_reporting): Likewise.
8386 (linux_tracefork_grandchild): Remove.
8387 (STACK_SIZE): Moved to common/linux-ptrace.c.
8388 (linux_tracefork_child): Remove.
8389 (linux_test_for_tracefork): Remove.
8390 (linux_look_up_symbols): Call linux_supports_traceclone.
8391 (initialize_low): Remove call to linux_test_for_tracefork.
8392 * linux-low.h (PTRACE_TYPE_ARG3): Move to
8393 common/linux-ptrace.h.
8394 (PTRACE_TYPE_ARG4): Likewise.
8395 Include linux-ptrace.h.
8396
83972013-08-21 Pedro Alves <palves@redhat.com>
8398
8399 * config.in: Renegerate.
8400
84012013-08-19 Luis Machado <lgustavo@codesourcery.com>
8402
8403 * Makefile.in (INCLUDE_CFLAGS): Include -I$(srcdir)/../.
8404 (SFILES): Remove $(srcdir)/common/target-common.c and
8405 add $(srcdir)/target/waitstatus.c.
8406 (OBS): Remove target-common.o and add waitstatus.o.
8407 (server_h): Remove $(srcdir)/../common/target-common.h and
8408 add $(srcdir)/../target/resume.h, $(srcdir)/../target/wait.h
8409 and $(srcdir)/../target/waitstatus.h.
8410 (target-common.o): Remove.
8411 (waitstatus.o): New target object file.
8412 * target.h: Do not include target-common.h and
8413 include target/resume.h, target/wait.h and
8414 target/waitstatus.h.
8415
84162013-08-13 Luis Machado <lgustavo@codesourcery.com>
8417
8418 * linux-arm-low.c: Rename all occurrences of PTRACE_ARG3_TYPE
8419 to PTRACE_TYPE_ARG3.
8420 * linux-low.c: Rename all occurrences of PTRACE_ARG3_TYPE
8421 to PTRACE_TYPE_ARG3 and PTRACE_ARG4_TYPE to
8422 PTRACE_TYPE_ARG4.
8423 * linux-low.h (PTRACE_ARG3_TYPE): Rename to PTRACE_TYPE_ARG3.
8424 (PTRACE_ARG4_TYPE): Rename to PTRACE_TYPE_ARG4.
8425
84262013-07-27 Jie Zhang <jie@codesourcery.com>
8427 Daniel Jacobowitz <dan@codesourcery.com>
8428 Yao Qi <yao@codesourcery.com>
8429
8430 * Makefile.in (SFILES): Add common/mips-linux-watch.c.
8431 (mips-linux-watch.o): New rule.
8432 (mips_linux_watch_h): New variable.
8433 * configure.srv <mips*-*-linux*>: Add mips-linux-watch.o to
8434 srv_tgtobj.
8435 * linux-mips-low.c: Include mips-linux-watch.h.
8436 (struct arch_process_info, struct arch_lwp_info): New.
8437 (update_watch_registers_callback): New function.
8438 (mips_linux_new_process, mips_linux_new_thread) New functions.
8439 (mips_linux_prepare_to_resume, mips_insert_point): New
8440 functions.
8441 (mips_remove_point, mips_stopped_by_watchpoint): New
8442 functions.
8443 (rsp_bp_type_to_target_hw_bp_type): New function.
8444 (mips_stopped_data_address): New function.
8445 (the_low_target): Add watchpoint support functions.
8446
84472013-07-27 Yao Qi <yao@codesourcery.com>
8448
8449 * i386-low.c: Include break-common.h.
8450 (enum target_hw_bp_type): Remove.
8451
84522013-07-24 Luis Machado <lgustavo@codesourcery.com>
8453
8454 * Makefile.in (SFILES): /common/target-common.c.
8455 (OBS): Add target-common.o.
8456 (server_h): Add $(srcdir)/../common/target-common.h.
8457 (target-common.o): New target.
8458 * server.c (queue_stop_reply_callback): Free
8459 status string after use.
8460 * target.c (target_waitstatus_to_string): Remove.
8461 * target.h: Include target-common.h.
8462 (resume_kind): Likewise.
8463 (target_waitkind): Likewise.
8464 (target_waitstatus): Likewise.
8465 (TARGET_WNOHANG): Likewise.
8466
84672013-07-04 Yao Qi <yao@codesourcery.com>
8468
8469 * Makefile.in (host_alias): Use @host_noncanonical@.
8470 (target_alias): Use @target_noncanonical@.
8471 * configure.ac: Use ACX_NONCANONICAL_TARGET and
8472 ACX_NONCANONICAL_HOST.
8473 * configure: Regenerated.
8474
8475 Revert:
8476 2013-06-28 Mircea Gherzan <mircea.gherzan@intel.com>
8477
8478 * configure.ac (version_host, version_target): Set and AC_SUBST them.
8479 * configure: Rebuild.
8480 * Makefile.in (version_host, version_target): Get from configure.
8481 (version.c): Use $(version_host) and $(version_target).
8482
84832013-07-03 Pedro Alves <palves@redhat.com>
8484
8485 * Makefile.in (config.status): Depend on development.sh.
8486 * acinclude.m4: Include libmcheck.m4.
8487 * configure: Regenerate.
8488
84892013-07-02 Mircea Gherzan <mircea.gherzan@intel.com>
8490
8491 * win32-low.c (winapi_DebugActiveProcessStop): Move the WINAPI
8492 attribute inside the parentheses.
8493 (winapi_DebugSetProcessKillOnExit): Ditto.
8494 (winapi_DebugBreakProcess): Ditto.
8495 (winapi_GenerateConsoleCtrlEvent): Ditto.
8496
84972013-07-02 Mircea Gherzan <mircea.gherzan@intel.com>
8498
8499 * notif.h (notif_event): Add a dummy member to avoid compiler
8500 errors.
8501
85022013-07-01 Pedro Alves <palves@redhat.com>
8503
8504 * hostio.c (HOSTIO_PATH_MAX): Define.
8505 (require_filename, handle_open, handle_unlink, handle_readlink):
8506 Use it.
8507
85082013-07-01 Pedro Alves <palves@redhat.com>
8509
8510 * server.h: Include "pathmax.h".
8511 * linux-low.c: Don't include sys/param.h.
8512 (linux_pid_exe_is_elf_64_file): Use PATH_MAX instead of
8513 MAXPATHLEN.
8514 * win32-low.c: Don't include sys/param.h.
8515 (win32_create_inferior): Use PATH_MAX instead of MAXPATHLEN.
8516
85172013-07-01 Pedro Alves <palves@redhat.com>
8518
8519 * event-loop.c: Don't check HAVE_UNISTD_H before including
8520 <unistd.h>.
8521 * gdbreplay.c: Likewise.
8522 * remote-utils.c: Likewise.
8523 * server.c: Likewise.
8524 * configure.ac: Don't check for unistd.h.
8525 * configure: Regenerate.
8526
85272013-06-28 Tom Tromey <tromey@redhat.com>
8528
8529 * Makefile.in (version.c): Use version.in, not
8530 common/version.in.
8531
85322013-06-28 Mircea Gherzan <mircea.gherzan@intel.com>
8533
8534 * configure.ac (version_host, version_target): Set and AC_SUBST them.
8535 * configure: Rebuild.
8536 * Makefile.in (version_host, version_target): Get from configure.
8537 (version.c): Use $(version_host) and $(version_target).
8538
85392013-06-10 Dmitry Kozlov <ddk@codesourcery.com>
8540
8541 Fix trace-status to output user name without trailing colon.
8542 * tracepoint.c (cmd_qtstatus): Remove unnecessary colon from user name.
8543
85442013-06-10 Dmitry Kozlov <ddk@codesourcery.com>
8545
8546 Fix trace-status to output proper start-time and stop-time.
8547 * tracepoint.c (cmd_qtstatus): Modify trace-status output to
8548 output start time and stop time in hex as gdb expects.
8549
85502013-06-26 Pedro Alves <pedro@codesourcery.com>
8551
8552 * tracepoint.c (build_traceframe_info_xml): Output trace state
8553 variables present in the trace buffer.
8554
85552013-06-24 Tom Tromey <tromey@redhat.com>
8556
8557 * Makefile.in (version.c): Use bfd/version.h, common/version.in,
8558 create-version.sh.
8559 (version.o): Remove.
8560 * gdbreplay.c: Include version.h.
8561 (version, host_name): Don't declare.
8562 * server.h: Include version.h.
8563 (version, host_name): Don't declare.
8564
85652013-06-12 Pedro Alves <palves@redhat.com>
8566
8567 * linux-x86-low.c (linux_is_elf64): Delete global.
8568 (x86_siginfo_fixup): Replace reference to `linux_is_elf64' global
8569 with local linux_pid_exe_is_elf_64_file use.
8570
85712013-06-11 Pedro Alves <palves@redhat.com>
8572
8573 * linux-low.c (regset_disabled, disable_regset): New functions.
8574 (regsets_fetch_inferior_registers)
8575 (regsets_store_inferior_registers): Use them.
8576 (initialize_regsets_info); Don't allocate the disabled_regsets
8577 array here.
8578 * linux-low.h (struct regsets_info) <disabled_regsets>: Extend
8579 comment.
8580
85812013-06-11 Pedro Alves <palves@redhat.com>
8582
8583 * linux-low.c (initialize_regsets_info): Use xcalloc instead of
8584 xmalloc.
8585
85862013-06-11 Pedro Alves <palves@redhat.com>
8587
8588 * linux-x86-low.c (initialize_low_arch): Call
8589 init_registers_x32_avx_linux.
8590
85912013-06-09 Jan Kratochvil <jan.kratochvil@redhat.com>
8592
8593 Fix compatibility with Android Bionic.
8594 * linux-low.c (linux_qxfer_libraries_svr4): Ignore first entry even if
8595 it is not empty.
8596
85972013-06-07 Pedro Alves <palves@redhat.com>
8598
8599 PR server/14823
8600 * Makefile.in (OBS): Add tdesc.o.
8601 (IPA_OBJS): Add tdesc-ipa.o.
8602 (tdesc-ipa.o): New rule.
8603 * ax.c (gdb_eval_agent_expr): Adjust register_size call to new
8604 interface.
8605 * linux-low.c (new_inferior): Delete.
8606 (disabled_regsets, num_regsets): Delete.
8607 (linux_add_process): Adjust to set the new per-process
8608 new_inferior flag.
8609 (linux_detach_one_lwp): Adjust to call regcache_invalidate_thread.
8610 (linux_wait_for_lwp): Adjust. Only call arch_setup if the event
8611 was a stop. When calling arch_setup, switch the current inferior
8612 to the thread that got an event.
8613 (linux_resume_one_lwp): Adjust to call regcache_invalidate_thread.
8614 (regsets_fetch_inferior_registers)
8615 (regsets_store_inferior_registers): New regsets_info parameter.
8616 Adjust to use it.
8617 (linux_register_in_regsets): New regs_info parameter. Adjust to
8618 use it.
8619 (register_addr, fetch_register, store_register): New usrregs_info
8620 parameter. Adjust to use it.
8621 (usr_fetch_inferior_registers, usr_store_inferior_registers): New
8622 parameter regs_info. Adjust to use it.
8623 (linux_fetch_registers): Get the current inferior's regs_info, and
8624 adjust to use it.
8625 (linux_store_registers): Ditto.
8626 [HAVE_LINUX_REGSETS] (initialize_regsets_info): New.
8627 (initialize_low): Don't initialize the target_regsets here. Call
8628 initialize_low_arch.
8629 * linux-low.h (target_regsets): Delete declaration.
8630 (struct regsets_info): New.
8631 (struct usrregs_info): New.
8632 (struct regs_info): New.
8633 (struct process_info_private) <new_inferior>: New field.
8634 (struct linux_target_ops): Delete the num_regs, regmap, and
8635 regset_bitmap fields. New field regs_info.
8636 [HAVE_LINUX_REGSETS] (initialize_regsets_info): Declare.
8637 * i387-fp.c (num_xmm_registers): Delete.
8638 (i387_cache_to_fsave, i387_fsave_to_cache): Adjust find_regno
8639 calls to new interface.
8640 (i387_cache_to_fxsave, i387_cache_to_xsave, i387_fxsave_to_cache)
8641 (i387_xsave_to_cache): Adjust find_regno calls to new interface.
8642 Infer the number of xmm registers from the regcache's target
8643 description.
8644 * i387-fp.h (num_xmm_registers): Delete.
8645 * inferiors.c (add_thread): Don't install the thread's regcache
8646 here.
8647 * proc-service.c (gregset_info): Fetch the current inferior's
8648 regs_info. Adjust to use it.
8649 * regcache.c: Include tdesc.h.
8650 (register_bytes, reg_defs, num_registers)
8651 (gdbserver_expedite_regs): Delete.
8652 (get_thread_regcache): If the thread doesn't have a regcache yet,
8653 create one, instead of aborting gdbserver.
8654 (regcache_invalidate_one): Rename to ...
8655 (regcache_invalidate_thread): ... this.
8656 (regcache_invalidate_one): New.
8657 (regcache_invalidate): Only invalidate registers of the current
8658 process.
8659 (init_register_cache): Add target_desc parameter, and use it.
8660 (new_register_cache): Ditto. Assert the target description has a
8661 non zero registers_size.
8662 (regcache_cpy): Add assertions. Adjust.
8663 (realloc_register_cache, set_register_cache): Delete.
8664 (registers_to_string, registers_from_string): Adjust.
8665 (find_register_by_name, find_regno, find_register_by_number)
8666 (register_cache_size): Add target_desc parameter, and use it.
8667 (free_register_cache_thread, free_register_cache_thread_one)
8668 (regcache_release, register_cache_size): New.
8669 (register_size): Add target_desc parameter, and use it.
8670 (register_data, supply_register, supply_register_zeroed)
8671 (supply_regblock, supply_register_by_name, collect_register)
8672 (collect_register_as_string, collect_register_by_name): Adjust.
8673 * regcache.h (struct target_desc): Forward declare.
8674 (struct regcache) <tdesc>: New field.
8675 (init_register_cache, new_register_cache): Add target_desc
8676 parameter.
8677 (regcache_invalidate_thread): Declare.
8678 (regcache_invalidate_one): Delete declaration.
8679 (regcache_release): Declare.
8680 (find_register_by_number, register_cache_size, register_size)
8681 (find_regno): Add target_desc parameter.
8682 (gdbserver_expedite_regs, gdbserver_xmltarget): Delete
8683 declarations.
8684 * remote-utils.c: Include tdesc.h.
8685 (outreg, prepare_resume_reply): Adjust.
8686 * server.c: Include tdesc.h.
8687 (gdbserver_xmltarget): Delete declaration.
8688 (get_features_xml, process_serial_event): Adjust.
8689 * server.h [IN_PROCESS_AGENT] (struct target_desc): Forward
8690 declare.
8691 (struct process_info) <tdesc>: New field.
8692 (ipa_tdesc): Declare.
8693 * tdesc.c: New file.
8694 * tdesc.h: New file.
8695 * tracepoint.c: Include tdesc.h.
8696 [IN_PROCESS_AGENT] (ipa_tdesc): Define.
8697 (get_context_regcache): Adjust to pass ipa_tdesc down.
8698 (do_action_at_tracepoint): Adjust to get the register cache size
8699 from the context regcache's description.
8700 (traceframe_walk_blocks): Adjust to get the register cache size
8701 from the current trace frame's description.
8702 (traceframe_get_pc): Adjust to get current trace frame's
8703 description and pass it down.
8704 (gdb_collect): Adjust to get the register cache size from the
8705 IPA's description.
8706 * linux-amd64-ipa.c (tdesc_amd64_linux): Declare.
8707 (gdbserver_xmltarget): Delete.
8708 (initialize_low_tracepoint): Set the ipa's target description.
8709 * linux-i386-ipa.c (tdesc_i386_linux): Declare.
8710 (initialize_low_tracepoint): Set the ipa's target description.
8711 * linux-x86-low.c: Include tdesc.h.
8712 [__x86_64__] (is_64bit_tdesc): New.
8713 (ps_get_thread_area, x86_get_thread_area): Use it.
8714 (i386_cannot_store_register): Rename to ...
8715 (x86_cannot_store_register): ... this. Use is_64bit_tdesc.
8716 (i386_cannot_fetch_register): Rename to ...
8717 (x86_cannot_fetch_register): ... this. Use is_64bit_tdesc.
8718 (x86_fill_gregset, x86_store_gregset): Adjust register_size calls
8719 to new interface.
8720 (target_regsets): Rename to ...
8721 (x86_regsets): ... this.
8722 (x86_get_pc, x86_set_pc): Adjust register_size calls to new
8723 interface.
8724 (x86_siginfo_fixup): Use is_64bit_tdesc.
8725 [__x86_64__] (tdesc_amd64_linux, tdesc_amd64_avx_linux)
8726 (tdesc_x32_avx_linux, tdesc_x32_linux)
8727 (tdesc_i386_linux, tdesc_i386_mmx_linux, tdesc_i386_avx_linux):
8728 Declare.
8729 (x86_linux_update_xmltarget): Delete.
8730 (I386_LINUX_XSAVE_XCR0_OFFSET): Define.
8731 (have_ptrace_getfpxregs, have_ptrace_getregset): New.
8732 (AMD64_LINUX_USER64_CS): New.
8733 (x86_linux_read_description): New, based on
8734 x86_linux_update_xmltarget.
8735 (same_process_callback): New.
8736 (x86_arch_setup_process_callback): New.
8737 (x86_linux_update_xmltarget): New.
8738 (x86_regsets_info): New.
8739 (amd64_linux_regs_info): New.
8740 (i386_linux_usrregs_info): New.
8741 (i386_linux_regs_info): New.
8742 (x86_linux_regs_info): New.
8743 (x86_arch_setup): Reimplement.
8744 (x86_install_fast_tracepoint_jump_pad): Use is_64bit_tdesc.
8745 (x86_emit_ops): Ditto.
8746 (the_low_target): Adjust. Install x86_linux_regs_info,
8747 x86_cannot_fetch_register, and x86_cannot_store_register.
8748 (initialize_low_arch): New.
8749 * linux-ia64-low.c (tdesc_ia64): Declare.
8750 (ia64_fetch_register): Adjust.
8751 (ia64_usrregs_info, regs_info): New globals.
8752 (ia64_regs_info): New function.
8753 (the_low_target): Adjust.
8754 (initialize_low_arch): New function.
8755 * linux-sparc-low.c (tdesc_sparc64): Declare.
8756 (sparc_fill_gregset_to_stack, sparc_store_gregset_from_stack):
8757 Adjust.
8758 (sparc_arch_setup): New function.
8759 (sparc_regsets_info, sparc_usrregs_info, regs_info): New globals.
8760 (the_low_target): Adjust.
8761 (initialize_low_arch): New function.
8762 * linux-ppc-low.c (tdesc_powerpc_32l, tdesc_powerpc_altivec32l)
8763 (tdesc_powerpc_cell32l, tdesc_powerpc_vsx32l)
8764 (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_altivec32l)
8765 (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_e500l)
8766 (tdesc_powerpc_64l, tdesc_powerpc_altivec64l)
8767 (tdesc_powerpc_cell64l, tdesc_powerpc_vsx64l)
8768 (tdesc_powerpc_isa205_64l, tdesc_powerpc_isa205_altivec64l)
8769 (tdesc_powerpc_isa205_vsx64l): Declare.
8770 (ppc_cannot_store_register, ppc_collect_ptrace_register)
8771 (ppc_supply_ptrace_register, parse_spufs_run, ppc_get_pc)
8772 (ppc_set_pc, ppc_get_hwcap): Adjust.
8773 (ppc_usrregs_info): Forward declare.
8774 (!__powerpc64__) ppc_regmap_adjusted: New global.
8775 (ppc_arch_setup): Adjust to the current process'es target
8776 description.
8777 (ppc_fill_vsxregset, ppc_store_vsxregset, ppc_fill_vrregset)
8778 (ppc_store_vrregset, ppc_fill_evrregset, ppc_store_evrregse)
8779 (ppc_store_evrregset): Adjust.
8780 (target_regsets): Rename to ...
8781 (ppc_regsets): ... this, and make static.
8782 (ppc_usrregs_info, ppc_regsets_info, regs_info): New globals.
8783 (ppc_regs_info): New function.
8784 (the_low_target): Adjust.
8785 (initialize_low_arch): New function.
8786 * linux-s390-low.c (tdesc_s390_linux32, tdesc_s390_linux32v1)
8787 (tdesc_s390_linux32v2, tdesc_s390_linux64, tdesc_s390_linux64v1)
8788 (tdesc_s390_linux64v2, tdesc_s390x_linux64, tdesc_s390x_linux64v1)
8789 (tdesc_s390x_linux64v2): Declare.
8790 (s390_collect_ptrace_register, s390_supply_ptrace_register)
8791 (s390_fill_gregset, s390_store_last_break): Adjust.
8792 (target_regsets): Rename to ...
8793 (s390_regsets): ... this, and make static.
8794 (s390_get_pc, s390_set_pc): Adjust.
8795 (s390_get_hwcap): New target_desc parameter, and use it.
8796 [__s390x__] (have_hwcap_s390_high_gprs): New global.
8797 (s390_arch_setup): Adjust to set the current process'es target
8798 description. Don't adjust the regmap.
8799 (s390_usrregs_info, s390_regsets_info, regs_info): New globals.
8800 [__s390x__] (s390_usrregs_info_3264, s390_regsets_info_3264)
8801 (regs_info_3264): New globals.
8802 (s390_regs_info): New function.
8803 (the_low_target): Adjust.
8804 (initialize_low_arch): New function.
8805 * linux-mips-low.c (tdesc_mips_linux, tdesc_mips_dsp_linux)
8806 (tdesc_mips64_linux, tdesc_mips64_dsp_linux): Declare.
8807 [__mips64] (init_registers_mips_linux)
8808 (init_registers_mips_dsp_linux): Delete defines.
8809 [__mips64] (tdesc_mips_linux, tdesc_mips_dsp_linux): New defines.
8810 (have_dsp): New global.
8811 (mips_read_description): New, based on mips_arch_setup.
8812 (mips_arch_setup): Reimplement.
8813 (get_usrregs_info): New function.
8814 (mips_cannot_fetch_register, mips_cannot_store_register)
8815 (mips_get_pc, mips_set_pc, mips_fill_gregset, mips_store_gregset)
8816 (mips_fill_fpregset, mips_store_fpregset): Adjust.
8817 (target_regsets): Rename to ...
8818 (mips_regsets): ... this, and make static.
8819 (mips_regsets_info, mips_dsp_usrregs_info, mips_usrregs_info)
8820 (dsp_regs_info, regs_info): New globals.
8821 (mips_regs_info): New function.
8822 (the_low_target): Adjust.
8823 (initialize_low_arch): New function.
8824 * linux-arm-low.c (tdesc_arm, tdesc_arm_with_iwmmxt)
8825 (tdesc_arm_with_vfpv2, tdesc_arm_with_vfpv3, tdesc_arm_with_neon):
8826 Declare.
8827 (arm_fill_vfpregset, arm_store_vfpregset): Adjust.
8828 (arm_read_description): New, with bits factored from
8829 arm_arch_setup.
8830 (arm_arch_setup): Reimplement.
8831 (target_regsets): Rename to ...
8832 (arm_regsets): ... this, and make static.
8833 (arm_regsets_info, arm_usrregs_info, regs_info): New globals.
8834 (arm_regs_info): New function.
8835 (the_low_target): Adjust.
8836 (initialize_low_arch): New function.
8837 * linux-m68k-low.c (tdesc_m68k): Declare.
8838 (target_regsets): Rename to ...
8839 (m68k_regsets): ... this, and make static.
8840 (m68k_regsets_info, m68k_usrregs_info, regs_info): New globals.
8841 (m68k_regs_info): New function.
8842 (m68k_arch_setup): New function.
8843 (the_low_target): Adjust.
8844 (initialize_low_arch): New function.
8845 * linux-sh-low.c (tdesc_sharch): Declare.
8846 (target_regsets): Rename to ...
8847 (sh_regsets): ... this, and make static.
8848 (sh_regsets_info, sh_usrregs_info, regs_info): New globals.
8849 (sh_regs_info, sh_arch_setup): New functions.
8850 (the_low_target): Adjust.
8851 (initialize_low_arch): New function.
8852 * linux-bfin-low.c (tdesc_bfin): Declare.
8853 (bfin_arch_setup): New function.
8854 (bfin_usrregs_info, regs_info): New globals.
8855 (bfin_regs_info): New function.
8856 (the_low_target): Adjust.
8857 (initialize_low_arch): New function.
8858 * linux-cris-low.c (tdesc_cris): Declare.
8859 (cris_arch_setup): New function.
8860 (cris_usrregs_info, regs_info): New globals.
8861 (cris_regs_info): New function.
8862 (the_low_target): Adjust.
8863 (initialize_low_arch): New function.
8864 * linux-cris-low.c (tdesc_crisv32): Declare.
8865 (cris_arch_setup): New function.
8866 (cris_regsets_info, cris_usrregs_info, regs_info): New globals.
8867 (cris_regs_info): New function.
8868 (the_low_target): Adjust.
8869 (initialize_low_arch): New function.
8870 * linux-m32r-low.c (tdesc_m32r): Declare.
8871 (m32r_arch_setup): New function.
8872 (m32r_usrregs_info, regs_info): New globals.
8873 (m32r_regs_info): Adjust.
8874 (initialize_low_arch): New function.
8875 * linux-tic6x-low.c (tdesc_tic6x_c64xp_linux)
8876 (tdesc_tic6x_c64x_linux, tdesc_tic6x_c62x_linux): Declare.
8877 (tic6x_usrregs_info): Forward declare.
8878 (tic6x_read_description): New function, based on ...
8879 (tic6x_arch_setup): ... this. Reimplement.
8880 (target_regsets): Rename to ...
8881 (tic6x_regsets): ... this, and make static.
8882 (tic6x_regsets_info, tic6x_usrregs_info, regs_info): New globals.
8883 (tic6x_regs_info): New function.
8884 (the_low_target): Adjust.
8885 (initialize_low_arch): New function.
8886 * linux-xtensa-low.c (tdesc_xtensa): Declare.
8887 (xtensa_fill_gregset, xtensa_store_gregset): Adjust.
8888 (target_regsets): Rename to ...
8889 (xtensa_regsets): ... this, and make static.
8890 (xtensa_regsets_info, xtensa_usrregs_info, regs_info): New
8891 globals.
8892 (xtensa_arch_setup, xtensa_regs_info): New functions.
8893 (the_low_target): Adjust.
8894 (initialize_low_arch): New function.
8895 * linux-nios2-low.c (tdesc_nios2_linux): Declare.
8896 (nios2_arch_setup): Set the current process'es tdesc.
8897 (target_regsets): Rename to ...
8898 (nios2_regsets): ... this.
8899 (nios2_regsets_info, nios2_usrregs_info, regs_info): New globals.
8900 (nios2_regs_info): New function.
8901 (the_low_target): Adjust.
8902 (initialize_low_arch): New function.
8903 * linux-aarch64-low.c (tdesc_aarch64): Declare.
8904 (aarch64_arch_setup): Set the current process'es tdesc.
8905 (target_regsets): Rename to ...
8906 (aarch64_regsets): ... this.
8907 (aarch64_regsets_info, aarch64_usrregs_info, regs_info): New globals.
8908 (aarch64_regs_info): New function.
8909 (the_low_target): Adjust.
8910 (initialize_low_arch): New function.
8911 * linux-tile-low.c (tdesc_tilegx, tdesc_tilegx32): Declare
8912 globals.
8913 (target_regsets): Rename to ...
8914 (tile_regsets): ... this.
8915 (tile_regsets_info, tile_usrregs_info, regs_info): New globals.
8916 (tile_regs_info): New function.
8917 (tile_arch_setup): Set the current process'es tdesc.
8918 (the_low_target): Adjust.
8919 (initialize_low_arch): New function.
8920 * spu-low.c (tdesc_spu): Declare.
8921 (spu_create_inferior, spu_attach): Set the new process'es tdesc.
8922 * win32-arm-low.c (tdesc_arm): Declare.
8923 (arm_arch_setup): New function.
8924 (the_low_target): Install arm_arch_setup instead of
8925 init_registers_arm.
8926 * win32-i386-low.c (tdesc_i386, tdesc_amd64): Declare.
8927 (init_windows_x86): Rename to ...
8928 (i386_arch_setup): ... this. Set `win32_tdesc'.
8929 (the_low_target): Adjust.
8930 * win32-low.c (win32_tdesc): New global.
8931 (child_add_thread): Don't create the thread cache here.
8932 (do_initial_child_stuff): Set the new process'es tdesc.
8933 * win32-low.h (struct target_desc): Forward declare.
8934 (win32_tdesc): Declare.
8935 * lynx-i386-low.c (tdesc_i386): Declare global.
8936 (lynx_i386_arch_setup): Set `lynx_tdesc'.
8937 * lynx-low.c (lynx_tdesc): New global.
8938 (lynx_add_process): Set the new process'es tdesc.
8939 * lynx-low.h (struct target_desc): Forward declare.
8940 (lynx_tdesc): Declare global.
8941 * lynx-ppc-low.c (tdesc_powerpc_32): Declare global.
8942 (lynx_ppc_arch_setup): Set `lynx_tdesc'.
8943 * nto-low.c (nto_tdesc): New global.
8944 (do_attach): Set the new process'es tdesc.
8945 * nto-low.h (struct target_desc): Forward declare.
8946 (nto_tdesc): Declare.
8947 * nto-x86-low.c (tdesc_i386): Declare.
8948 (nto_x86_arch_setup): Set `nto_tdesc'.
8949
89502013-06-04 Gary Benson <gbenson@redhat.com>
8951
8952 * server.c (handle_query): Add "augmented-libraries-svr4-read+"
8953 to qSupported response when appropriate.
8954 (handle_qxfer_libraries_svr4): Allow qXfer:libraries-svr4:read
8955 with nonzero-length annex.
8956 * linux-low.c (linux_qxfer_libraries_svr4): Parse and handle
8957 arguments supplied in annex.
8958
89592013-05-31 Doug Evans <dje@google.com>
8960
8961 PR server/15594
8962 * linux-x86-low.c (ps_get_thread_area): Properly extend address to
8963 64 bits in 64-cross-32 environment.
8964
89652013-05-28 Pedro Alves <palves@redhat.com>
8966
8967 * Makefile.in (clean): Remove reference to aarch64-without-fpu.c.
8968 (aarch64-without-fpu.c): Delete rule.
8969 * configure.srv (aarch64*-*-linux*): Remove references to
8970 aarch64-without-fpu.o and aarch64-without-fpu.xml.
8971 * linux-aarch64-low.c (init_registers_aarch64_without_fpu): Remove
8972 declaration.
8973
89742013-05-24 Pedro Alves <palves@redhat.com>
8975
8976 * server.c (handle_v_cont) <vCont;r>: Use unpack_varlen_hex
8977 instead of strchr/decode_address. Error if the range isn't split
8978 with a ','. Don't assume there's be a ':' in the action.
8979
89802013-05-23 Yao Qi <yao@codesourcery.com>
8981 Pedro Alves <palves@redhat.com>
8982
8983 * linux-low.c (lwp_in_step_range): New function.
8984 (linux_wait_1): If the thread was range stepping and stopped
8985 outside the stepping range, report the stop to GDB. Otherwise,
8986 continue stepping. Add range stepping debug output.
8987 (linux_set_resume_request): Copy the step range from the resume
8988 request to the lwp.
8989 (linux_supports_range_stepping): New.
8990 (linux_target_ops) <supports_range_stepping>: Set to
8991 linux_supports_range_stepping.
8992 * linux-low.h (struct linux_target_ops)
8993 <supports_range_stepping>: New field.
8994 (struct lwp_info) <step_range_start, step_range_end>: New fields.
8995 * linux-x86-low.c (x86_supports_range_stepping): New.
8996 (the_low_target) <supports_range_stepping>: Set to
8997 x86_supports_range_stepping.
8998 * server.c (handle_v_cont): Handle 'r' action.
8999 (handle_v_requests): Append ";r" if the target supports range
9000 stepping.
9001 * target.h (struct thread_resume) <step_range_start,
9002 step_range_end>: New fields.
9003 (struct target_ops) <supports_range_stepping>:
9004 New field.
9005 (target_supports_range_stepping): New macro.
9006
90072013-05-17 Joel Brobecker <brobecker@adacore.com>
9008
9009 * lynx-low.c (lynx_resume): Fix null_ptid/minus_one_ptid
9010 confusion in comment.
9011
90122013-05-17 Joel Brobecker <brobecker@adacore.com>
9013
9014 * lynx-low.c (struct process_info_private): New type.
9015 (lynx_add_process): New function.
9016 (lynx_create_inferior, lynx_attach): Replace calls to
9017 add_process by calls to lynx_add_process.
9018 (lynx_resume): If PTID is null, then try using
9019 current_process()->private->last_wait_event_ptid.
9020 Add comments.
9021 (lynx_clear_inferiors): Delete. The contents of that function
9022 has been inlined in lynx_mourn;
9023 (lynx_wait_1): Save the ptid in the process's private data.
9024 (lynx_mourn): Free the process' private data. Replace call
9025 to lynx_clear_inferiors by call to clear_inferiors.
9026
90272013-05-17 Yao Qi <yao@codesourcery.com>
9028
9029 * i386-low.c (i386_length_and_rw_bits): Move the comment to
9030 the right place.
9031
90322013-05-16 Luis Machado <lgustavo@codesourcery.com>
9033
9034 * linux-low.c: Move definition checks upwards for PT_TEXT_ADDR,
9035 PT_DATA_ADDR and PT_TEXT_END_ADDR. Update comments.
9036 (linux_read_offsets): Remove PT_TEXT_ADDR, PT_DATA_ADDR and
9037 PT_TEXT_END_ADDR guards. Update comments.
9038 (linux_target_op) <read_offsets>: Conditionally define to
9039 linux_read_offsets if the target is UCLIBC and if it defines
9040 PT_TEXT_ADDR, PT_DATA_ADDR and PT_TEXT_END_ADDR.
9041
90422013-05-06 Sandra Loosemore <sandra@codesourcery.com>
9043 Andrew Jenner <andrew@codesourcery.com>
9044
9045 * Makefile.in (SFILES): Add linux-nios2-low.c.
9046 (clean): Add action to delete nios2-linux.c.
9047 (nios2-linux.c): New rule.
9048 * configure.srv: Add nios2*-*-linux*.
9049 * linux-nios2-low.c: New.
9050
90512013-05-03 Hafiz Abid Qadeer <abidh@codesourcery.com>
9052
9053 * tracepoint.c (cmd_qtinit): Call 'stop_tracing'.
9054
90552013-04-25 Hui Zhu <hui@codesourcery.com>
9056
9057 PR gdb/15186
9058 * ax.c (ax_printf): Add fflush.
9059
90602013-04-22 Tom Tromey <tromey@redhat.com>
9061
9062 * Makefile.in (SFILES): Add filestuff.c.
9063 (OBS): Add filestuff.o.
9064 (filestuff.o): New target.
9065 * config.in, configure: Rebuild.
9066 * configure.ac: Check for fdwalk, pipe2.
9067
90682013-04-17 Pedro Alves <palves@redhat.com>
9069
9070 * configure.ac (USE_THREAD_DB): Delete variable.
9071 (if test "$srv_linux_thread_db" = "yes"): AC_DEFINE USE_THREAD_DB.
9072 Don't AC_SUBST USE_THREAD_DB.
9073 * Makefile.in (INTERNAL_CFLAGS): Remove @USE_THREAD_DB@.
9074 * config.in, configure: Regenerate.
9075
90762013-04-16 Pedro Alves <palves@redhat.com>
9077
9078 * linux-low.h (struct lwp_info) <thread_known>: Move under
9079 the USE_THREAD_DB #ifdef.
9080
90812013-04-16 Pedro Alves <palves@redhat.com>
9082
9083 * Makefile.in (INTERNAL_CFLAGS): Add @USE_THREAD_DB@.
9084 (linux-low.o): Delete rule.
9085 * linux-low.h: Always include "gdb_thread_db.h" instead of
9086 conditionally including thread_db.h.
9087 (struct lwp_info) <th>: Guard with #ifdef USE_THREAD_DB instead of
9088 HAVE_THREAD_DB_H.
9089
90902013-04-07 Jan Kratochvil <jan.kratochvil@redhat.com>
9091
9092 * Makefile.in (install-only): Fix make install regression.
9093
90942013-04-05 Jan Kratochvil <jan.kratochvil@redhat.com>
9095
9096 Convert man pages to texinfo, new gdbinit.5 texinfo page.
9097 * Makefile.in (install-only): Remove $(man1dir) and gdbserver.1
9098 installation.
9099 * gdbserver.1: Remove.
9100
91012013-03-22 Pedro Alves <palves@redhat.com>
9102
9103 * linux-low.c (handle_extended_wait): Don't call
9104 linux_enable_event_reporting.
9105
91062013-03-15 Tony Theodore <tonyt@logyst.com>
9107
9108 PR build/9098:
9109 * Makefile.in (SHELL): Use @SHELL@.
9110
91112013-03-14 Sergio Durigan Junior <sergiodj@redhat.com>
9112
9113 * tracepoint.c (cmd_qtv): Initialize `val' with zero, silencing
9114 compiler warning.
9115
91162013-03-13 Joel Brobecker <brobecker@adacore.com>
9117
9118 * linux-low.c (linux_target_ops) [!HAVE_LINUX_BTRACE]:
9119 Remove extraneous NULL element.
9120
91212013-03-13 Yao Qi <yao@codesourcery.com>
9122
9123 * tracepoint.c (traceframe_read_tsv): Look for the last matched
9124 'V' block in trace frame.
9125
91262013-03-11 Markus Metzger <markus.t.metzger@intel.com>
9127
9128 * target.h (struct target_ops): Add btrace ops.
9129 (target_supports_btrace): New macro.
9130 (target_enable_btrace): New macro.
9131 (target_disable_btrace): New macro.
9132 (target_read_btrace): New macro.
9133 * gdbthread.h (struct thread_info): Add btrace field.
9134 * server.c: Include btrace-common.h.
9135 (handle_btrace_general_set): New function.
9136 (handle_btrace_enable): New function.
9137 (handle_btrace_disable): New function.
9138 (handle_general_set): Call handle_btrace_general_set.
9139 (handle_qxfer_btrace): New function.
9140 (struct qxfer qxfer_packets[]): Add btrace entry.
9141 * inferiors.c (remove_thread): Disable btrace.
9142 * linux-low: Include linux-btrace.h.
9143 (linux_low_enable_btrace): New function.
9144 (linux_low_read_btrace): New function.
9145 (linux_target_ops): Add btrace ops.
9146 * configure.srv (i[34567]86-*-linux*): Add linux-btrace.o.
9147 Add srv_linux_btrace=yes.
9148 (x86_64-*-linux*): Add linux-btrace.o.
9149 Add srv_linux_btrace=yes.
9150 * configure.ac: Define HAVE_LINUX_BTRACE.
9151 * config.in: Regenerated.
9152 * configure: Regenerated.
9153
91542013-03-11 Markus Metzger <markus.t.metzger@intel.com>
9155
9156 * server.c (handle_qxfer): Preserve error message if -3 is
9157 returned.
9158 (qxfer): Document the -3 return value.
9159
91602013-03-11 Markus Metzger <markus.t.metzger@intel.com>
9161
9162 * Makefile.in (SFILES): Add $(srcdir)/common/linux-btrace.c.
9163 (linux_btrace_h): New variable.
9164 (linux-btrace.o): New rule.
9165
91662013-03-08 Stan Shebs <stan@codesourcery.com>
9167 Hafiz Abid Qadeer <abidh@codesourcery.com>
9168
9169 * tracepoint.c (trace_buffer_size): New global.
9170 (DEFAULT_TRACE_BUFFER_SIZE): New define.
9171 (init_trace_buffer): Change to one-argument function. Allocate
9172 trace buffer memory.
9173 (handle_tracepoint_general_set): Call cmd_bigqtbuffer_size to
9174 handle QTBuffer:size packet.
9175 (cmd_bigqtbuffer_size): New function.
9176 (initialize_tracepoint): Call init_trace_buffer with
9177 DEFAULT_TRACE_BUFFER_SIZE.
9178 * server.c (handle_query): Add QTBuffer:size in the
9179 supported packets.
9180
91812013-03-07 Yao Qi <yao@codesourcery.com>
9182
9183 * tracepoint.c (cur_action, cur_step_action): Make them unsigned.
9184 (cmd_qtfp): Initialize cur_action and cur_step_action 0 instead
9185 of -1.
9186 (cmd_qtsp): Adjust condition. Do post increment.
9187 Set cur_action and cur_step_action back to 0.
9188
91892013-03-07 Jeremy Bennett <jeremy.bennett@embecosm.com>
9190
9191 PR server/15236
9192 * linux-low.c (linux_write_memory): Return early success if LEN is
9193 zero.
9194
91952013-03-05 Corinna Vinschen <vinschen@redhat.de>
9196
9197 * configure.srv: Add x86_64-*-cygwin* as target.
9198
91992013-02-28 Tom Tromey <tromey@redhat.com>
9200
9201 * configure.ac: Invoke AC_SYS_LARGEFILE.
9202 * configure, config.in: Rebuild.
9203
92042013-02-28 Corinna Vinschen <vinschen@redhat.com>
9205
9206 * win32-low.c: Throughout, fix format strings and casts of
9207 printf-like functions to avoid type related warnings on all
9208 platforms.
9209 (get_child_debug_event): Print dwDebugEventCode as hex since
9210 that's how it's usually documented.
9211
92122013-02-28 Yao Qi <yao@codesourcery.com>
9213
9214 * tracepoint.c (cmd_qtbuffer): Call phex_nz instead of
9215 pulongest.
9216
92172013-02-27 Jiong Wang <jiwang@tilera.com>
9218
9219 * Makefile.in (clean): Remove reg-tilegx.c, reg-tilegx32.c.
9220 (reg-tilegx32.c): New rule.
9221 * configure.srv (tilegx-*-linux*): Add reg-tilegx32.o to srv_regobj.
9222 * linux-tile-low.c (tile_arch_setup): New function. Invoke
9223 different register info initializer according to elf class.
9224 (init_registers_tilgx32): New function. The tilegx32 register info
9225 initializer.
9226 (tile_fill_gregset): Use "uint_reg_t" to represent register size.
9227 (tile_store_gregset): Likewise.
9228
92292013-02-27 Yao Qi <yao@codesourcery.com>
9230
9231 * server.c (process_point_options): Print debug message when
9232 debug_threads is true.
9233
92342013-02-26 Yao Qi <yao@codesourcery.com>
9235
9236 * tracepoint.c (cmd_qtbuffer): Don't set '\0' in OWN_BUF.
9237
92382013-02-19 Pedro Alves <palves@redhat.com>
9239 Kai Tietz <ktietz@redhat.com>
9240
9241 PR gdb/15161
9242
9243 * server.c (handle_query) <CRC check>: Use unpack_varlen_hex
9244 instead of strtoul to extract address from packet.
9245 (process_serial_event) <'z'>: Likewise.
9246
92472013-02-18 Yao Qi <yao@codesourcery.com>
9248
9249 * linux-bfin-low.c (the_low_target): Use NULL instead of 0.
9250
92512013-02-14 Pedro Alves <palves@redhat.com>
9252
9253 Plug memory leak.
9254
9255 * tracepoint.c (cmd_qtnotes): Free TRACING_USER_NAME,
9256 TRACING_NOTES and TRACING_STOP_NOTE before clobbering.
9257
92582013-02-14 Pedro Alves <palves@redhat.com>
9259
9260 * tracepoint.c (cmd_qtdpsrc): Use savestring.
9261
92622013-02-14 Pedro Alves <palves@redhat.com>
9263
9264 * tracepoint.c (save_string): Delete.
9265 (add_tracepoint_action): Use savestring instead of save_string.
9266
92672013-02-12 Pedro Alves <palves@redhat.com>
9268
9269 * linux-xtensa-low.c: Ditto.
9270 * xtensa-xtregs.c: Ditto.
9271
92722013-02-12 Sanimir Agovic <sanimir.agovic@intel.com>
9273
9274 * thread-db.c (thread_db_get_tls_address): NULL pointer check
9275 thread_db.
9276
92772013-02-07 Marcus Shawcroft <marcus.shawcroft@arm.com>
9278
9279 * linux-aarch64-low.c (aarch64_arch_setup): Clamp
9280 aarch64_num_wp_regs and aarch64_num_bp_regs to
9281 AARCH64_HWP_MAX_NUM and AARCH64_HBP_MAX_NUM respectively.
9282
92832013-02-07 Marcus Shawcroft <marcus.shawcroft@arm.com>
9284
9285 * linux-aarch64-low.c (ps_get_thread_area): Replace
9286 PTRACE_GET_THREAD_AREA with PTRACE_GETREGSET.
9287
92882013-02-04 Jim MacArthur <jim.macarthur@arm.com>
9289 Marcus Shawcroft <marcus.shawcroft@arm.com>
9290 Nigel Stephens <nigel.stephens@arm.com>
9291 Yufeng Zhang <yufeng.zhang@arm.com>
9292
9293 * Makefile.in (clean): Remove aarch64.c and aarch64-without-fpu.c.
9294 (aarch64.c, aarch64-without-fpu.c): New targets.
9295 * configure.srv (aarch64*-*-linux*): New.
9296 * linux-aarch64-low.c: New file.
9297
92982013-02-04 Marcus Shawcroft <marcus.shawcroft@arm.com>
9299
9300 * linux-low.c (handle_extended_wait, linux_create_inferior)
9301 (linux_attach_lwp_1, linux_kill_one_lwp, linux_attach_one_lwp)
9302 (dequeue_one_deferred_signal, linux_resume_one_thread)
9303 (fetch_register, linux_write_memory, linux_enable_event_reporting)
9304 (linux_tracefork_grandchild, linux_test_for_tracefork)
9305 (linux_read_offsets, linux_xfer_siginfo, linux_xfer_siginfo): Add
9306 PTRACE_ARG3_TYPE and PTRACE_ARG4_TYPE cast to ptrace arguments
9307 where the argument is 0.
9308
93092013-01-25 Yao Qi <yao@codesourcery.com>
9310
9311 * event-loop.c: Include "queue.h".
9312 (gdb_event_p): New typedef.
9313 (struct gdb_event) <next_event>: Remove.
9314 (event_queue): Change to QUEUE(gdb_event_p).
9315 (async_queue_event): Remove.
9316 (gdb_event_xfree): New.
9317 (initialize_event_loop): New.
9318 (process_event): Use API from QUEUE.
9319 (wait_for_event): Likewise.
9320 * server.c (main): Call initialize_event_loop.
9321 * server.h (initialize_event_loop): Declare.
9322
93232013-01-18 Yao Qi <yao@codesourcery.com>
9324
9325 * ax.h (struct eval_agent_expr_context): New.
9326 (gdb_eval_agent_expr): Update declaration.
9327 * ax.c (gdb_eval_agent_expr): Remove argument REGCACHE and
9328 TFRAME. Add new argument CTX.
9329 * server.h (struct eval_agent_expr_context): Declare.
9330 (agent_mem_read, agent_tsv_read): Update declaration.
9331 (agent_mem_read_string): Likewise.
9332 * tracepoint.c (eval_tracepoint_agent_expr): Remove.
9333 (add_traceframe_block): Add new argument TPOINT.
9334 Increase TPOINT->traceframe_usage.
9335 (do_action_at_tracepoint): Call gdb_eval_agent_expr instead of
9336 eval_tracepoint_agent_expr.
9337 (condition_true_at_tracepoint): Likewise.
9338 (agent_mem_read): Remove argument TFRAME. Add argument CTX.
9339 (agent_mem_read_string, agent_tsv_read): Likewise.
9340
93412013-01-16 Yao Qi <yao@codesourcery.com>
9342
9343 * linux-low.c (linux_resume_one_lwp): Don't check
9344 'lwp->bp_reinsert != 0'.
9345
93462013-01-07 Joel Brobecker <brobecker@adacore.com>
9347 Pedro Alves <palves@redhat.com>
9348
9349 * lynx-low.c (ptrace_request_to_str): Define a temporary
9350 macro and use it to simplify this function's implementation.
9351
93522013-01-07 Joel Brobecker <brobecker@adacore.com>
9353
9354 * lynx-low.c (lynx_resume): Call perror_with_name if lynx_ptrace
9355 sets errno.
9356
93572013-01-07 Joel Brobecker <brobecker@adacore.com>
9358
9359 * configure.srv (i[34567]86-*-lynxos*): Set srv_xmlfiles.
9360
93612013-01-07 Joel Brobecker <brobecker@adacore.com>
9362
9363 * configure.srv (powerpc-*-lynxos*): Set srv_xmlfiles.
9364
93652013-01-07 Joel Brobecker <brobecker@adacore.com>
9366
9367 * lynx-low.c (lynx_resume): Use the resume_info parameter
9368 to determine the ptid for the lynx_ptrace call, unless
9369 it is equal to minus_one_ptid, in which case we use the
9370 ptid of the current_inferior.
9371 (lynx_wait_1): After having received a thread create/exit
9372 event, resume the inferior's execution using the signaling
9373 thread's ptid, rather than the old ptid.
9374
93752013-01-07 Joel Brobecker <brobecker@adacore.com>
9376
9377 * lynx-low.c (lynx_resume): Delete variable ret.
9378
93792013-01-01 Joel Brobecker <brobecker@adacore.com>
9380
9381 * gdbreplay.c (gdbreplay_version): Update copyright year.
9382 * server.c (gdbserver_version): Likewise.
9383
93842012-12-17 Joel Brobecker <brobecker@adacore.com>
9385
9386 * lynx-low.c (lynx_wait_1): Add debug trace before adding
9387 new thread.
9388
93892012-12-17 Joel Brobecker <brobecker@adacore.com>
9390
9391 * lynx-low.c (ptrace_request_to_str): Add handling for
9392 PTRACE_GETTRACESIG.
9393
93942012-12-17 Joel Brobecker <brobecker@adacore.com>
9395
9396 * lynx-low.c (lynx_attach): Delete variable new_process.
9397
93982012-12-17 Joel Brobecker <brobecker@adacore.com>
9399
9400 * lynx-low.c (lynx_create_inferior): Delete variable
9401 new_process.
9402
94032012-12-17 Joel Brobecker <brobecker@adacore.com>
9404
9405 * lynx-low.c (ptrace_request_to_str): Do not handle
9406 PTRACE_GETTHREADLIST if this macro does not exist.
9407
94082012-12-15 Yao Qi <yao@codesourcery.com>
9409
9410 * Makefile.in (OBS): Add notif.o.
9411 * notif.c, notif.h: New.
9412 * server.c: Include "notif.h".
9413 (struct vstop_notif) <next>: Remove.
9414 <base>: New field.
9415 (queue_stop_reply): Update.
9416 (push_event, send_next_stop_reply): Remove.
9417 (discard_queued_stop_replies): Update.
9418 (notif_stop): New variable.
9419 (handle_v_stopped): Remove.
9420 (handle_v_requests): Don't call handle_v_stopped. Call
9421 handle_ack_notif instead.
9422 (queue_stop_reply_callback): Call notif_event_enque instead
9423 of queue_stop_reply.
9424 (handle_status): Don't call send_next_stop_reply, call
9425 notif_write_event instead.
9426 (kill_inferior_callback): Likewise.
9427 (detach_or_kill_inferior_callback): Likewise.
9428 (main): Call initialize_notif.
9429 (process_serial_event): Call QUEUE_is_empty.
9430 (handle_target_event): Call notif_push instead of push event.
9431 * server.h (push_event): Remove declaration.
9432
94332012-12-10 Tom Tromey <tromey@redhat.com>
9434
9435 * Makefile.in (DEPMODE, DEPDIR, depcomp, COMPILE.pre)
9436 (COMPILE.post, COMPILE, POSTCOMPILE, IPAGENT_COMPILE): New
9437 macros.
9438 (.c.o): Rewrite.
9439 (ax-ipa.o, tracepoint-ipa.o, utils-ipa.o, format-ipa.o)
9440 (common-utils-ipa.o, remote-utils-ipa.o, regcache-ipa.o)
9441 (i386-linux-ipa.o, linux-i386-ipa.o, linux-amd64-ipa.o)
9442 (amd64-linux-ipa.o, ax.o): Rewrite.
9443 (event-loop.o, hostio.o, hostio-errno.o, inferiors.o, mem-break.o)
9444 (proc-service.o, regcache.o, remote-utils.o, server.o, target.o)
9445 (thread-db.o, tracepoint.o, utils.o, gdbreplay.o, dll.o): Remove.
9446 (signals.o, linux-procfs.o, linux-ptrace.o, common-utils.o, vec.o)
9447 (gdb_vecs.o, xml-utils.o, linux-osdata.o, ptid.o, buffer.o)
9448 (format.o, agent.o, vasprintf.o, vsnprintf.o): Rewrite.
9449 (i386-low.o, i387-fp.o, linux-low.o, linux-arm-low.o)
9450 (linux-bfin-low.o, linux-cris-low.o, linux-crisv32-low.o)
9451 (linux-ia64-low.o, linux-m32r-low.o, linux-mips-low.o)
9452 (linux-ppc-low.o, linux-s390-low.o, linux-sh-low.o)
9453 (linux-tic6x-low.o, linux-x86-low.o, linux-xtensa-low.o)
9454 (linux-tile-low.o, lynx-low.o, lynx-ppc-low.o, nto-low.o)
9455 (nto-x86-low.o, linux-low.o, win32-low.o, win32-arm-low.o)
9456 (win32-i386-low.o, spu-low.o, reg-arm.o, arm-with-iwmmxt.o)
9457 (arm-with-vfpv2.o, arm-with-vfpv3.o, arm-with-neon.o, reg-bfin.o)
9458 (reg-cris.o, reg-crisv32.o, i386.o, i386-linux.o, i386-avx.o)
9459 (i386-avx-linux.o, i386-mmx.o, i386-mmx-linux.o, reg-ia64.o)
9460 (reg-m32r.o, reg-m68k.o, reg-cf.o, mips-linux.o, mips-dsp-linux.o)
9461 (mips64-linux.o, mips64-dsp-linux.o, powerpc-32.o, powerpc-32l.o)
9462 (powerpc-altivec32l.o, powerpc-cell32l.o, powerpc-vsx32l.o)
9463 (powerpc-isa205-32l.o, powerpc-isa205-altivec32l.o)
9464 (powerpc-isa205-vsx32l.o, powerpc-e500l.o, powerpc-64l.o)
9465 (powerpc-altivec64l.o, powerpc-cell64l.o, powerpc-vsx64l.o)
9466 (powerpc-isa205-64l.o, powerpc-isa205-altivec64l.o)
9467 (powerpc-isa205-vsx64l.o, s390-linux32.o, s390-linux32v1.o)
9468 (s390-linux32v2.o, s390-linux64.o, s390-linux64v1.o)
9469 (s390-linux64v2.o, s390x-linux64.o, s390x-linux64v1.o)
9470 (s390x-linux64v2.o, tic6x-c64xp-linux.o, tic6x-c64x-linux.o)
9471 (tic6x-c62x-linux.o, reg-sh.o, reg-sparc64.o, reg-spu.o, amd64.o)
9472 (amd64-linux.o, amd64-avx.o, amd64-avx-linux.o, x32.o)
9473 (x32-linux.o, x32-avx.o, x32-avx-linux.o, reg-xtensa.o)
9474 (reg-tilegx.o): Remove.
9475 (all_object_files): New macro.
9476 Include .deps files.
9477 * aclocal.m4, configure: Rebuild.
9478 * acinclude.m4: Include depstand.m4, lead-dot.m4.
9479 * configure.ac: Invoke ZW_CREATE_DEPDIR,
9480 ZW_PROG_COMPILER_DEPENDENCIES. Compute GMAKE condition.
9481
94822012-12-05 Tom Tromey <tromey@redhat.com>
9483
9484 PR gdb/14917:
9485 * server.h (current_insn_ptr, emit_error): Declare 'extern'.
9486
94872012-11-28 Markus Metzger <markus.t.metzger@intel.com>
9488
9489 * configure.ac: Check for linux/perf_event.h.
9490 * config.in: Regenerated.
9491 * configure: Regenerated.
9492
94932012-11-26 Maxime Villard <rustyBSD@gmx.fr>
9494
9495 * hostio.c (handle_readlink): Decrease buffer size
9496 parameter passed to readlink by one byte.
9497
94982012-11-26 Yao Qi <yao@codesourcery.com>
9499
9500 * configure.ac (build_warnings): Append '-Wempty-body'.
9501 * configure: Regenerated.
9502 * linux-low.c (linux_create_inferior): Use braces for empty 'if'
9503 body.
9504
95052012-11-15 Pierre Muller <muller@sourceware.org>
9506
9507 * configure.ac (AC_CHECK_HEADERS): Add wait.h header.
9508 * config.in: Regenerate.
9509 * configure: Regenerate.
9510 * linux-low.c: Use "gdb_stat.h" header instead of <sys/stat.h> header.
9511 Use "gdb_wait.h" header instead of <sys/wait.h> header.
9512 * lynx-low.c: Use "gdb_wait.h" header instead of <sys/wait.h> header.
9513 * remote-utils.c: Use "gdb_stat.h" header instead of <sys/stat.h>
9514 header.
9515 * server.c: Remove HAVE_WAIT_H conditional. Use "gdb_wait.h" header
9516 instead of <sys/wait.h> header.
9517 * spu-low.c: Use "gdb_wait.h" header instead of <sys/wait.h> header.
9518
95192012-11-13 Markus Metzger <markus.t.metzger@intel.com>
9520
9521 * Makefile.in: (INTERNAL_CFLAGS): Add -DGDBSERVER
9522 (various make rules): Remove -DGDBSERVER
9523
95242012-11-09 Yao Qi <yao@codesourcery.com>
9525
9526 * spu-low.c (current_ptid): Move it to ..
9527 * gdbthread.h: ... here. New.
9528 * remote-utils.c (read_ptid): Use macro 'current_ptid'.
9529 * server.c (myresume, process_serial_event): Likewise.
9530 * thread-db.c (thread_db_find_new_threads): Likewise.
9531 * tracepoint.c (run_inferior_command): Likewise.
9532
95332012-10-01 Andrew Burgess <aburgess@broadcom.com>
9534
9535 * server.c (handle_search_memory_1): Include access length in
9536 warning message.
9537
95382012-09-05 Michael Brandt <michael.brandt@axis.com>
9539
9540 * linux-crisv32-low.c: Fix compile errors.
9541
95422012-09-04 Yao Qi <yao@codesourcery.com>
9543
9544 * tracepoint.c (cmd_qtsv): Adjust debug message.
9545 Don't check CUR_TPOINT.
9546
95472012-08-28 Yao Qi <yao@codesourcery.com>
9548
9549 * ax.c, tracepoint.c: Replace ATTR_FORMAT with ATTRIBUTE_PRINTF.
9550 * server.h: Include 'libiberty.h' and 'ansidecl.h'.
9551 (ATTR_NORETURN, ATTR_FORMAT, ATTR_MALLOC): Remove.
9552 Remove declarations of xmalloc, xreallloc, xstrdup and
9553 freeargv.
9554 * Makefile.in (libiberty_h): New.
9555 (server_h): Append dependencies 'libiberty.h' and 'ansidecl.h'.
9556 (linux-bfin-low.o): Append dependency 'libiberty.h'.
9557
95582012-08-23 Yao Qi <yao@codesourcery.com>
9559
9560 * server.h: Remove declaration of 'xsnprintf'.
9561
95622012-08-22 Keith Seitz <keiths@redhat.com>
9563
9564 * server.h: Include build-gnulib-gbserver/config.h.
9565 * gdbreplay.c: Likewise.
9566
95672012-08-08 Doug Evans <dje@google.com>
9568
9569 * Makefile.in (SFILES): Add gdb_vecs.c.
9570 (OBS): Add gdb_vecs.o.
9571 (gdb_vecs_h, host_defs_h): New variables.
9572 (thread-db.o): Add $(gdb_vecs_h) dependency.
9573 (gdb_vecs.o): New rule.
9574 * thread-db.c: #include "gdb_vecs.h".
9575 (thread_db_load_search): Use a vector to iterate over path elements.
9576 Handle text appearing after "$pdir".
9577
9578 * configure.ac: Add check for strstr.
9579 * config.in: Regenerate.
9580 * configure: Regenerate.
9581
95822012-08-02 Ulrich Weigand <ulrich.weigand@linaro.org>
9583
9584 * hostio.c (handle_pread): If pread fails, fall back to attempting
9585 lseek/read.
9586 (handle_pwrite): Likewise for pwrite.
9587
95882012-08-01 Ulrich Weigand <ulrich.weigand@linaro.org>
9589
9590 * linux-arm-low.c (arm_linux_hw_point_initialize): Distinguish
9591 between unsupported TYPE and unimplementable ADDR/LEN combination.
9592 (arm_insert_point): Act on new return value.
9593
95942012-07-31 Pedro Alves <palves@redhat.com>
9595
9596 * server.c (process_point_options): Only skip tokens if we find
9597 one that is unrecognized. Don't treat 'X' specially while
9598 skipping unrecognized tokens.
9599
96002012-07-30 Ulrich Weigand <ulrich.weigand@linaro.org>
9601
9602 * linux-arm-low.c (arm_linux_hw_point_initialize): Do not attempt
9603 to 4-byte-align HW breakpoint addresses for Thumb.
9604
96052012-07-27 Yao Qi <yao@codesourcery.com>
9606
9607 PR remote/14161.
9608
9609 * server.h: Declare gdb_agent_about_to_close.
9610 * target.c (kill_inferior): Include "agent.h".
9611 New. Send command 'kill'.
9612 * target.h (kill_inferior): Removed macro.
9613 * tracepoint.c (gdb_agent_about_to_close): New.
9614 (gdb_agent_helper_thread): Handle command 'close'.
9615 Wait endlessly until the inferior stops.
9616 Install gdb_agent_remove_socket to atexit hook.
9617 (agent_socket_name): New static variable.
9618 (gdb_agent_socket_init): Replace local variable 'name' with
9619 'agent_socket_name'.
9620 (gdb_agent_remove_socket): New.
9621
96222012-07-27 Yao Qi <yao@codesourcery.com>
9623
9624 * server.c (process_point_options): Stop at 'X' when parsing.
9625
96262012-07-19 Michael Eager <eager@eagercon.com>
9627
9628 * i386-low.c (Z_packet_to_hw_type): Add Z_PACKET_HW_BP, translate
9629 to hw_execute.
9630 * linux-x86-low.c (x86_insert_point, x86_remove_point):
9631 Call i386_low_insert_watchpoint, i386_low_remove_watchpoint to add/del
9632 hardware breakpoint.
9633
96342012-07-07 Jan Kratochvil <jan.kratochvil@redhat.com>
9635
9636 * gdbserver/linux-low.c (initialize_low): Call
9637 linux_ptrace_init_warnings.
9638
96392012-07-02 Doug Evans <dje@google.com>
9640
9641 * mem-break.c (gdb_no_commands_at_breakpoint): Fix cast from
9642 pointer to int.
9643
96442012-07-02 Stan Shebs <stan@codesourcery.com>
9645
9646 * Makefile.in (WARN_CFLAGS_NO_FORMAT): Define.
9647 (ax.o): Add it to build rule.
9648 (ax-ipa.o): Ditto.
9649 (OBS): Add format.o.
9650 (IPA_OBS): Add format.o.
9651 * server.c (handle_query): Claim support for breakpoint commands.
9652 (process_point_options): Add command case.
9653 (process_serial_event): Leave running if there are printfs in
9654 effect.
9655 * mem-break.h (any_persistent_commands): Declare.
9656 (add_breakpoint_commands): Declare.
9657 (gdb_no_commands_at_breakpoint): Declare.
9658 (run_breakpoint_commands): Declare.
9659 * mem-break.c (struct point_command_list): New struct.
9660 (struct breakpoint): New field command_list.
9661 (any_persistent_commands): New function.
9662 (add_commands_to_breakpoint): New function.
9663 (add_breakpoint_commands): New function.
9664 (gdb_no_commands_at_breakpoint): New function.
9665 (run_breakpoint_commands): New function.
9666 * linux-low.c (linux_wait_1): Test for and run breakpoint commands
9667 locally.
9668 * ax.c: Include format.h.
9669 (ax_printf): New function.
9670 (gdb_eval_agent_expr): Add printf opcode.
9671
96722012-06-13 Yao Qi <yao@codesourcery.com>
9673
9674 * server.c (start_inferior): Remove duplicated writes to fields
9675 'last_resume_kind' and 'last_status' of 'current_inferior'.
9676
96772012-06-12 Yao Qi <yao@codesourcery.com>
9678 Pedro Alves <palves@redhat.com>
9679
9680 * linux-low.c (linux_set_resume_request): Simplify predicate. Add
9681 comment.
9682 * server.c (handle_v_cont): Extend comment.
9683
96842012-06-11 Yao Qi <yao@codesourcery.com>
9685
9686 * linux-low.c (linux_attach): Add 'static'.
9687
96882012-06-06 Yao Qi <yao@codesourcery.com>
9689
9690 * ax.c (gdb_eval_agent_expr): Print `top' in hex.
9691
96922012-06-01 Jan Kratochvil <jan.kratochvil@redhat.com>
9693
9694 Fix gcc -flto compilation warning.
9695 * server.c (main): Make variable multi_mode and attach volatile.
9696
96972012-05-30 Thiago Jung Bauermann <thiago.bauermann@linaro.org>
9698
9699 * linux-low.c (get_r_debug): Disable code using DT_MIPS_RLD_MAP
9700 if the platform doesn't know about it.
9701
97022012-05-30 Jeff Kenton <jkenton@tilera.com>
9703
9704 * Makefile.in (SFILES): Add linux-tile-low.c.
9705 (linux-tile-low.o, reg-tilegx.o, reg-tilegx.c): New rules.
9706 * configure.srv: Handle tilegx-*-linux*.
9707 * linux-tile-low.c: New file.
9708
97092012-05-28 Jan Kratochvil <jan.kratochvil@redhat.com>
9710
9711 * linux-low.c (linux_qxfer_libraries_svr4): Return -1 if R_DEBUG is -1.
9712
97132012-05-24 Pedro Alves <palves@redhat.com>
9714
9715 PR gdb/7205
9716
9717 Replace TARGET_SIGNAL_ with GDB_SIGNAL_ throughout.
9718
97192012-05-24 Pedro Alves <palves@redhat.com>
9720
9721 PR gdb/7205
9722
9723 Replace target_signal with gdb_signal throughout.
9724
97252012-05-22 Maciej W. Rozycki <macro@codesourcery.com>
9726
9727 * linux-low.c (linux_store_registers): Avoid the copying sequence
9728 when no data has been retrieved by ptrace.
9729
97302012-05-22 Will Deacon <will.deacon@arm.com>
9731
9732 * linux-low (__UCLIBC__ && !(__UCLIBC_HAS_MMU__ || __ARCH_HAS_MMU__)):
9733 Include asm/ptrace.h.
9734 (PT_TEXT_ADDR, PT_DATA_ADDR, PT_TEXT_END_ADDR): Define only if not
9735 already defined.
9736
97372012-05-21 Maciej W. Rozycki <macro@codesourcery.com>
9738
9739 * linux-low.c (linux_store_registers): Don't re-retrieve data
9740 with ptrace that has already been obtained from /proc. Always
9741 copy any data retrieved with ptrace to the buffer supplied.
9742
97432012-05-11 Yao Qi <yao@codesourcery.com>
9744 Pedro Alves <palves@redhat.com>
9745
9746 * linux-low.c (enum stopping_threads_kind): New.
9747 (stopping_threads): Change type to `enum stopping_threads_kind'.
9748 (handle_extended_wait): If stopping and suspending threads, leave
9749 the new_lwp suspended too.
9750 (linux_wait_for_event): Adjust.
9751 (stop_all_lwps): Set `stopping_threads' to
9752 STOPPING_AND_SUSPENDING_THREADS or STOPPING_THREADS depending on
9753 whether we're suspending threads or just stopping them. Assert no
9754 recursion happens.
9755
97562012-04-29 Yao Qi <yao@codesourcery.com>
9757
9758 * server.h: Move some code to ...
9759 * gdbthread.h: ... here. New.
9760 * Makefile.in (inferiors.o, regcache.o): Depends on gdbthread.h
9761 (remote-utils.o, server.o, target.o tracepoint.o): Likewise.
9762 (nto-low.o, win32-low.o): Likewise.
9763 * inferiors.c, linux-low.h, nto-low.c: Include gdbthread.h.
9764 * regcache.c, remote-utils.c, server.c: Likewise.
9765 * target.c, tracepoint.c, win32-low.c: Likewise.
9766
97672012-04-24 Thiago Jung Bauermann <thiago.bauermann@linaro.org>
9768
9769 * linux-low.h (PTRACE_ARG3_TYPE): Move macro from linux-low.c.
9770 (PTRACE_ARG4_TYPE): Likewise.
9771 (PTRACE_XFER_TYPE): Likewise.
9772 * linux-arm-low.c (arm_prepare_to_resume): Cast third argument of
9773 ptrace to PTRACE_ARG3_TYPE.
9774 * linux-low.c (PTRACE_ARG3_TYPE): Move macro to linux-low.h.
9775 (PTRACE_ARG4_TYPE): Likewise.
9776 (PTRACE_XFER_TYPE): Likewise.
9777 (linux_detach_one_lwp): Cast fourth argument of
9778 ptrace to long then PTRACE_ARG4_TYPE.
9779 (regsets_fetch_inferior_registers): Cast third argument of
9780 ptrace to long then PTRACE_ARG3_TYPE.
9781 (regsets_store_inferior_registers): Likewise.
9782
97832012-04-20 Pedro Alves <palves@redhat.com>
9784
9785 * configure: Regenerate.
9786
97872012-04-19 Pedro Alves <palves@redhat.com>
9788
9789 * Makefile.in (GNULIB_BUILDDIR): New.
9790 (LIBGNU, INCGNU, GNULIB_H): Adjust.
9791 (SUBDIRS, CLEANDIRS, REQUIRED_SUBDIRS): New.
9792 (all, install-only, uninstall, clean-info, all-lib, clean): No
9793 longer pass GNULIB_FLAGS_TO_PASS. Use subdir_do.
9794 (maintainer-clean realclean distclean): Use subdir_do.
9795 (subdir_do): New.
9796 (gnulib/import/Makefile): Adjust. Replace gnulib/import with
9797 $(GNULIB_BUILDDIR). Don't pass argument to config.status.
9798 * acinclude.m4: Include acx_configure_dir.m4.
9799 * configure.ac: Remove gl_EARLY, gl_INIT, and AM_INIT_AUTOMAKE
9800 calls. Call AC_PROG_RANLIB. Configure gnulib using
9801 ACX_CONFIGURE_DIR.
9802 (GNULIB): New.
9803 (GNULIB_STDINT_H): Adjust.
9804 (AC_OUTPUT): Don't output gnulib/Makefile anymore.
9805 * gdbreplay.c: Include build-gnulib/config.h.
9806 * server.h: Likewise.
9807 * aclocal.m4: Regenerate.
9808 * config.in: Regenerate.
9809 * configure: Regenerate.
9810
98112012-04-19 Pedro Alves <palves@redhat.com>
9812
9813 * Makefile.in (LIBGNU, INCGNU): Adjust.
9814 (GNULIB_FLAGS_TO_PASS, GNULIB_H): Adjust.
9815 (all, install-only, uninstall, clean-info, all-lib, clean)
9816 (maintainer-clean, Makefile, gnulib/Makefile): Adjust.
9817 * configure.ac: Adjust AC_OUTPUT output.
9818 * aclocal.m4: Regenerate.
9819 * configure: Regenerate.
9820
98212012-04-19 Pedro Alves <palves@redhat.com>
9822
9823 * Makefile.in (generated_files): New.
9824 (server_h): Remove the explicit dependency on config.h, and depend
9825 on $generated_files.
9826
98272012-04-19 Pedro Alves <palves@redhat.com>
9828
9829 * Makefile.in (INCGNU): Add -Ignulib.
9830
98312012-04-19 Pedro Alves <palves@redhat.com>
9832
9833 * Makefile.in (GNULIB_INCLUDE_DIR): Rename to ...
9834 (INCGNU): ... this, and spell out -I here.
9835 (GNULIB_LIB): Rename to ...
9836 (LIBGNU): ... this.
9837 (INCLUDE_CFLAGS, gdbserver$(EXEEXT), $(GNULIB_LIB) rule): Adjust.
9838
98392012-04-19 Pedro Alves <palves@redhat.com>
9840
9841 * config.in: Regenerate.
9842
98432012-04-19 Pedro Alves <palves@redhat.com>
9844
9845 * configure.ac: Remove AC_CHECK_DECLS check for memmem.
9846 * server.h (memmem): Remove declaration.
9847 * config.in: Regenerate.
9848 * configure: Regenerate.
9849
98502012-04-19 Yao Qi <yao@codesourcery.com>
9851
9852 * Makefile.in (SFILES): Add common/vec.c.
9853 (OBS): Add vec.o.
9854 (vec.o): New rule.
9855
98562012-04-19 Yao Qi <yao@codesourcery.com>
9857
9858 * remote-utils.c (prepare_resume_reply): Replace with macro
9859 target_core_of_thread.
9860 * server.c (handle_qxfer_threads_proper): Likewise.
9861 * target.h (traget_core_of_thread): New macro.
9862
98632012-04-18 Pedro Alves <palves@redhat.com>
9864
9865 * aclocal.m4: Regenerate.
9866 * configure: Regenerate.
9867
98682012-04-16 Yao Qi <yao@codesourcery.com>
9869
9870 * tracepoint.c (cmd_qtstart): Download tracepoints even when they are
9871 duplicated on address.
9872
98732012-04-16 Yao Qi <yao@codesourcery.com>
9874
9875 * tracepoint.c (COPY_FIELD_TO_BUF): New macro.
9876 (struct tracepoint_action_ops) <send>: New field.
9877 (m_tracepoint_action_send, r_tracepoint_action_send): New.
9878 (agent_expr_send, x_tracepoint_action_send): New.
9879 (l_tracepoint_action_send): New.
9880 (cmd_qtdp): Download and install tracepoint
9881 according to `use_agent'.
9882 (run_inferior_command): Add one more parameter `len'.
9883 Update callers.
9884 (tracepoint_send_agent): New.
9885 (cmd_qtdp, cmd_qtstart): Call tracepoint_send_agent.
9886
98872012-04-16 Yao Qi <yao@codesourcery.com>
9888
9889 * tracepoint.c (download_tracepoints): Moved to ...
9890 (cmd_qtstart): ... here.
9891
98922012-04-14 Yao Qi <yao@codesourcery.com>
9893
9894 * tracepoint.c: Include inttypes.h.
9895 (struct collect_memory_action): Use sized types.
9896 (struct tracepoint): Likewise.
9897 (cmd_qtdp, stop_tracing): Update print specifiers.
9898 (cmd_qtp, response_tracepoint): Likewise.
9899 (collect_data_at_tracepoint): Likewise.
9900 (collect_data_at_step): Likewise.
9901
99022012-04-14 Yao Qi <yao@codesourcery.com>
9903
9904 Import gnulib module inttypes.
9905 * aclocal.m4, config.in, configure: Regenerated.
9906
99072012-04-14 Yao Qi <yao@codesourcery.com>
9908
9909 * Makefile.in (maintainer-clean, realclean, distclean): Remove
9910 Makefile and config.status at last.
9911
99122012-04-13 Yao Qi <yao@codesourcery.com>
9913
9914 * tracepoint.c: Include stdint.h unconditionally.
9915
99162012-04-13 Thiago Jung Bauermann <thiago.bauermann@linaro.org>
9917
9918 * acinclude.m4 (GDBSERVER_HAVE_THREAD_DB_TYPE): New macro based
9919 on BFD_HAVE_SYS_PROCFS_TYPE.
9920 * configure.ac: Look for lwpid_t and psaddr_t in libthread_db.h.
9921 * configure: Regenerate.
9922 * config.in: Likewise.
9923
99242012-04-13 H.J. Lu <hongjiu.lu@intel.com>
9925
9926 * Makefile.in (clean): Also remove x32.c x32-linux.c
9927 x32-avx.c x32-avx-linux.c.
9928 (x32.o): New target.
9929 (x32.c): Likewise.
9930 (x32-linux.o): Likewise.
9931 (x32-linux.c): Likewise.
9932 (x32-avx.o): Likewise.
9933 (x32-avx.c): Likewise.
9934 (x32-avx-linux.o): Likewise.
9935 (x32-avx-linux.c): Likewise.
9936
9937 * configure.srv (srv_amd64_regobj): Add x32.o x32-avx.o.
9938 (srv_amd64_linux_regobj): Add x32-linux.o x32-avx-linux.o.
9939 (srv_i386_64bit_xmlfiles): Add i386/x32-core.xml.
9940 (srv_amd64_xmlfiles): Add i386/x32.xml i386/x32-avx.xml.
9941 (srv_amd64_linux_xmlfiles): Add i386/x32-linux.xml
9942 i386/x32-avx-linux.xml.
9943
9944 * linux-x86-low.c (init_registers_x32_linux): New prototype.
9945 (init_registers_x32_avx_linux): Likwise.
9946 (x86_linux_update_xmltarget): Call init_registers_x32_linux
9947 or init_registers_x32_avx_linux if linux_is_elf64 is false.
9948
99492012-04-13 Pedro Alves <palves@redhat.com>
9950
9951 * Makefile.in (GNULIB_FLAGS_TO_PASS): New.
9952 (FLAGS_TO_PASS): Don't change or set $top_srcdir, $srcdir and VPATH.
9953 (all, uninstall, clean-info, all-lib, clean, maintainer-clean)
9954 (realclean, distclean): Explicitly pass $GNULIB_FLAGS_TO_PASS to
9955 the sub-make.
9956
99572012-04-12 H.J. Lu <hongjiu.lu@intel.com>
9958
9959 * linux-x86-low.c (compat_x32_clock_t): New.
9960 (compat_x32_siginfo_t): Likewise.
9961 (compat_x32_siginfo_from_siginfo): Likewise.
9962 (siginfo_from_compat_x32_siginfo): Likewise.
9963 (linux_is_elf64): Likewise.
9964 (x86_siginfo_fixup): Call compat_x32_siginfo_from_siginfo
9965 and siginfo_from_compat_x32_siginfo for x32.
9966 (x86_arch_setup): Set linux_is_elf64.
9967
99682012-04-12 H.J. Lu <hongjiu.lu@intel.com>
9969
9970 PR gdb/13969
9971 * linux-low.c (linux_pid_exe_is_elf_64_file): Also return the
9972 e_machine field.
9973 (linux_qxfer_libraries_svr4): Update call to elf_64_file_p.
9974 * linux-low.h (linux_pid_exe_is_elf_64_file): Updated.
9975 * linux-x86-low.c (x86_arch_setup): Check if GDBserver is
9976 compatible with process.
9977
99782012-04-12 Yao Qi <yao@codesourcery.com>
9979
9980 * Makefile.in: Define abs_top_srcdir and abs_srcdir.
9981 (INCLUDE_CFLAGS): Append GNULIB_INCLUDE_DIR.
9982 (install-only, install-info, clean): Handle sub dir gnulib.
9983 (all-lib, am--refresh): New targets.
9984 (memmem.o): Remove target.
9985 * configure.ac: Remove AC_CONFIG_LIBOBJ_DIR.
9986 Invoke gl_EARLY. Invoke AC_CHECK_PROGS for make.
9987 (AC_REPLACE_FUNCS): Remove memmem.
9988 Invoke gl_INIT and AM_INIT_AUTOMAKE.
9989 (AC_OUTPUT): Generate Makefile in gnulib/.
9990 * aclocal.m4, config.in, configure: Regenerated.
9991
99922012-04-10 Maciej W. Rozycki <macro@codesourcery.com>
9993
9994 * linux-low.c (get_r_debug): Handle DT_MIPS_RLD_MAP.
9995
99962012-04-05 Pedro Alves <palves@redhat.com>
9997
9998 -Werror=strict-aliasing
9999
10000 * spu-low.c (parse_spufs_run): Avoid dereferencing type-punned
10001 pointer.
10002
100032012-04-04 Pedro Alves <palves@redhat.com>
10004
10005 * linux-sparc-low.c (sparc_fill_gregset_to_stack)
10006 (sparc_store_gregset_from_stack, sparc_store_gregset)
10007 (sparc_breakpoint_at): Fix formatting.
10008
100092012-03-30 Thiago Jung Bauermann <thiago.bauermann@linaro.org>
10010
10011 * configure.ac: Check whether Elf32_auxv_t and Elf64_auxv_t
10012 are available.
10013 * linux-low.c [HAVE_ELF32_AUXV_T] (Elf32_auxv_t): Add typedef.
10014 [HAVE_ELF64_AUXV_T] (Elf64_auxv_t): Likewise.
10015 * config.in: Regenerate.
10016 * configure: Likewise.
10017
100182012-03-29 Pedro Alves <palves@redhat.com>
10019
10020 * linux-low.c (regsets_store_inferior_registers) [__sparc__]:
10021 Correct ptrace arguments.
10022
100232012-03-28 Pedro Alves <palves@redhat.com>
10024
10025 * linux-ia64-low.c (ia64_regmap): Map IA64_EC_REGNUM to PT_AR_EC.
10026 (IA64_GR0_REGNUM, IA64_FR0_REGNUM)
10027 (IA64_FR1_REGNUM): New defines.
10028 (ia64_fetch_register): New.
10029 (the_low_target): Install it.
10030 * linux-low.h (struct linux_target_ops) <fetch_register>: New
10031 field.
10032 * linux-low.c (linux_fetch_registers): Try the
10033 the_low_target.fetch_register hook first.
10034
10035 * linux-arm-low.c (the_low_target): Adjust.
10036 * linux-bfin-low.c (the_low_target): Adjust.
10037 * linux-cris-low.c (the_low_target): Adjust.
10038 * linux-crisv32-low.c (the_low_target): Adjust.
10039 * linux-m32r-low.c (the_low_target): Adjust.
10040 * linux-m68k-low.c (the_low_target): Adjust.
10041 * linux-mips-low.c (the_low_target): Adjust.
10042 * linux-ppc-low.c (the_low_target): Adjust.
10043 * linux-s390-low.c (the_low_target): Adjust.
10044 * linux-sh-low.c (the_low_target): Adjust.
10045 * linux-sparc-low.c (the_low_target): Adjust.
10046 * linux-tic6x-low.c (the_low_target): Adjust.
10047 * linux-x86-low.c (the_low_target): Adjust.
10048 * linux-xtensa-low.c (the_low_target): Adjust.
10049
100502012-03-26 Pedro Alves <palves@redhat.com>
10051
10052 * server.c (handle_qxfer_libraries): Don't bail early if
10053 the_target->qxfer_libraries_svr4 is not NULL.
10054
100552012-03-26 Pedro Alves <palves@redhat.com>
10056
10057 * linux-low.c (linux_qxfer_libraries_svr4): Fix pasto in comment.
10058
100592012-03-23 Pedro Alves <palves@redhat.com>
10060
10061 * linux-low.c (linux_qxfer_libraries_svr4): Terminate the
10062 "library-list-svr4" element's start tag when the the DSO list is
10063 empty.
10064
100652012-03-23 Pedro Alves <palves@redhat.com>
10066
10067 * linux-low.c (read_one_ptr): Read the inferior's pointer through
10068 a variable whose type size is the same as the inferior's pointer
10069 size.
10070
100712012-03-21 Thomas Schwinge <thomas@codesourcery.com>
10072
10073 * linux-arm-low.c (arm_stopped_by_watchpoint): Use siginfo_t instead of
10074 struct siginfo.
10075 * linux-low.c (siginfo_fixup, linux_xfer_siginfo): Likewise.
10076 * linux-x86-low.c (x86_siginfo_fixup): Likewise.
10077 * linux-low.h: Include <signal.h>.
10078 (struct siginfo): Remove forward declaration.
10079 (struct linux_target_ops) <siginfo_fixup>: Use siginfo_t instead of
10080 struct siginfo.
10081
100822012-03-21 Mike Frysinger <vapier@gentoo.org>
10083
10084 * .gitignore: Ignore more files.
10085
100862012-03-19 Pedro Alves <palves@redhat.com>
10087 Jan Kratochvil <jan.kratochvil@redhat.com>
10088
10089 * server.c (cont_thread, general_thread): Add describing comments.
10090 (start_inferior): Clear `cont_thread'.
10091 (handle_v_cont): Don't set `cont_thread' if resuming all threads
10092 of a process.
10093
100942012-03-15 Yao Qi <yao@codesourcery.com>
10095
10096 * tracepoint.c (install_tracepoint): Move duplicated tracepoint
10097 handling to ...
10098 (cmd_qtdp): ... here.
10099
101002012-03-15 Yao Qi <yao@codesourcery.com>
10101
10102 * tracepoint.c (struct tracepoint_action_ops): New.
10103 (struct tracepoint_action) [!IN_PROCESS_AGENT] <ops>: New field.
10104 (m_tracepoint_action_download): New.
10105 (r_tracepoint_action_download): New.
10106 (x_tracepoint_action_download): New.
10107 (l_tracepoint_action_download): New.
10108 (add_tracepoint_action): Install `action->ops' according type.
10109 (download_tracepoint_1): Move code `download' function pointer
10110 of various tracepoint_action_ops.
10111
101122012-03-13 Jan Kratochvil <jan.kratochvil@redhat.com>
10113
10114 * linux-low.c (linux_attach_lwp_1): New variable buffer. Call
10115 linux_ptrace_attach_warnings.
10116
101172012-03-13 Jan Kratochvil <jan.kratochvil@redhat.com>
10118
10119 * Makefile.in (linux-ptrace.o): New.
10120 * configure.srv (arm*-*-linux*, bfin-*-*linux*, crisv32-*-linux*)
10121 (cris-*-linux*, i[34567]86-*-linux*, ia64-*-linux*, m32r*-*-linux*)
10122 (m68*-*-linux*, m68*-*-uclinux*, mips*-*-linux*, powerpc*-*-linux*)
10123 (s390*-*-linux*, sh*-*-linux*, sparc*-*-linux*, tic6x-*-uclinux)
10124 (x86_64-*-linux*, xtensa*-*-linux*): Add linux-ptrace.o to SRV_TGTOBJ
10125 of these targets.
10126 * linux-low.c (linux_attach_lwp_1): Remove redundent else clause.
10127
101282012-03-08 Yao Qi <yao@codesourcery.com>
10129 Pedro Alves <palves@redhat.com>
10130
10131 Fix PR server/13392.
10132 * linux-x86-low.c (amd64_install_fast_tracepoint_jump_pad): Check
10133 offset of JMP insn.
10134 * tracepoint.c (remove_tracepoint): New.
10135 (cmd_qtdp): Call remove_tracepoint when failed to install.
10136
101372012-03-07 Pedro Alves <palves@redhat.com>
10138
10139 * linux-low.c (get_detach_signal): New.
10140 (linux_detach_one_lwp): Get rid of a pending SIGSTOP with SIGCONT.
10141 Pass on pending signals to PTRACE_DETACH. Check the result of the
10142 ptrace call.
10143 * server.c (program_signals, program_signals_p): New.
10144 (handle_general_set): Handle QProgramSignals.
10145 * server.h (program_signals, program_signals_p): Declare.
10146
101472012-03-05 Pedro Alves <palves@redhat.com>
10148 Jan Kratochvil <jan.kratochvil@redhat.com>
10149
10150 * linux-low.c (get_dynamic): Don't warn when PT_PHDR isn't found.
10151 New comment why.
10152
101532012-03-03 Yao Qi <yao@codesourcery.com>
10154
10155 * tracepoint.c (tracepoint_look_up_symbols): Update call to
10156 agent_look_up_symbols.
10157
101582012-03-03 Yao Qi <yao@codesourcery.com>
10159
10160 * Makefile.in (linux-low.o): Keep dependence on agent.h.
10161 (linux-x86-low.o): Likewise.
10162 * server.h: Remove in_process_agent_loaded.
10163 * tracepoint.c (in_process_agent_loaded): Removed. Moved it
10164 common/agent.c.
10165 Update callers.
10166
101672012-03-03 Yao Qi <yao@codesourcery.com>
10168
10169 * tracepoint.c (gdb_agent_capability): New global.
10170 (in_process_agent_loaded_ust): Renamed to
10171 `in_process_agent_supports_ust'.
10172 Update callers.
10173 (in_process_agent_supports_ust): Call agent_capability_check.
10174 (clear_installed_tracepoints): Assert that agent supports
10175 agent.
10176
101772012-03-03 Yao Qi <yao@codesourcery.com>
10178
10179 * linux-low.c (linux_supports_agent): New.
10180 (linux_target_ops): Initialize field `supports_agent' with
10181 linux_supports_agent.
10182 * target.h (struct target_ops) <supports_agent>: New.
10183 (target_supports_agent): New macro.
10184 * server.c (handle_general_set): Handle packet 'QAgent'.
10185 (handle_query): Send `QAgent+'.
10186 * Makefile.in (server.o): Depends on agent.h.
10187
101882012-03-03 Yao Qi <yao@codesourcery.com>
10189
10190 * Makefile.in (OBS): Add agent.o.
10191 Add new rule for agent.o.
10192 Track dependence of tracepoint.c on agent.h.
10193 * tracepoint.c (run_inferior_command_1):
10194 (run_inferior_command): Call agent_run_command.
10195 (gdb_ust_connect_sync_socket): Deleted. Move it to
10196 common/agent.c.
10197 (resume_thread, stop_thread): Likewise.
10198 (gdb_ust_socket_init): Renamed to ...
10199 (gdb_agent_socket_init): ... New.
10200 (gdb_ust_thread): Renamed to ...
10201 (gdb_agent_helper_thread): ... New.
10202 (gdb_ust_init): Move some code to ...
10203 (gdb_agent_init): ... here. New.
10204 [HAVE_UST]: Call gdb_ust_init.
10205 (initialize_tracepoint_ftlib): Call gdb_agent_init.
10206 * configure.ac: Add `sys/un.h' to AC_CHECK_HEADERS.
10207 * config.in, configure: Regenerated.
10208
102092012-03-02 Pedro Alves <palves@redhat.com>
10210
10211 * inferiors.c (add_pid_to_list, pull_pid_from_list): Delete.
10212 * linux-low.c (struct simple_pid_list): New.
10213 (stopped_pids): New a struct simple_pid_list pointer.
10214 (add_to_pid_list, pull_pid_from_list): New.
10215 (handle_extended_wait): Don't assume the first signal new children
10216 report is SIGSTOP. Adjust call to pull_pid_from_list.
10217 (linux_wait_for_lwp): Adjust.
10218
102192012-03-02 Yao Qi <yao@codesourcery.com>
10220
10221 * tracepoint.c (do_action_at_tracepoint): Write `stop_pc' in
10222 debug log.
10223
102242012-03-02 Yao Qi <yao@codesourcery.com>
10225
10226 * tracepoint.c (collect_ust_data_at_tracepoint): Remove parameters
10227 `stop_pc' and `tpoint'. Update caller.
10228
102292012-03-01 Maciej W. Rozycki <macro@codesourcery.com>
10230
10231 * linux-low.h (linux_target_ops): Add regset_bitmap member.
10232 * linux-low.c (use_linux_regsets): New macro.
10233 [!HAVE_LINUX_REGSETS] (regsets_fetch_inferior_registers): Likewise.
10234 [!HAVE_LINUX_REGSETS] (regsets_store_inferior_registers): Likewise.
10235 (linux_register_in_regsets): New function.
10236 (usr_fetch_inferior_registers): Skip registers covered by
10237 regsets.
10238 (usr_store_inferior_registers): Likewise.
10239 (usr_fetch_inferior_registers): New macro.
10240 (usr_store_inferior_registers): Likewise.
10241 (linux_fetch_registers): Handle mixed regset/non-regset targets.
10242 (linux_store_registers): Likewise.
10243 * linux-mips-low.c (init_registers_mips_dsp_linux): New
10244 prototype.
10245 (init_registers_mips64_dsp_linux): Likewise.
10246 (init_registers_mips_linux): New macro.
10247 (init_registers_mips_dsp_linux): Likewise.
10248 (mips_dsp_num_regs): Likewise.
10249 (DSP_BASE, DSP_CONTROL): New fallback macros.
10250 (mips_base_regs): New macro.
10251 (mips_regmap): Use it. Fix the size.
10252 (mips_dsp_regmap): New variable.
10253 (mips_dsp_regset_bitmap): Likewise.
10254 (mips_arch_setup): New function.
10255 (mips_cannot_fetch_register): Use the_low_target.regmap rather
10256 than mips_regmap.
10257 (mips_cannot_store_register): Likewise.
10258 (the_low_target): Update .arch_setup, .num_regs and .regmap
10259 initializers. Add .regset_bitmap initializer.
10260 * linux-arm-low.c (the_low_target): Add .regset_bitmap
10261 initializer.
10262 * linux-bfin-low.c (the_low_target): Likewise.
10263 * linux-cris-low.c (the_low_target): Likewise.
10264 * linux-crisv32-low.c (the_low_target): Likewise.
10265 * linux-ia64-low.c (the_low_target): Likewise.
10266 * linux-m32r-low.c (the_low_target): Likewise.
10267 * linux-m68k-low.c (the_low_target): Likewise.
10268 * linux-ppc-low.c (the_low_target): Likewise.
10269 * linux-s390-low.c (the_low_target): Likewise.
10270 * linux-sh-low.c (the_low_target): Likewise.
10271 * linux-sparc-low.c (the_low_target): Likewise.
10272 * linux-tic6x-low.c (the_low_target): Likewise.
10273 * linux-x86-low.c (the_low_target): Likewise.
10274 * linux-xtensa-low.c (the_low_target): Likewise.
10275 * configure.srv <mips*-*-linux*>: Add mips-dsp-linux.o and
10276 mips64-dsp-linux.o to srv_regobj. Add mips-dsp-linux.xml,
10277 mips64-dsp-linux.xml, mips-dsp.xml and mips64-dsp.xml to
10278 srv_xmlfiles.
10279 * Makefile.in (mips-dsp-linux.o, mips-dsp-linux.c): New targets.
10280 (mips64-dsp-linux.o, mips64-dsp-linux.c): Likewise.
10281
102822012-02-29 Yao Qi <yao@codesourcery.com>
10283 Pedro Alves <palves@redhat.com>
10284
10285 * linux-low.c: (linux_wait_1): Call unsuspend_all_lwps when
10286 `step_over_finished' is true.
10287
102882012-02-27 Pedro Alves <palves@redhat.com>
10289
10290 * linux-low.c (pid_is_stopped): Delete, moved to common/.
10291 (linux_attach_lwp_1): Adjust to use linux_proc_pid_is_stopped.
10292
102932012-02-27 Pedro Alves <palves@redhat.com>
10294
10295 PR server/9684
10296 * linux-low.c (pid_is_stopped): New.
10297 (linux_attach_lwp_1): Handle attaching to 'T (stopped)' processes.
10298
102992012-02-25 Luis Machado <lgustavo@codesourcery.com>
10300
10301 * mem-break.c (clear_gdb_breakpoint_conditions): Fix de-allocation
10302 of conditions.
10303
103042012-02-24 Maciej W. Rozycki <macro@codesourcery.com>
10305
10306 * linux-mips-low.c (mips_regmap): Correct the index of $f9.
10307
103082012-02-24 Luis Machado <lgustavo@codesourcery>
10309
10310 * server.c (handle_query): Advertise support for target-side
10311 breakpoint condition evaluation.
10312 (process_point_options): New function.
10313 (process_serial_event): When inserting a breakpoint, check for
10314 a target-side condition that should be evaluated.
10315
10316 * mem-break.c: Include regcache.h and ax.h.
10317 (point_cond_list_t): New data structure.
10318 (breakpoint) <cond_list>: New field.
10319 (find_gdb_breakpoint_at): Make non-static.
10320 (delete_gdb_breakpoint_at): Clear any target-side
10321 conditions.
10322 (clear_gdb_breakpoint_conditions): New function.
10323 (add_condition_to_breakpoint): Likewise.
10324 (add_breakpoint_condition): Likewise.
10325 (gdb_condition_true_at_breakpoint): Likewise.
10326 (gdb_breakpoint_here): Return result directly instead
10327 of going through a local variable.
10328
10329 * mem-break.h (find_gdb_breakpoint_at): New prototype.
10330 (clear_gdb_breakpoint_conditions): Likewise.
10331 (add_breakpoint_condition): Likewise.
10332 (gdb_condition_true_at_breakpoint): Likewise.
10333
10334 * linux-low.c (linux_wait_1): Evaluate target-side breakpoint condition.
10335 (need_step_over_p): Take target-side breakpoint condition into
10336 consideration.
10337
103382012-02-24 Luis Machado <lgustavo@codesourcery>
10339
10340 * server.h: Include tracepoint.h.
10341 (agent_mem_read, agent_get_trace_state_variable_value,
10342 agent_set_trace_state_variable_value,
10343 agent_tsv_read, agent_mem_read_string, get_get_tsv_func_addr,
10344 get_set_tsv_func_addr): New prototypes.
10345
10346 * ax.h: New include file.
10347 * ax.c: New source file.
10348
10349 * tracepoint.c: Include ax.h.
10350 (gdb_agent_op, gdb_agent_op_names, gdb_agent_op_sizes,
10351 agent_expr, eval_result_type): Move to ax.h.
10352 (parse_agent_expr): Rename to ...
10353 (gdb_parse_agent_expr): ... this, make it non-static and move
10354 to ax.h.
10355 (unparse_agent_expr) Rename to ...
10356 (gdb_unparse_agent_expr): ... this, make it non-static and move
10357 to ax.h.
10358 (eval_agent_expr): Rename to ...
10359 (eval_tracepoint_agent_expr): ... this.
10360 (agent_mem_read, agent_mem_read_string, agent_tsv_read): Remove
10361 forward declarations.
10362 (add_tracepoint_action): Call gdb_parse_agent_expr (...).
10363 (agent_get_trace_state_variable_value): New function.
10364 (agent_set_trace_state_variable_value): New function.
10365 (cmd_qtdp): Call gdb_parse_agent_expr (...).
10366 (response_tracepoint): Call gdb_unparse_agent_expr (...).
10367 (do_action_at_tracepoint): Call eval_tracepoint_agent_expr (...).
10368 (condition_true_at_tracepoint): Likewise.
10369 (parse_agent_expr): Rename to ...
10370 (gdb_parse_agent_expr): ... this and move to ax.c.
10371 (unparse_agent_expr): Rename to ...
10372 (gdb_unparse_agent_expr): ... this and move to ax.c.
10373 (gdb_agent_op_name): Move to ax.c.
10374 (eval_agent_expr): Rename to ...
10375 (gdb_eval_agent_expr): ... this, use regcache passed as parameter
10376 and move to ax.c.
10377 (eval_tracepoint_agent_expr): New function.
10378 (agent_mem_read, agent_mem_read_string, agent_tsv_read): Make
10379 non-static.
10380 (current_insn_ptr, emit_error, struct bytecode_address): Move to
10381 ax.c.
10382 (emit_prologue, emit_epilogue, emit_add, emit_sub, emit_mul, emit_lsh,
10383 emit_rsh_signed, emit_rsh_unsigned, emit_ext, emit_log_not,
10384 emit_bit_and, emit_bit_or, emit_bit_xor, emit_bit_not, emit_equal,
10385 emit_less_signed, emit_less_unsigned, emit_ref, emit_if_goto,
10386 emit_goto, write_goto_address, emit_const, emit_reg, emit_pop,
10387 emit_stack, emit_zero_ext, emit_swap, emit_stack_adjust,
10388 emit_int_call_1, emit_void_call_2, emit_eq_goto, emit_ne_goto,
10389 emit_lt_goto, emit_ge_goto, emit_gt_goto, emit_le_goto): Move to ax.c.
10390 (get_get_tsv_func_addr, get_set_tsv_func_addr): New functions.
10391 (compile_bytecodes): Remove forward declaration.
10392 (is_goto_target): Move to ax.c.
10393 (compile_bytecodes): Move to ax.c and call
10394 agent_get_trace_state_variable_value (...) and
10395 agent_set_trace_state_variable_value (...).
10396
10397 * Makefile.in: Update ax.c and IPA dependencies.
10398
103992012-02-24 Pedro Alves <palves@redhat.com>
10400
10401 * tracepoint.c (cmd_bigqtbuffer): Rename as ...
10402 (cmd_bigqtbuffer_circular): ... this. Only handle
10403 'QTBuffer:circular:'.
10404 (handle_tracepoint_general_set): Adjust.
10405
104062012-02-16 Yao Qi <yao@codesourcery.com>
10407
10408 * inferiors.c: Move code to ...
10409 * dll.c: .... here. New.
10410 * server.h: Declare clear_dlls.
10411 * Makefile.in (SFILES): Add dll.c.
10412 (OBS): Add dll.o
10413 (dll.o): New rule.
10414
104152012-02-11 Yao Qi <yao@codesourcery.com>
10416
10417 * server.c: (handle_monitor_command): Add a new parameter
10418 `own_buf'.
10419 (handle_query): Update caller.
10420
104212012-02-09 Joel Brobecker <brobecker@adacore.com>
10422
10423 * configure.ac: Add readlink to AC_CHECK_FUNCS list.
10424 * configure, config.in: Regenerate.
10425 * hostio.c: Provide an alternate implementation if HAVE_READLINK
10426 is not defined.
10427
104282012-02-02 Pedro Alves <palves@redhat.com>
10429
10430 Try SIGKILL first, then PTRACE_KILL.
10431 * linux-low.c (linux_kill_one_lwp): New.
10432 (linux_kill_one_lwp): Rename to ...
10433 (kill_one_lwp_callback): ... this. Use the new
10434 linux_kill_one_lwp.
10435
104362012-02-02 Pedro Alves <palves@redhat.com>
10437
10438 * tracepoint.c (cmd_qtminftpilen): Return 0 if there's no current
10439 inferior.
10440
104412012-01-27 Pedro Alves <palves@redhat.com>
10442
10443 * linux-low.c (linux_child_pid_to_exec_file): Delete.
10444 (elf_64_file_p): Make static.
10445 (linux_pid_exe_is_elf_64_file): New.
10446 * linux-low.h (linux_child_pid_to_exec_file, elf_64_file_p):
10447 Delete declarations.
10448 (linux_pid_exe_is_elf_64_file): Declare.
10449 * linux-x86-low.c (x86_arch_setup): Use
10450 linux_pid_exe_is_elf_64_file.
10451
104522012-01-25 Jan Kratochvil <jan.kratochvil@redhat.com>
10453
10454 * linux-low.c (linux_wait_for_event_1): Rename to ...
10455 (linux_wait_for_event): ... here and merge it with former
10456 linux_wait_for_event - new variable wait_ptid, use it.
10457 (linux_wait_for_event): Remove - merge it to linux_wait_for_event_1.
10458
104592012-01-23 Pedro Alves <palves@redhat.com>
10460
10461 * server.c (main): Avoid yet another case of infinite loop while
10462 detaching/killing after a longjmp.
10463
104642012-01-20 Jan Kratochvil <jan.kratochvil@redhat.com>
10465
10466 Code cleanup.
10467 * linux-low.c (linux_wait_for_event_1): Use ptid_is_pid.
10468
104692012-01-20 Ulrich Weigand <ulrich.weigand@linaro.org>
10470
10471 * hostio.c (handle_readlink): New function.
10472 (handle_vFile): Call it to handle "vFile:readlink" packets.
10473
104742012-01-20 Pedro Alves <palves@redhat.com>
10475 Ulrich Weigand <ulrich.weigand@linaro.org>
10476
10477 * server.c (handle_v_requests): Only support vAttach and vRun to
10478 start multiple processes when in extended protocol mode.
10479
104802012-01-17 Pedro Alves <palves@redhat.com>
10481
10482 * tracepoint.c (initialize_tracepoint): Use mmap instead of
10483 memalign plus mprotect to allocate the scratch buffer.
10484
104852012-01-13 Pedro Alves <palves@redhat.com>
10486
10487 * server.c (attach_inferior): Clear `cont_thread'.
10488
104892012-01-13 Pedro Alves <palves@redhat.com>
10490
10491 * server.c (main): Avoid infinite loop while detaching/killing
10492 after a longjmp.
10493
104942012-01-09 Doug Evans <dje@google.com>
10495
10496 * server.c (start_inferior): Set last_ptid in --wrapper case.
10497
104982012-01-06 Yao Qi <yao@codesourcery.com>
10499
10500 * tracepoint.c [IN_PROCESS_AGENT] (debug_threads): Macro
10501 defined.
10502 [IN_PROCESS_AGENT] (debug_agent): New global variable.
10503
105042012-01-04 Yao Qi <yao@codesourcery.com>
10505
10506 * tracepoint.c (cmd_qtdp): Print debug message
10507 for static tracepoint.
10508
105092012-01-04 Yao Qi <yao@codesourcery.com>
10510
10511 * tracepoint.c (trace_vdebug): Differentiate debug message
10512 between gdbserver and IPA.
10513
105142012-01-03 Yao Qi <yao@codesourcery.com>
10515
10516 * tracepoint.c (tracepoint_was_hit): Don't collect for
10517 static tracepoint.
10518
105192012-01-02 Joel Brobecker <brobecker@adacore.com>
10520
10521 * terminal.h: Reformat copyright header.
10522
105232012-01-02 Joel Brobecker <brobecker@adacore.com>
10524
10525 * server.c (gdbserver_version): Update copyright year.
10526 * gdbreplay.c (gdbreplay_version): Likewise.
10527
105282011-12-18 Jan Kratochvil <jan.kratochvil@redhat.com>
10529
10530 * linux-low.c (linux_create_inferior): Put empty if clause for write.
10531
10532 Revert:
10533 2011-12-18 Hui Zhu <teawater@gmail.com>
10534 * linux-low.c (linux_create_inferior): Save return value to ret.
10535
105362011-12-18 Hui Zhu <teawater@gmail.com>
10537
10538 * linux-low.c (linux_create_inferior): Save return value to ret.
10539
105402011-12-16 Doug Evans <dje@google.com>
10541
10542 * linux-low.c (linux_create_inferior): If stdio connection,
10543 redirect stdin from /dev/null, stdout to stderr.
10544 * remote-utils.c (remote_is_stdio): New static global.
10545 (remote_connection_is_stdio): New function.
10546 (remote_prepare): Handle stdio connection.
10547 (remote_open): Ditto.
10548 (remote_close): Don't close stdin for stdio connections.
10549 (read_prim,write_prim): New functions. Replace all calls to
10550 read/write to these.
10551 * server.c (main): Watch for "-" argument. Move call to
10552 remote_prepare before start_inferior.
10553 * server.h (STDIO_CONNECTION_NAME): New macro.
10554 (remote_connection_is_stdio): Declare.
10555
10556 * remote-utils.c (prepare_resume_reply): Remove extraneous \n
10557 in debugging output.
10558
105592011-12-15 Yao Qi <yao@codesourcery.com>
10560
10561 * tracepoint.c: Include sys/syscall.h.
10562 (gdb_ust_thread): Remove preprocessor conditional.
10563
105642011-12-14 Pedro Alves <pedro@codesourcery.com>
10565
10566 * linux-low.c (linux_detach_one_lwp): Call
10567 the_low_target.prepare_to_resume before detaching.
10568
105692011-12-14 Yao Qi <yao@codesourcery.com>
10570
10571 * tracepoint.c (gdb_ust_thread): Don't ignore return value
10572 of write.
10573
105742011-12-14 Yao Qi <yao@codesourcery.com>
10575
10576 * i386-low.c (i386_low_stopped_data_address): Initialize local
10577 variable `control'.
10578
105792011-12-13 Pedro Alves <pedro@codesourcery.com>
10580
10581 PR remote/13492
10582
10583 * i386-low.c (i386_low_stopped_data_address): Avoid fetching
10584 DR_CONTROL unless necessary. Extend comments.
10585 * linux-x86-low.c (x86_linux_prepare_to_resume): Don't write to
10586 DR0-3 if not used. If any watchpoint was set, clear DR_STATUS.
10587
105882011-12-13 Yao Qi <yao@codesourcery.com>
10589
10590 * tracepoint.c (trace_buffer_alloc): Replace magic numbers with
10591 macros.
10592 (upload_fast_traceframes, upload_fast_traceframes): Likewise.
10593
105942011-12-08 Jan Kratochvil <jan.kratochvil@redhat.com>
10595
10596 * linux-low.c (linux_kill): Skip PTRACE_KILL if LWP does not exist.
10597 Print new debug message for such case.
10598
105992011-12-06 Jan Kratochvil <jan.kratochvil@redhat.com>
10600
10601 Fix overlapping memcpy.
10602 * mem-break.c (set_raw_breakpoint_at): New variable buf. Use it for
10603 the read_inferior_memory transfer.
10604 (delete_fast_tracepoint_jump): New variable buf. Use it for the
10605 write_inferior_memory transfer.
10606 (set_fast_tracepoint_jump): New variable buf. Use it for the
10607 read_inferior_memory and write_inferior_memory transfers.
10608 (uninsert_fast_tracepoint_jumps_at, reinsert_fast_tracepoint_jumps_at)
10609 (delete_raw_breakpoint, uninsert_raw_breakpoint): New variable buf.
10610 Use it for the write_inferior_memory transfer.
10611 (check_mem_read, check_mem_write): New gdb_asserts for overlapping
10612 buffers.
10613
106142011-12-06 Maciej W. Rozycki <macro@codesourcery.com>
10615
10616 * linux-low.c (fetch_register, store_register): Make code
10617 consistent, fix formatting.
10618
106192011-12-06 Maciej W. Rozycki <macro@codesourcery.com>
10620
10621 * linux-low.c (usr_store_inferior_registers): Factor out code
10622 to handle individual registers into...
10623 (store_register): ... this new function.
10624
106252011-12-06 Ulrich Weigand <uweigand@de.ibm.com>
10626
10627 * Makefile.in (s390-linux32v1.o, s390-linux32v1.c): New rules.
10628 (s390-linux32v2.o, s390-linux32v2.c): Likewise.
10629 (s390-linux64v1.o, s390-linux64v1.c): Likewise.
10630 (s390-linux64v2.o, s390-linux64v2.c): Likewise.
10631 (s390x-linux64v1.o, s390x-linux64v1.c): Likewise.
10632 (s390x-linux64v2.o, s390x-linux64v2.c): Likewise.
10633 * configure.srv [s390*-*-linux*] (srv_regobj): Add new objects.
10634 (srv_xmlfiles): Add new XML files.
10635
10636 * linux-s390-low.c: Include "elf/common.h", <sys/ptrace.h>,
10637 and <sys/uio.h>.
10638 (PTRACE_GETREGSET, PTRACE_SETREGSET): Define if undefined.
10639 (init_registers_s390_linux32v1): Add prototype.
10640 (init_registers_s390_linux32v2): Likewise.
10641 (init_registers_s390_linux64v1): Likewise.
10642 (init_registers_s390_linux64v2): Likewise.
10643 (init_registers_s390x_linux64v1): Likewise.
10644 (init_registers_s390x_linux64v2): Likewise.
10645 (s390_num_regs): Increment to 52.
10646 (s390_regmap): Add orig_r2 register.
10647 (s390_num_regs_3264): Increment to 68.
10648 (s390_regmap_3264): Add orig_r2 register.
10649 (s390_collect_ptrace_register): Handle orig_r2 register.
10650 (s390_supply_ptrace_register): Likewise.
10651 (s390_fill_last_break): New function.
10652 (s390_store_last_break): Likewise.
10653 (s390_fill_system_call): New function.
10654 (s390_store_system_call): Likewise.
10655 (target_regsets): Handle NT_S390_LAST_BREAK and NT_S390_SYSTEM_CALL
10656 register sets.
10657 (s390_check_regset): New function.
10658 (s390_arch_setup): Check for presence of NT_S390_LAST_BREAK and
10659 NT_S390_SYSTEM_CALL regsets and use appropriate description.
10660 Update target_regsets for available register sets.
10661
106622011-12-02 Paul Pluzhnikov <ppluzhnikov@google.com>
10663 Jan Kratochvil <jan.kratochvil@redhat.com>
10664
10665 * linux-low.c (get_phdr_phnum_from_proc_auxv, get_dynamic, get_r_debug)
10666 (read_one_ptr, struct link_map_offsets, linux_qxfer_libraries_svr4):
10667 New.
10668 (struct linux_target_ops): Install linux_qxfer_libraries_svr4.
10669 * linux-low.h (struct process_info_private): New member r_debug.
10670 * server.c (handle_qxfer_libraries): Call
10671 the_target->qxfer_libraries_svr4.
10672 (handle_qxfer_libraries_svr4): New function.
10673 (qxfer_packets): New entry "libraries-svr4".
10674 (handle_query): Check QXFER_LIBRARIES_SVR4 and report libraries-svr4.
10675 * target.h (struct target_ops): New member qxfer_libraries_svr4.
10676 * remote.c (remote_xfer_partial): Call add_packet_config_cmd for
10677 PACKET_qXfer_libraries_svr4.
10678
106792011-11-30 Ulrich Weigand <uweigand@de.ibm.com>
10680
10681 * linux-s390-low.c (s390_collect_ptrace_register): Fully convert
10682 PSW address/mask between 8-byte and 16-byte formats.
10683 (s390_supply_ptrace_register): Likewise.
10684 (s390_get_pc, s390_set_pc): 4-byte PSW address always includes
10685 basic addressing mode bit.
10686
106872011-11-24 Stan Shebs <stan@codesourcery.com>
10688
10689 * tracepoint.c (cmd_qtstatus): Use plongest instead of %llx.
10690
106912011-11-17 Stan Shebs <stan@codesourcery.com>
10692
10693 * tracepoint.c (struct tracepoint): New field traceframe_usage.
10694 (tracing_start_time): New global.
10695 (tracing_stop_time): New global.
10696 (tracing_user_name): New global.
10697 (tracing_notes): New global.
10698 (tracing_stop_note): New global.
10699 (cmd_qtstart): Set traceframe_usage, start_time.
10700 (stop_tracing): Set stop_time.
10701 (cmd_qtstatus): Report additional status.
10702 (cmd_qtp): New function.
10703 (handle_tracepoint_query): Call it.
10704 (cmd_qtnotes): New function.
10705 (handle_tracepoint_general_set): Call it.
10706 (get_timestamp): Rename from tsv_get_timestamp.
10707
107082011-11-14 Stan Shebs <stan@codesourcery.com>
10709 Kwok Cheung Yeung <kcy@codesourcery.com>
10710
10711 * linux-x86-low.c (small_jump_insn): New.
10712 (i386_install_fast_tracepoint_jump_pad): Add arguments for
10713 trampoline and error message, build a trampoline and issue a small
10714 jump instruction to it.
10715 (x86_install_fast_tracepoint_jump_pad): Add arguments for
10716 trampoline and error message.
10717 (x86_get_min_fast_tracepoint_insn_len): New.
10718 (the_low_target): Add call to x86_get_min_fast_tracepoint_insn_len.
10719 * linux-low.h (struct linux_target_ops): Add arguments to
10720 install_fast_tracepoint_jump_pad operation, add new operation.
10721 * linux-low.c (linux_install_fast_tracepoint_jump_pad): Add
10722 arguments.
10723 (linux_get_min_fast_tracepoint_insn_len): New function.
10724 (linux_target_op): Add new operation.
10725 * tracepoint.c (gdb_trampoline_buffer): New IPA variable.
10726 (gdb_trampoline_buffer_end): Ditto.
10727 (gdb_trampoline_buffer_error): Ditto.
10728 (struct ipa_sym_addresses): Add fields for new IPA variables.
10729 (symbol_list): Add entries for new IPA variables.
10730 (struct tracepoint): Add fields to hold the address range of the
10731 trampoline used by the tracepoint.
10732 (trampoline_buffer_head): New static variable.
10733 (trampoline_buffer_tail): Ditto.
10734 (claim_trampoline_space): New function.
10735 (have_fast_tracepoint_trampoline_buffer): New function.
10736 (clone_fast_tracepoint): Fill in trampoline fields of tracepoint
10737 structure.
10738 (install_fast_tracepoint): Ditto, also add error buffer argument.
10739 (cmd_qtminftpilen): New function.
10740 (handle_tracepoint_query): Add response to qTMinFTPILen packet.
10741 (fast_tracepoint_from_trampoline_address): New function.
10742 (fast_tracepoint_collecting): Handle trampoline as part of jump
10743 pad space.
10744 (set_trampoline_buffer_space): New function.
10745 (initialize_tracepoint): Initialize new IPA variables.
10746 * target.h (struct target_ops): Add arguments to
10747 install_fast_tracepoint_jump_pad operation, add new
10748 get_min_fast_tracepoint_insn_len operation.
10749 (target_get_min_fast_tracepoint_insn_len): New.
10750 (install_fast_tracepoint_jump_pad): Add arguments.
10751 * server.h (IPA_BUFSIZ): Define.
10752 * linux-i386-ipa.c: Include extra header files.
10753 (initialize_fast_tracepoint_trampoline_buffer): New function.
10754 (initialize_low_tracepoint): Call it.
10755 * server.h (set_trampoline_buffer_space): Declare.
10756 (claim_trampoline_space): Ditto.
10757 (have_fast_tracepoint_trampoline_buffer): Ditto.
10758
107592011-11-14 Yao Qi <yao@codesourcery.com>
10760
10761 * server.c (handle_query): Handle InstallInTrace for qSupported.
10762 * tracepoint.c (add_tracepoint): Sort list.
10763 (install_tracepoint, download_tracepoint): New.
10764 (cmd_qtdp): Call them to install and download tracepoints.
10765 (sort_tracepoints): Removed.
10766 (cmd_qtstart): Update.
10767
107682011-11-14 Yao Qi <yao@codesourcery.com>
10769
10770 * mem-break.c (inc_ref_fast_tracepoint_jump): New.
10771 * mem-break.h: Declare.
10772 * tracepoint.c (cmd_qtstart): Move some code to ...
10773 (clone_fast_tracepoint, install_fast_tracepoint): ... here.
10774 New.
10775 (download_tracepoints): Move some code to ...
10776 (download_tracepoint_1): ... here. New.
10777
107782011-11-08 Yao Qi <yao@codesourcery.com>
10779
10780 * remote-utils.c (relocate_instruction): A comment fix.
10781
107822011-11-07 Joel Brobecker <brobecker@adacore.com>
10783
10784 * win32-i386-low.c (dr_status_mirror, dr_control_mirror): Delete.
10785 (i386_dr_low_get_control, i386_dr_low_get_status): Use
10786 dr_status_mirror and dr_control_mirror from debug_reg_state.
10787 (i386_dr_low_get_status): Use debug_reg_state.dr_status_mirror
10788 (i386_initial_stuff): Remove use of deleted globals.
10789 (i386_get_thread_context, i386_set_thread_context,
10790 i386_thread_added): Use dr_status_mirror and dr_control_mirror
10791 from debug_reg_state.
10792
107932011-11-05 Yao Qi <yao@codesourcery.com>
10794
10795 * tracepoint.c (gdb_collect): Loop over tracepoints of same
10796 address as TPOINT's.
10797
107982011-11-02 Stan Shebs <stan@codesourcery.com>
10799
10800 * tracepoint.c (agent_mem_read_string): New function.
10801 (eval_agent_expr): Call it for tracenz.
10802 * server.c (handle_query): Report support for tracenz.
10803
108042011-11-02 Yao Qi <yao@codesourcery.com>
10805
10806 * tracepoint.c (cmd_qtstart): Remove unused local variables.
10807
108082011-11-02 Yao Qi <yao@codesourcery.com>
10809
10810 * target.h: Fix a typo in comment.
10811
108122011-10-31 Pedro Alves <pedro@codesourcery.com>
10813
10814 * mem-break.c (check_mem_write): Add `myaddr' parameter. Don't
10815 clobber the breakpoints' shadows with fast tracepoint jumps.
10816 * mem-break.h (check_mem_write): Add `myaddr' parameter.
10817 * target.c (write_inferior_memory): Also pass MYADDR down to
10818 check_mem_write.
10819
108202011-10-07 Ulrich Weigand <ulrich.weigand@linaro.org>
10821
10822 * configure.ac: Check support for personality routine.
10823 * configure: Regenerate.
10824 * config.in: Likewise.
10825 * linux-low.c: Include <sys/personality.h>.
10826 Define ADDR_NO_RANDOMIZE if necessary.
10827 (linux_create_inferior): Disable address space randomization when
10828 forking inferior, if requested.
10829 (linux_supports_disable_randomization): New function.
10830 (linux_target_ops): Install it.
10831 * server.h (disable_randomization): Declare.
10832 * server.c (disable_randomization): New global variable.
10833 (handle_general_set): Handle QDisableRandomization.
10834 (handle_query): Likewise for qSupported.
10835 (main): Support --disable-randomization and --no-disable-randomization
10836 command line arguments.
10837 * target.h (struct target_ops): Add supports_disable_randomization.
10838 (target_supports_disable_randomization): New macro.
10839
108402011-09-29 Mike Frysinger <vapier@gentoo.org>
10841
10842 * linux-low.c (target_loadseg): Add defined PTRACE_GETFDPIC to the
10843 ifdef check.
10844 [PT_GETDSBT] (target_loadmap): Wrap in a defined PT_GETDSBT check.
10845 [!PT_GETDSBT] (target_loadmap): New definition.
10846 (LINUX_LOADMAP, LINUX_LOADMAP_EXEC, LINUX_LOADMAP_INTERP): Define.
10847 (linux_read_loadmap): Change PTRACE_GETDSBT_EXEC to
10848 LINUX_LOADMAP_EXEC, PTRACE_GETDSBT_INTERP to LINUX_LOADMAP_INTERP,
10849 and PT_GETDSBT to LINUX_LOADMAP.
10850 [!PT_GETDSBT] (linux_read_loadmap): Define to NULL.
10851 (linux_target_ops): Delete unnecessary ifdef PT_GETDSBT check.
10852
108532011-09-21 Ulrich Weigand <ulrich.weigand@linaro.org>
10854
10855 * linux-arm-low.c (struct arm_linux_hwbp_cap): Remove.
10856 (arm_linux_hwbp_cap): New static variable.
10857 (arm_linux_get_hwbp_cap): Replace by ...
10858 (arm_linux_init_hwbp_cap): ... this new function.
10859 (arm_linux_get_hw_breakpoint_count): Use arm_linux_hwbp_cap.
10860 (arm_linux_get_hw_watchpoint_count): Likewise.
10861 (arm_linux_get_hw_watchpoint_max_length): Likewise.
10862 (arm_arch_setup): Call arm_linux_init_hwbp_cap.
10863 (arm_prepare_to_resume): Use perror_with_name instead of error.
10864
108652011-09-21 Ulrich Weigand <ulrich.weigand@linaro.org>
10866
10867 * linux-arm-low.c: Include <signal.h>.
10868 (PTRACE_GETHBPREGS, PTRACE_SETHBPREGS): Define if necessary.
10869 (struct arm_linux_hwbp_cap): New data type.
10870 (arm_hwbp_type, arm_hwbp_control_t): New typedefs.
10871 (struct arm_linux_hw_breakpoint): New data type.
10872 (MAX_BPTS, MAX_WPTS): Define.
10873 (struct arch_process_info, struct arch_lwp_info): New data types.
10874 (arm_linux_get_hwbp_cap): New function.
10875 (arm_linux_get_hw_breakpoint_count): Likewise.
10876 (arm_linux_get_hw_watchpoint_count): Likewise.
10877 (arm_linux_get_hw_watchpoint_max_length): Likewise.
10878 (arm_hwbp_control_initialize): Likewise.
10879 (arm_hwbp_control_is_enabled): Likewise.
10880 (arm_hwbp_control_is_initialized): Likewise.
10881 (arm_hwbp_control_disable): Likewise.
10882 (arm_linux_hw_breakpoint_equal): Likewise.
10883 (arm_linux_hw_point_initialize): Likewise.
10884 (struct update_registers_data): New data structure.
10885 (update_registers_callback: New function.
10886 (arm_insert_point): Likewise.
10887 (arm_remove_point): Likewise.
10888 (arm_stopped_by_watchpoint): Likewise.
10889 (arm_stopped_data_address): Likewise.
10890 (arm_new_process): Likewise.
10891 (arm_new_thread): Likewise.
10892 (arm_prepare_to_resume): Likewise.
10893 (the_low_target): Register arm_insert_point, arm_remove_point,
10894 arm_stopped_by_watchpoint, arm_stopped_data_address, arm_new_process,
10895 arm_new_thread, and arm_prepare_to_resume.
10896
108972011-09-15 Stan Shebs <stan@codesourcery.com>
10898
10899 * server.h (struct emit_ops): Add compare-goto fields.
10900 * tracepoint.c (gdb_agent_op_sizes): New table.
10901 (emit_eq_goto): New function.
10902 (emit_ne_goto): New function.
10903 (emit_lt_goto): New function.
10904 (emit_le_goto): New function.
10905 (emit_gt_goto): New function.
10906 (emit_ge_goto): New function.
10907 (is_goto_target): New function.
10908 (compile_bytecodes): Recognize special cases of compare-goto
10909 combinations and call specialized emitters for them.
10910 * linux-x86-low.c (amd64_emit_eq_goto): New function.
10911 (amd64_emit_ne_goto): New function.
10912 (amd64_emit_lt_goto): New function.
10913 (amd64_emit_le_goto): New function.
10914 (amd64_emit_gt_goto): New function.
10915 (amd64_emit_ge_goto): New function.
10916 (amd64_emit_ops): Add the new functions.
10917 (i386_emit_eq_goto): New function.
10918 (i386_emit_ne_goto): New function.
10919 (i386_emit_lt_goto): New function.
10920 (i386_emit_le_goto): New function.
10921 (i386_emit_gt_goto): New function.
10922 (i386_emit_ge_goto): New function.
10923 (i386_emit_ops): Add the new functions.
10924
109252011-09-08 Stan Shebs <stan@codesourcery.com>
10926
10927 * linux-x86-low.c (i386_emit_prologue): Save %ebx.
10928 (i386_emit_epilogue): Restore %ebx.
10929
109302011-08-31 Jie Zhang <jzhang918@gmail.com>
10931
10932 * server.c (step_thread): Remove definition.
10933 (process_serial_event): Don't handle Hs.
10934 * server.h (step_thread): Remove declaration.
10935 * target.c (set_desired_inferior): Remove use of step_thread.
10936
109372011-08-24 Luis Machado <lgustavo@codesourcery.com>
10938
10939 * linux-low.c: Include linux-procfs.h.
10940 (linux_attach_lwp_1): Update comments.
10941 (linux_attach): Scan for existing threads when attaching to a
10942 process that is the tgid.
10943 * Makefile.in: Update dependencies.
10944
109452011-08-24 Luis Machado <lgustavo@codesourcery.com>
10946
10947 * configure.srv: Add linux-procfs.o dependencies.
10948
109492011-08-14 Yao Qi <yao@codesourcery.com>
10950
10951 * target.h (struct target_ops): Fix indent.
10952 * win32-low.c (win32_target_ops): Fix comment.
10953
109542011-08-14 Andrew Jenner <andrew@codesourcery.com>
10955 Yao Qi <yao@codesourcery.com>
10956
10957 * Makefile.in (clean): Remove tic6x-*.c files.
10958 (linux-tic6x-low.o, tic6x-c62x-linux.o, tic6x-c64x-linux.o): New rules.
10959 (tic6x-c64xp-linux.o, tic6x-c62x-linux.c, tic6x-c64x-linux.c): Likewise.
10960 (tic6x-c64xp-linux.c): Likewise.
10961 * configure.srv: Add support for tic6x-*-uclinux.
10962 * linux-tic6x-low.c: New.
10963 * linux-low.c (PT_TEXT_ADDR, PT_DATA_ADDR, PT_TEXT_END_ADDR): Define.
10964
109652011-08-14 Andrew Stubbs <ams@codesourcery.com>
10966 Yao Qi <yao@codesourcery.com>
10967
10968 * target.h (struct target_ops): Add read_loadmap.
10969 * linux-low.c (struct target_loadseg): New type.
10970 (struct target_loadmap): New type.
10971 (linux_read_loadmap): New function.
10972 (linux_target_ops): Add linux_read_loadmap.
10973 * server.c (handle_query): Support qXfer:fdpic:read packet.
10974 * win32-low.c (win32_target_ops): Initialize field `read_loadmap'
10975 to NULL.
10976
109772011-08-05 Eli Zaretskii <eliz@gnu.org>
10978
10979 * win32-low.c: Include <stdint.h>.
10980
109812011-07-22 Pedro Alves <pedro@codesourcery.com>
10982
10983 * i386-low.c (i386_insert_aligned_watchpoint): Don't pass the info
10984 to the inferior here.
10985 (i386_remove_aligned_watchpoint): Ditto.
10986 (i386_handle_nonaligned_watchpoint): Return immediate on fail to
10987 fit part of the watchpoint in the debug registers.
10988 (i386_update_inferior_debug_regs): New.
10989 (i386_low_insert_watchpoint): Work on a local mirror of the debug
10990 registers, and only update the inferior on success.
10991 (i386_low_remove_watchpoint): Ditto.
10992
109932011-07-22 Kwok Cheung Yeung <kcy@codesourcery.com>
10994
10995 * linux-low.c (compare_ints, unique, list_threads, show_process,
10996 linux_core_of_thread): Delete.
10997 (linux_target_ops): Change linux_core_of_thread to
10998 linux_common_core_of_thread.
10999 (linux_qxfer_osdata): Defer to linux_common_xfer_osdata.
11000 * utils.c (malloc_failure): Change type of argument.
11001 (xmalloc, xrealloc, xcalloc, xsnprintf): Delete.
11002 * Makefile.in (SFILES): Add common/common-utils.c, common/xml-utils.c,
11003 common/linux-osdata.c, common/ptid.c and common/buffer.c.
11004 (OBS): Add xml-utils.o, common-utils.o, ptid.o and buffer.o.
11005 (IPA_OBJS): Add common-utils-ipa.o.
11006 (ptid_h, linux_osdata_h): New macros.
11007 (server_h): Add common/common-utils.h, common/xml-utils.h,
11008 common/buffer.h, common/gdb_assert.h, common/gdb_locale.h and
11009 common/ptid.h.
11010 (common-utils-ipa.o, common-utils.o, xml-utils.o, linux-osdata.o,
11011 ptid.o, buffer.o): New rules.
11012 (linux-low.o): Add common/linux-osdata.h as a dependency.
11013 * configure.srv (srv_tgtobj): Add linux-osdata.o to Linux targets.
11014 * configure.ac: Add AC_HEADER_DIRENT check.
11015 * config.in: Regenerate.
11016 * configure: Regenerate.
11017 * remote-utils.c (xml_escape_text): Delete.
11018 (buffer_grow, buffer_free, buffer_init, buffer_finish,
11019 buffer_xml_printf): Move to common/buffer.c.
11020 * server.c (main): Remove call to initialize_inferiors.
11021 * server.h (struct ptid, ptid_t, minus_one_ptid, null_ptid,
11022 ptid_build, pid_to_ptid, ptid_get_pid, ptid_get_lwp, ptid_get_tid,
11023 ptid_equal, ptid_is_pid, initialize_inferiors, xml_escape_text,
11024 internal_error, gdb_assert, gdb_assert_fail): Delete.
11025 (struct buffer, buffer_grow, buffer_free, buffer_init, buffer_finish,
11026 buffer_xml_printf, buffer_grow_str, buffer_grow_str0): Move to
11027 common/buffer.h.
11028 * inferiors.c (null_ptid, minus_one_ptid, ptid_build, pid_to_ptid,
11029 ptid_get_pid, ptid_get_lwp, ptid_get_tid, ptid_equal, ptid_is_pid,
11030 initialize_inferiors): Delete.
11031
110322011-07-20 Pedro Alves <pedro@codesourcery.com>
11033
11034 * tracepoint.c (tracepoint_look_up_symbols): Return upon the first
11035 symbol error.
11036
110372011-05-31 Pedro Alves <pedro@codesourcery.com>
11038
11039 * linux-x86-low.c (i386_dr_low_get_addr): Fix off by one in
11040 assertion.
11041 * win32-i386-low.c (i386_dr_low_get_addr): Ditto.
11042
110432011-05-26 Yao Qi <yao@codesourcery.com>
11044
11045 * Makefile.in (thread-db.o): Track dependence to
11046 common/gdb_thread_db.h.
11047 * thread-db.c: include gdb_thread_db.h from right place.
11048
110492011-05-16 Adrian Cornish <gnu@bluedreamer.com>
11050
11051 * linux-i386-ipa.c (supply_static_tracepoint_registers): Pass
11052 __FILE__ and __LINE__ to internal_error.
11053
110542011-05-13 Doug Evans <dje@google.com>
11055
11056 * thread-db.c (try_thread_db_load_from_sdir): New function.
11057 (try_thread_db_load_from_dir): New function.
11058 (thread_db_load_search): Handle $sdir, ignore $pdir.
11059 Remove trying of system directories if search of
11060 libthread-db-search-path fails, that is now done via $sdir.
11061
110622011-05-12 Kwok Cheung Yeung <kcy@codesourcery.com>
11063
11064 * server.c (handle_query): Add EnableDisableTracepoints to the list
11065 of supported features.
11066 * tracepoint.c (clear_installed_tracepoints): Uninstall disabled
11067 tracepoints.
11068 (cmd_qtenable_disable): New.
11069 (cmd_qtstart): Install tracepoints even if disabled.
11070 (handle_tracepoint_general_set): Add call to cmd_qtenable_disable on
11071 receiving a QTEnable or QTDisable packet.
11072 (gdb_collect): Skip data collection if fast tracepoint is disabled.
11073 (ust_marker_to_static_tracepoint): Do not ignore disabled static
11074 tracepoints.
11075 (gdb_probe): Skip data collection if static tracepoint is disabled.
11076
110772011-05-10 Doug Evans <dje@google.com>
11078
11079 * thread-db.c (thread_db_handle_monitor_command): Handle elided path.
11080
110812011-05-04 Doug Evans <dje@google.com>
11082
11083 * linux-low.c (linux_join): Skip process lookup.
11084 * spu-low.c (spu_join): Ditto.
11085 * server.c (join_inferiors_callback): Delete.
11086 (process_serial_event): For 'D' packet (detach) call join_inferior
11087 directly.
11088
110892011-05-04 Joseph Myers <joseph@codesourcery.com>
11090
11091 * README: Don't mention xscale*-*-linux*.
11092 * configure.srv (xscale*-*-linux*): Don't handle target.
11093
110942011-04-27 Nathan Froyd <froydnj@codesourcery.com>
11095
11096 * linux-x86-low.c (amd64_emit_const): Call memcpy instead of
11097 casting pointers.
11098 (amd64_emit_reg, amd64_emit_int_call_1, amd64_emit_void_call_2):
11099 (i386_emit_const, i386_emit_reg, i386_emit_int_call_1):
11100 (i386_emit_void_call_2): Likewise.
11101
111022011-04-26 Yao Qi <yao@codesourcery.com>
11103
11104 * linux-low.c: Move common macros to linux-ptrace.h.
11105 Include linux-ptrace.h.
11106 * Makefile.in (linux_ptrace_h): New.
11107 (linux-low.o): Depends on linux-ptrace.h.
11108
111092011-04-24 Jan Kratochvil <jan.kratochvil@redhat.com>
11110
11111 * remote-utils.c (handle_accept_event): Close LISTEN_DESC only if
11112 RUN_ONCE. Comment for the LISTEN_DESC delete_file_handler call.
11113 (remote_prepare): New function with most of the TCP code from ...
11114 (remote_open): ... here. Detect PORT here unconditionally. Move also
11115 setting transport_is_reliable.
11116 * server.c (run_once): New variable.
11117 (gdbserver_usage): Document it.
11118 (main): Set run_once for `--once'. Call remote_prepare. Exit after
11119 the first run if RUN_ONCE.
11120 * server.h (run_once, remote_prepare): New declarations.
11121
111222011-04-19 Tom Tromey <tromey@redhat.com>
11123
11124 * win32-low.c (handle_load_dll): Remove duplicate "the".
11125
111262011-04-07 Pierre Muller <muller@ics.u-strasbg.fr>
11127
11128 Remove support for old Cygwin 1.5 versions.
11129 * win32-low.c (win32_create_inferior): Use new cygwin_path_list
11130 function to avoid warning.
11131 (win32_add_one_solib): Use cygwin_conv_path function to avoid
11132 warning.
11133
111342011-03-18 Pierre Muller <muller@ics.u-strasbg.fr>
11135
11136 * gdbserver/server.h (Macro _): Define it if not available.
11137
111382011-03-14 Michael Snyder <msnyder@vmware.com>
11139
11140 * hostio.c (handle_close): Remove unnecessary null test.
11141
111422011-03-10 Joel Brobecker <brobecker@adacore.com>
11143
11144 * Makefile.in (maintainer-clean realclean distclean): Remove
11145 "make ... subdir_do" command.
11146
111472011-03-10 Michael Snyder <msnyder@vmware.com>
11148
11149 * tracepoint.c (tracepoint_finish_step): Fix loop variable.
11150
11151 * server.c (handle_v_run): Free alloced buffer on early return.
11152
111532011-03-09 Yao Qi <yao@codesourcery.com>
11154
11155 Revert:
11156 2011-03-04 Yao Qi <yao@codesourcery.com>
11157
11158 * Makefile.in: Remove GNU make feature --directory.
11159
11160 2011-03-05 Yao Qi <yao@codesourcery.com>
11161
11162 * Makefile.in (CLEANDIRS, REQUIRED_SUBDIRS): New variable.
11163 (subdir_do): New make target. Copied from gdb/Makefile.
11164 (maintainer-clean, realclean, distclean, clean): Call corresponding
11165 make targets in common/Makefile.
11166
11167 2011-02-11 Yao Qi <yao@codesourcery.com>
11168
11169 * configure.ac: Call AC_PROG_RANLIB.
11170 * Makefile.in: Remove signals.o from OBS. Link libcommon.a.
11171 * configure: Regenerate.
11172
111732011-03-07 Jan Kratochvil <jan.kratochvil@redhat.com>
11174
11175 * remote-utils.c (putpkt_binary_1): Calculate BUF2 size dynamically.
11176
111772011-03-06 Yao Qi <yao@codesourcery.com>
11178
11179 * Makefile.in (REQUIRED_SUBDIRS): Remove $(LIBCOMMON_DIR).
11180
111812011-03-05 Yao Qi <yao@codesourcery.com>
11182
11183 * Makefile.in (CLEANDIRS, REQUIRED_SUBDIRS): New variable.
11184 (subdir_do): New make target. Copied from gdb/Makefile.
11185 (maintainer-clean, realclean, distclean, clean): Call corresponding
11186 make targets in common/Makefile.
11187
111882011-03-04 Yao Qi <yao@codesourcery.com>
11189
11190 * Makefile.in: Remove GNU make feature --directory.
11191
111922011-03-04 Michael Snyder <msnyder@vmware.com>
11193
11194 * server.c (queue_stop_reply): Call xmalloc not malloc.
11195
111962011-03-02 Michael Snyder <msnyder@vmware.com>
11197
11198 * linux-arm-low.c (arm_arch_setup): Replace malloc with xmalloc.
11199
112002011-02-28 Michael Snyder <msnyder@vmware.com>
11201
11202 * tracepoint.c (cmd_qtv): Discard unused value 'packet'.
11203 (cmd_qtframe): Ditto.
11204 (cmd_qtbuffer): Ditto.
11205 (cmd_bigqtbuffer): Ditto.
11206
11207 * utils.c (decimal2str): Initialize 'width' to nine, then
11208 don't mess with it.
11209
112102011-02-28 Ulrich Weigand <uweigand@de.ibm.com>
11211
11212 * hostio.c (require_data): Free *data, not data.
11213
112142011-02-28 Jan Kratochvil <jan.kratochvil@redhat.com>
11215
11216 * hostio.c (require_data): Use free, not xfree.
11217
112182011-02-27 Michael Snyder <msnyder@vmware.com>
11219
11220 * server.c (handle_query): Discard unused value.
11221
11222 * hostio.c (require_data): Free malloc memory before returning
11223 error.
11224
112252011-02-26 Michael Snyder <msnyder@vmware.com>
11226
11227 * linux-low.c (list_threads): Call closedir for dirent.
11228
112292011-02-27 Michael Snyder <msnyder@vmware.com>
11230
11231 * i386-low.c (i386-length_and_rw_bits): Comment the fact that
11232 a case statement falls through.
11233
11234 * linux-low.c (linux_xfer_siginfo): Fix fencepost error.
11235
11236 * linux-amd64-ipa.c (gdb_agent_get_raw_reg): Fix fencepost error
11237 in comparison.
11238
112392011-02-26 Michael Snyder <msnyder@vmware.com>
11240
11241 * utils.c (decimal2str): Eliminate dead code and dead param.
11242 (pulongest): Drop dead param from call to decimal2str.
11243 (plongest): Ditto.
11244
112452011-02-24 Joel Brobecker <brobecker@adacore.com>
11246
11247 Revert the following patch (not approved yet):
11248 2011-02-21 Hui Zhu <teawater@gmail.com>
11249 * tracepoint.c (tp_printf): New function.
11250 (eval_agent_expr): Handle gdb_agent_op_printf.
11251
112522011-02-21 Hui Zhu <teawater@gmail.com>
11253
11254 * tracepoint.c (tp_printf): New function.
11255 (eval_agent_expr): Handle gdb_agent_op_printf.
11256
112572011-02-18 Tom Tromey <tromey@redhat.com>
11258
11259 * Makefile.in (tracepoint-ipa.o): Depend on ax.def.
11260 (tracepoint.o): Likewise.
11261 * tracepoint.c (enum gdb_agent_op): Use ax.def.
11262 (gdb_agent_op_names): Likewise.
11263
112642011-02-18 Tom Tromey <tromey@redhat.com>
11265
11266 * tracepoint.c (enum gdb_agent_op) <gdb_agent_op_pick,
11267 gdb_agent_op_rot>: New constants.
11268 (gdb_agent_op_names): Add pick and roll.
11269 (eval_agent_expr) <gdb_agent_op_pick, gdb_agent_op_rot>: New
11270 cases.
11271
112722011-02-15 Jan Kratochvil <jan.kratochvil@redhat.com>
11273
11274 * aclocal.m4: Regenerated with aclocal-1.11.1.
11275
112762011-02-14 Pedro Alves <pedro@codesourcery.com>
11277
11278 * server.c (handle_qxfer_traceframe_info): New.
11279 (qxfer_packets): Register "traceframe-info".
11280 (handle_query): Report support for qXfer:traceframe-info:read+.
11281 * tracepoint.c (match_blocktype): New.
11282 (traceframe_find_block_type): Rename to ...
11283 (traceframe_walk_blocks): ... this. Add callback filter argument,
11284 and use it.
11285 (traceframe_find_block_type): New, reimplemented on top of
11286 traceframe_walk_blocks.
11287 (build_traceframe_info_xml): New.
11288 (traceframe_read_info): New.
11289 * server.h (traceframe_read_info): Declare.
11290
112912011-02-11 Yao Qi <yao@codesourcery.com>
11292
11293 * configure.ac: Call AC_PROG_RANLIB.
11294 * Makefile.in: Remove signals.o from OBS. Link libcommon.a.
11295 * configure: Regenerate.
11296
112972011-02-07 Pedro Alves <pedro@codesourcery.com>
11298
11299 * server.c (gdb_read_memory): Change return semantics to allow
11300 partial transfers.
11301 (handle_search_memory_1): Adjust.
11302 (process_serial_event) <'m' packet>: Handle partial transfers.
11303 * tracepoint.c (traceframe_read_mem): Handle partial transfers.
11304
113052011-01-28 Pedro Alves <pedro@codesourcery.com>
11306
11307 * regcache.c (init_register_cache): Initialize
11308 regcache->register_status.
11309 (free_register_cache): Release regcache->register_status.
11310 (regcache_cpy): Copy register_status.
11311 (registers_to_string): Print 'x's for unavailable registers.
11312 (supply_register): Mark the register's status valid or
11313 unavailable, depending on whether a buffer was passed in or not.
11314 (supply_register_zeroed): New.
11315 (supply_regblock): Mark the registers' status valid or
11316 unavailable, depending on whether a buffer was passed in or not.
11317 * regcache.h (REG_UNAVAILABLE, REG_VALID): New defines.
11318 (struct regcache): New `register_status' field.
11319 (supply_register_zeroed): Declare.
11320 * i387-fp.c (i387_xsave_to_cache): Zero out registers using
11321 supply_register_zeroed, rather than passing a NULL buffer to
11322 supply_register.
11323 * tracepoint.c (fetch_traceframe_registers): Update comment.
11324
113252011-01-28 Pedro Alves <pedro@codesourcery.com>
11326
11327 * i387-fp.c (i387_xsave_to_cache): Make passing NULL as register
11328 buffer explicit.
11329
113302011-01-25 Pedro Alves <pedro@codesourcery.com>
11331
11332 * server.h (decode_xfer_write): Change prototype.
11333 * remote-utils.c (decode_xfer_write): Remove `annex' parameter,
11334 and don't extract the annex here.
11335 * server.c (decode_xfer_read): Remove `annex' parameter,
11336 and don't extract the annex here.
11337 (decode_xfer): New.
11338 (struct qxfer): New.
11339 (handle_qxfer_auxv, handle_qxfer_features, handle_qxfer_libraries)
11340 (handle_qxfer_osdata, handle_qxfer_siginfo, handle_qxfer_spu)
11341 (handle_qxfer_statictrace): New functions, abstracted out from
11342 handle_query, and made to use the struct qxfer interface.
11343 (handle_threads_qxfer_proper): Rename to ...
11344 (handle_qxfer_threads_proper): ... this.
11345 (handle_threads_qxfer): Rename to ...
11346 (handle_qxfer_threads): ... this. Adjust.
11347 (qxfer_packets): New array.
11348 (handle_qxfer): New function.
11349 (handle_query): Use handle_qxfer.
11350
113512011-01-05 Michael Snyder <msnyder@msnyder-server.eng.vmware.com>
11352
11353 * gdbreplay.c: Shorten lines of >= 80 columns.
11354 * linux-low.c: Ditto.
11355 * linux-ppc-low.c: Ditto.
11356 * linux-s390-low.c: Ditto.
11357 * linux-sparc-low.c: Ditto.
11358 * linux-x86-low.c: Ditto.
11359 * linux-xtensa-low.c: Ditto.
11360 * mem-break.c: Ditto.
11361 * nto-low.c: Ditto.
11362 * regcache.h: Ditto.
11363 * remote-utils.c: Ditto.
11364 * server.c: Ditto.
11365 * server.h: Ditto.
11366 * thread-db.c: Ditto.
11367 * tracepoint.c: Ditto.
11368 * utils.c: Ditto.
11369 * win32-low.h: Ditto.
11370
113712011-01-05 Joel Brobecker <brobecker@adacore.com>
11372
11373 * gdbserver/configure.ac, gdbserver/gdbserver.1: Copyright year
11374 update.
11375
113762011-01-01 Joel Brobecker <brobecker@adacore.com>
11377
11378 * server.c (gdbserver_version): Update copyright year in version
11379 output.
11380 * gdbreplay.c (gdbreplay_version): Ditto.
11381
113822010-12-29 Jie Zhang <jie.zhang@analog.com>
11383
11384 * configure.srv (bfin-*-*linux*): Handle Blackfin/Linux targets.
11385 * linux-bfin-low.c: New file.
11386 * linux-low.c: Define PT_TEXT_ADDR, PT_TEXT_END_ADDR, and
11387 PT_DATA_ADDR for BFIN targets.
11388 * Makefile.in (SFILES): Add linux-bfin-low.c.
11389 (clean): Remove reg-bfin.c.
11390 (linux-bfin-low.o, reg-bfin.o, reg-bfin.c): New targets.
11391 * README: Mention supported Blackfin targets.
11392
113932010-12-23 Mike Frysinger <vapier@gentoo.org>
11394
11395 * .gitignore: New file.
11396
113972010-11-16 Mike Frysinger <vapier@gentoo.org>
11398
11399 * linux-low.c (linux_tracefork_child): Add char* cast to arg.
11400
114012010-10-22 Jie Zhang <jie@codesourcery.com>
11402
11403 * Makefile.in: Add FLAGS_TO_PASS variable.
11404 (install): Remove dependency of install-only and recursively
11405 invoke make for install-only.
11406
114072010-10-04 Doug Evans <dje@google.com>
11408
11409 * Makefile.in (uninstall): Use $(DESTDIR).
11410
114112010-09-24 Pedro Alves <pedro@codesourcery.com>
11412
11413 PR gdb/11842
11414
11415 * linux-x86-low.c (compat_siginfo_from_siginfo)
11416 (siginfo_from_compat_siginfo): Also copy si_pid and si_uid when
11417 si_code is < 0. Check for si_code == SI_TIMER before checking for
11418 si_code < 0.
11419
114202010-09-13 Joel Brobecker <brobecker@adacore.com>
11421
11422 * lynx-i386-low.c: New file.
11423 * configure.srv: Add handling of i[34567]86-*-lynxos* targets.
11424
114252010-09-13 Joel Brobecker <brobecker@adacore.com>
11426
11427 * lynx-low.c (ptrace_request_to_str): Remove handling for
11428 request values that have been removed in LynxOS 5.x.
11429
114302010-09-13 Joel Brobecker <brobecker@adacore.com>
11431
11432 * lynx-low.c, lynx-ppc-loc.c: Include <sys/ptrace.h> instead of
11433 <ptrace.h>
11434
114352010-09-09 Nathan Sidwell <nathan@codesourcery.com>
11436
11437 * configure.ac: Add --enable-inprocess-agent option.
11438 * configure: Rebuilt.
11439
114402010-09-06 Yao Qi <yao@codesourcery.com>
11441
11442 * linux-low.c (linux_kill): Remove unused variable.
11443 (linux_stabilize_threads): Likewise.
11444 * server.c (start_inferior): Likewise.
11445 (queue_stop_reply_callback): Likewise.
11446 * tracepoint.c (do_action_at_tracepoint): Likewise.
11447
114482010-09-06 Yao Qi <yao@codesourcery.com>
11449
11450 * linux-low.c (maybe_move_out_of_jump_pad): Restore current_inferior
11451 on return.
11452
114532010-09-06 Jan Kratochvil <jan.kratochvil@redhat.com>
11454
11455 * target.c (mywait) <TARGET_WAITKIND_EXITED>: Fix to use INTEGER.
11456
114572010-09-06 Pedro Alves <pedro@codesourcery.com>
11458
11459 * Makefile.in (install-only): Replace $IPA_DEPFILES with
11460 "$(IPA_DEPFILES)".
11461
114622010-09-01 Joel Brobecker <brobecker@adacore.com>
11463
11464 * gdbserver/lynx-low.c, gdbserver/lynx-low.h,
11465 gdbserver/lynx-ppc-low.c: New files.
11466 * Makefile.in (lynx_low_h): New variable.
11467 (lynx-low.o, lynx-ppc-low.o): New rules.
11468 * configure.ac: On LynxOS, link with -lnetinet.
11469 * configure.srv: Add handling of powerpc-*-lynxos* targets.
11470 * configure: regenerate.
11471
114722010-09-01 Joel Brobecker <brobecker@adacore.com>
11473
11474 * Makefile.in (vasprintf.o, vsnprintf.o): New rules.
11475 * configure.ac: Add check for vasprintf and vsnprintf.
11476 * configure, config.in: Regenerate.
11477 * server.h (vasprintf, vsnprintf): Add conditional declarations.
11478
114792010-09-01 Joel Brobecker <brobecker@adacore.com>
11480
11481 * gdbreplay.c: Move include of alloca.h up, next to include of
11482 malloc.h.
11483 * server.h: Add include of malloc.h.
11484 * mem-break.c: Remove include of malloc.h.
11485 * server.c, tracepoint.c, utils.c, win32-low.c: Likewise.
11486
114872010-09-01 Joel Brobecker <brobecker@adacore.com>
11488
11489 * Makefile.in (memmem.o): Build with -Wno-error.
11490
114912010-09-01 Joel Brobecker <brobecker@adacore.com>
11492
11493 * utils.c (xsnprintf): Make non-static.
11494 * server.h: Add xsnprintf declaration.
11495 * linux-low.c, nto-low.c, target.c, thread-db.c, tracepoint.c:
11496 replace calls to snprintf by calls to xsnprintf throughout.
11497
114982010-09-01 Joel Brobecker <brobecker@adacore.com>
11499
11500 * configure.ac: Add configure check for alloca.
11501 * configure, config.in: Regenerate.
11502 * server.h: Include alloca.h if it exists.
11503 * gdbreplay.c: Include alloca.h if it exists.
11504
115052010-08-28 Pedro Alves <pedro@codesourcery.com>
11506
11507 * linux-low.c (__SIGRTMIN): Define if not already defined.
11508 (linux_create_inferior): Check for __ANDROID__ rather than
11509 __SIGRTMIN.
11510 (enqueue_one_deferred_signal): Don't requeue non-RT signals that
11511 are already deferred.
11512 (linux_wait_1): Check for __ANDROID__ rather than __SIGRTMIN.
11513 (linux_resume_one_thread): Don't queue a SIGSTOP if the lwp is
11514 stopped and already has a pending signal to report.
11515 (proceed_one_lwp): : Don't queue a SIGSTOP if the lwp already has
11516 a pending signal to report or is moving out of a jump pad.
11517 (linux_init_signals): Check for __ANDROID__ rather than
11518 __SIGRTMIN.
11519
115202010-08-28 Pedro Alves <pedro@codesourcery.com>
11521
11522 * linux-low.c (linux_stabilize_threads): Wrap debug output in a
11523 debug_threads check. Avoid a linear search when not doing debug
11524 output.
11525
115262010-08-27 Pedro Alves <pedro@codesourcery.com>
11527
11528 * event-loop.c (event_handle_func): Adjust to use gdb_fildes_t.
11529 (struct gdb_event) <fd>: Change type to gdb_fildes_t.
11530 (struct file_handler) <fd>: Change type to gdb_fildes_t.
11531 (process_event): Change local fd's type to gdb_fildes_t.
11532 (create_file_handler): Adjust prototype.
11533 (delete_file_handler): Adjust prototype.
11534 (handle_file_event): Adjust prototype. Use pfildes.
11535 (create_file_event): Adjsut prototype.
11536 * remote-utils.c (remote_desc, listen_desc): Change type to
11537 gdb_fildes_t.
11538 * server.h: New gdb_fildes_t typedef.
11539 [USE_WIN32API]: Include winsock2.h.
11540 (delete_file_handler, add_file_handler): Adjust prototypes.
11541 (pfildes): Declare.
11542 * utils.c (pfildes): New.
11543
115442010-08-27 Pedro Alves <pedro@codesourcery.com>
11545
11546 * configure.ac (build_warnings): Add -Wno-char-subscripts.
11547 * configure: Regenerate.
11548
115492010-08-27 Pedro Alves <pedro@codesourcery.com>
11550
11551 * linux-low.c (linux_unprepare_to_access_memory): Rename to ...
11552 (linux_done_accessing_memory): ... this.
11553 (linux_target_ops): Adjust.
11554 * linux-x86-low.c (x86_insert_point, x86_remove_point): Adjust.
11555 * nto-low.c (nto_target_ops): Adjust comment.
11556 * server.c (gdb_read_memory, gdb_write_memory): Adjust.
11557 * spu-low.c (spu_target_ops): Adjust comment.
11558 * target.h (target_ops): Rename unprepare_to_access_memory field
11559 to done_accessing_memory.
11560 (unprepare_to_access_memory): Rename to ...
11561 (done_accessing_memory): ... this.
11562
115632010-08-26 Pedro Alves <pedro@codesourcery.com>
11564
11565 * linux-low.c (linux_prepare_to_access_memory): New.
11566 (linux_unprepare_to_access_memory): New.
11567 (linux_target_ops): Install them.
11568 * server.c (read_memory): Rename to ...
11569 (gdb_read_memory): ... this. Use
11570 prepare_to_access_memory/prepare_to_access_memory.
11571 (write_memory): Rename to ...
11572 (gdb_write_memory): ... this. Use
11573 prepare_to_access_memory/prepare_to_access_memory.
11574 (handle_search_memory_1): Adjust.
11575 (process_serial_event): Adjust.
11576 * target.h (struct target_ops): New fields
11577 prepare_to_access_memory and unprepare_to_access_memory.
11578 (prepare_to_access_memory, unprepare_to_access_memory): New.
11579 * linux-x86-low.c (x86_insert_point, x86_remove_point): Use
11580 prepare_to_access_memory/prepare_to_access_memory.
11581 * nto-low.c (nto_target_ops): Adjust.
11582 * spu-low.c (spu_target_ops): Adjust.
11583 * win32-low.c (win32_target_ops): Adjust.
11584
115852010-08-26 Pedro Alves <pedro@codesourcery.com>
11586
11587 * Makefile.in (WARN_CFLAGS): Get it from configure.
11588 (WERROR_CFLAGS): New.
11589 (INTERNAL_CFLAGS): Add WERROR_CFLAGS.
11590 * configure.ac: Introduce --enable-werror, which adds -Werror to
11591 the compiler command line. Enabled by default. Disable with
11592 --disable-werror. Add -Wdeclaration-after-statement
11593 Wpointer-arith and -Wformat-nonliteral to warning flags.
11594 * configure: Regenerate.
11595
115962010-08-26 Pedro Alves <pedro@codesourcery.com>
11597
11598 * mem-break.c [HAVE_MALLOC_H]: Include malloc.h.
11599
116002010-08-26 Pedro Alves <pedro@codesourcery.com>
11601
11602 * gdbreplay.c (remote_error): New.
11603 (gdbchar): New.
11604 (expect): Use gdbchar. Check for error reading from GDB.
11605 Clarify sync error output.
11606 (play): Check for errors writing to GDB.
11607 * linux-low.c (sigchld_handler): Really ignore `write' errors.
11608 * remote-utils.c (getpkt): Check for errors writing to the remote
11609 descriptor.
11610
116112010-08-25 Pedro Alves <pedro@codesourcery.com>
11612
11613 * linux-low.c (linux_wait_1): Move non-debugging code out of
11614 `debug_threads' control.
11615
116162010-08-25 Pedro Alves <pedro@codesourcery.com>
11617
11618 * linux-low.c (linux_wait_1): Don't set last_status here.
11619 * server.c (push_event, queue_stop_reply_callback): Assert we're
11620 not pushing a TARGET_WAITKIND_IGNORE event.
11621 (start_inferior, start_inferior, attach_inferior, handle_v_cont)
11622 (myresume, handle_target_event): Set the thread's last_resume_kind
11623 and last_status from the target returned status.
11624
116252010-08-25 Pedro Alves <pedro@codesourcery.com>
11626
11627 PR threads/10729
11628
11629 * linux-x86-low.c (update_debug_registers_callback): New.
11630 (i386_dr_low_set_addr): Use it.
11631 (i386_dr_low_get_addr): New.
11632 (i386_dr_low_set_control): Use update_debug_registers_callback.
11633 (i386_dr_low_get_control): New.
11634 (i386_dr_low_get_status): Adjust.
11635 * linux-low.c (linux_stop_lwp): New.
11636 * linux-low.h (linux_stop_lwp): Declare.
11637
11638 * i386-low.c (I386_DR_GET_RW_LEN): Take the dr7 contents as
11639 argument instead of a i386_debug_reg_state.
11640 (I386_DR_WATCH_HIT): Take the dr6 contents as argument instead of
11641 a i386_debug_reg_state.
11642 (i386_insert_aligned_watchpoint): Adjust.
11643 (i386_remove_aligned_watchpoint): Adjust.
11644 (i386_low_stopped_data_address): Read the debug registers from the
11645 inferior instead of from the mirrors.
11646 * i386-low.h (struct i386_debug_reg_state): Extend comment.
11647 (i386_dr_low_get_addr): Declare.
11648 (i386_dr_low_get_control): Declare.
11649 (i386_dr_low_get_status): Change prototype.
11650
11651 * win32-i386-low.c (dr_status_mirror, dr_control_mirror): New globals.
11652 (i386_dr_low_get_addr): New.
11653 (i386_dr_low_get_control): New.
11654 (i386_dr_low_get_status): Adjust prototype. Return
11655 dr_status_mirror.
11656 (i386_initial_stuff): Clear dr_status_mirror and
11657 dr_control_mirror.
11658 (i386_get_thread_context): Adjust.
11659 (i386_set_thread_context): Adjust.
11660 (i386_thread_added): Adjust.
11661
116622010-08-24 Pedro Alves <pedro@codesourcery.com>
11663
11664 * linux-low.h (linux_thread_area): Delete declaration.
11665
116662010-08-11 Thomas Schwinge <thomas@codesourcery.com>
11667
11668 * linux-low.c (linux_wait_1): Correctly return the ptid of the child
11669 after its termination.
11670
116712010-08-09 Pedro Alves <pedro@codesourcery.com>
11672
11673 * linux-low.c (gdb_wants_lwp_stopped): Delete.
11674 (gdb_wants_all_stopped): Delete.
11675 (linux_wait_1): Don't call them.
11676 * server.c (handle_v_cont): Tag all threads as want-stopped.
11677 (gdb_wants_thread_stopped): Fix comments. Tag the thread that
11678 stopped as "client-wants-stopped".
11679
116802010-07-31 Pedro Alves <pedro@codesourcery.com>
11681
11682 * Makefile.in (signals_h): New.
11683 (server_h): Depend on it.
11684 (server.o): Don't depend on $(signals_def).
11685 (signals.o): Depend on $(signals_def).
11686
116872010-07-31 Jan Kratochvil <jan.kratochvil@redhat.com>
11688
11689 * Makefile.in (signals_def): New.
11690 (server_h): Append include/gdb/signals.h and signals_def.
11691 (server.o): Append signals_def.
11692
116932010-07-25 Jan Kratochvil <jan.kratochvil@redhat.com>
11694
11695 * server.c (handle_target_event): Use target_signal_to_host for
11696 resume_info.sig initialization.
11697 * target.h (struct thread_resume) <sig>: New comment.
11698
116992010-07-20 Ozkan Sezer <sezeroz@gmail.com>
11700
11701 * server.c (handle_query): strcpy() the returned string from paddress()
11702 instead of sprintf().
11703 * utils.c (paddress): Return phex_nz().
11704
117052010-07-07 Joel Brobecker <brobecker@adacore.com>
11706
11707 * server.c (handle_v_cont): Call mourn_inferior if process
11708 just exited.
11709 (myresume): Likewise.
11710
117112010-07-01 Pedro Alves <pedro@codesourcery.com>
11712
11713 Static tracepoints, and integration with UST.
11714
11715 * configure.ac: Handle --with-ust. substitute ustlibs and ustinc.
11716 * mem-break.c (uninsert_all_breakpoints)
11717 (reinsert_all_breakpoints): New.
11718 * mem-break.h (reinsert_all_breakpoints, uninsert_all_breakpoints):
11719 * tracepoint.c (ust_loaded, helper_thread_id, cmd_buf): New.
11720 (gdb_agent_ust_loaded, helper_thread_id)
11721 (gdb_agent_helper_thread_id): New macros.
11722 (struct ipa_sym_addresses): Add addr_ust_loaded,
11723 addr_helper_thread_id, addr_cmd_buf.
11724 (symbol_list): Add ust_loaded, helper_thread_id, cmd_buf.
11725 (in_process_agent_loaded_ust): New.
11726 (write_e_ust_not_loaded): New.
11727 (maybe_write_ipa_ust_not_loaded): New.
11728 (struct collect_static_trace_data_action): New.
11729 (enum tracepoint_type) <static_tracepoint>: New.
11730 (struct tracepoint) <handle>: Mention static tracepoints.
11731 (struct static_tracepoint_ctx): New.
11732 (CMD_BUF_SIZE): New.
11733 (add_tracepoint_action): Handle static tracepoint actions.
11734 (unprobe_marker_at): New.
11735 (clear_installed_tracepoints): Handle static tracepoints.
11736 (cmd_qtdp): Handle static tracepoints.
11737 (probe_marker_at): New.
11738 (cmd_qtstart): Handle static tracepoints.
11739 (response_tracepoint): Handle static tracepoints.
11740 (cmd_qtfstm, cmd_qtsstm, cmd_qtstmat): New.
11741 (handle_tracepoint_query): Handle qTfSTM, qTsSTM and qTSTMat.
11742 (get_context_regcache): Handle static tracepoints.
11743 (do_action_at_tracepoint): Handle static tracepoint actions.
11744 (traceframe_find_block_type): Handle static trace data blocks.
11745 (traceframe_read_sdata): New.
11746 (download_tracepoints): Download static tracepoint actions.
11747 [HAVE_UST] Include ust/ust.h, dlfcn.h, sys/socket.h, and sys/un.h.
11748 (GDB_PROBE_NAME): New.
11749 (ust_ops): New.
11750 (GET_UST_SYM): New.
11751 (USTF): New.
11752 (dlsym_ust): New.
11753 (ust_marker_to_static_tracepoint): New.
11754 (gdb_probe): New.
11755 (collect_ust_data_at_tracepoint): New.
11756 (gdb_ust_probe): New.
11757 (UNIX_PATH_MAX, SOCK_DIR): New.
11758 (gdb_ust_connect_sync_socket): New.
11759 (resume_thread, stop_thread): New.
11760 (run_inferior_command): New.
11761 (init_named_socket): New.
11762 (gdb_ust_socket_init): New.
11763 (cstr_to_hexstr): New.
11764 (next_st): New.
11765 (first_marker, next_marker): New.
11766 (response_ust_marker): New.
11767 (cmd_qtfstm, cmd_qtsstm): New.
11768 (unprobe_marker_at, probe_marker_at): New.
11769 (cmd_qtstmat, gdb_ust_thread): New.
11770 (gdb_ust_init): New.
11771 (initialize_tracepoint_ftlib): Call gdb_ust_init.
11772 * linux-amd64-ipa.c [HAVE_UST]: Include ust/processor.h
11773 (ST_REGENTRY): New.
11774 (x86_64_st_collect_regmap): New.
11775 (X86_64_NUM_ST_COLLECT_GREGS): New.
11776 (AMD64_RIP_REGNUM): New.
11777 (supply_static_tracepoint_registers): New.
11778 * linux-i386-ipa.c [HAVE_UST]: Include ust/processor.h
11779 (ST_REGENTRY): New.
11780 (i386_st_collect_regmap): New.
11781 (i386_NUM_ST_COLLECT_GREGS): New.
11782 (supply_static_tracepoint_registers): New.
11783 * server.c (handle_query): Handle qXfer:statictrace:read.
11784 <qSupported>: Report support for StaticTracepoints, and
11785 qXfer:statictrace:read features.
11786 * server.h (traceframe_read_sdata)
11787 (supply_static_tracepoint_registers): Declare.
11788 * remote-utils.c (convert_int_to_ascii, hexchars, ishex, tohex)
11789 (unpack_varlen_hex): Include in IPA build.
11790 * Makefile.in (ustlibs, ustinc): New.
11791 (IPA_OBJS): Add remote-utils-ipa.o.
11792 ($(IPA_LIB)): Link -ldl and -lpthread.
11793 (UST_CFLAGS): New.
11794 (IPAGENT_CFLAGS): Add UST_CFLAGS.
11795 * config.in, configure: Regenerate.
11796
117972010-06-20 Ian Lance Taylor <iant@google.com>
11798 Pedro Alves <pedro@codesourcery.com>
11799
11800 * linux-x86-low.c (always_true): Delete.
11801 (EMIT_ASM, EMIT_ASM32): Use an uncondition asm jmp instead of
11802 trying to fool the compiler with always_true.
11803
118042010-06-20 Pedro Alves <pedro@codesourcery.com>
11805
11806 * tracepoint.c (condition_true_at_tracepoint): Don't run compiled
11807 conditions in gdbserver.
11808
118092010-06-19 Ulrich Weigand <uweigand@de.ibm.com>
11810
11811 * spu-low.c (spu_read_memory): Wrap around local store limit.
11812 (spu_write_memory): Likewise.
11813
118142010-06-15 Pedro Alves <pedro@codesourcery.com>
11815
11816 * linux-x86-low.c (amd64_emit_const, amd64_emit_void_call_2)
11817 (i386_emit_const, i386_emit_void_call_2): Replace int64_t uses with
11818 LONGEST uses.
11819 * server.h (struct emit_ops): Replace int64_t uses with LONGEST
11820 uses.
11821 * tracepoint.c (emit_const, emit_void_call_2): Replace int64_t
11822 uses with LONGEST uses.
11823
118242010-06-14 Stan Shebs <stan@codesourcery.com>
11825 Pedro Alves <pedro@codesourcery.com>
11826
11827 Bytecode compiler.
11828
11829 * linux-x86-low.c: Include limits.h.
11830 (add_insns): New.
11831 (always_true): New.
11832 (EMIT_ASM): New.
11833 (EMIT_ASM32): New.
11834 (amd64_emit_prologue, amd64_emit_epilogue, amd64_emit_add)
11835 (amd64_emit_sub, amd64_emit_mul, amd64_emit_lsh)
11836 (amd64_emit_rsh_signed, amd64_emit_rsh_unsigned, amd64_emit_ext,
11837 (amd64_emit_log_not, amd64_emit_bit_and, amd64_emit_bit_or)
11838 (amd64_emit_bit_xor, amd64_emit_bit_not, amd64_emit_equal,
11839 (amd64_emit_less_signed, amd64_emit_less_unsigned, amd64_emit_ref,
11840 (amd64_emit_if_goto, amd64_emit_goto, amd64_write_goto_address)
11841 (amd64_emit_const, amd64_emit_call, amd64_emit_reg)
11842 (amd64_emit_pop, amd64_emit_stack_flush, amd64_emit_zero_ext)
11843 (amd64_emit_swap, amd64_emit_stack_adjust, amd64_emit_int_call_1)
11844 (amd64_emit_void_call_2): New.
11845 (amd64_emit_ops): New.
11846 (i386_emit_prologue, i386_emit_epilogue, i386_emit_add)
11847 (i386_emit_sub,i386_emit_mul, i386_emit_lsh, i386_emit_rsh_signed)
11848 (i386_emit_rsh_unsigned, i386_emit_ext, i386_emit_log_not)
11849 (i386_emit_bit_and, i386_emit_bit_or, i386_emit_bit_xor)
11850 (i386_emit_bit_not, i386_emit_equal, i386_emit_less_signed)
11851 (i386_emit_less_unsigned, i386_emit_ref, i386_emit_if_goto)
11852 (i386_emit_goto, i386_write_goto_address, i386_emit_const)
11853 (i386_emit_call, i386_emit_reg, i386_emit_pop)
11854 (i386_emit_stack_flush, i386_emit_zero_ext, i386_emit_swap)
11855 (i386_emit_stack_adjust, i386_emit_int_call_1)
11856 (i386_emit_void_call_2): New.
11857 (i386_emit_ops): New.
11858 (x86_emit_ops): New.
11859 (the_low_target): Install x86_emit_ops.
11860 * server.h (struct emit_ops): New.
11861 (get_raw_reg_func_addr): Declare.
11862 (current_insn_ptr, emit_error): Declare.
11863 * tracepoint.c (get_raw_reg, get_trace_state_variable_value)
11864 (set_trace_state_variable_value): New defines.
11865 (struct ipa_sym_addresses): New fields addr_get_raw_reg,
11866 addr_get_trace_state_variable_value and
11867 addr_set_trace_state_variable_value.
11868 (symbol_list): New fields for get_raw_reg,
11869 get_trace_state_variable_value and set_trace_state_variable_value.
11870 (condfn): New typedef.
11871 (struct tracepoint): New field `compiled_cond'.
11872 (do_action_at_tracepoint): Clear compiled_cond.
11873 (get_trace_state_variable_value, set_trace_state_variable_value):
11874 Export in the IPA.
11875 (condition_true_at_tracepoint): If there's a compiled condition,
11876 run that.
11877 (current_insn_ptr, emit_error): New globals.
11878 (struct bytecode_address): New.
11879 (get_raw_reg_func_addr): New.
11880 (emit_prologue, emit_epilogue, emit_add, emit_sub, emit_mul)
11881 (emit_lsh, emit_rsh_signed, emit_rsh_unsigned, emit_ext)
11882 (emit_log_not, emit_bit_and, emit_bit_or, emit_bit_xor)
11883 (emit_bit_not, emit_equal, emit_less_signed, emit_less_unsigned)
11884 (emit_ref, emit_if_goto, emit_goto, write_goto_address, emit_const)
11885 (emit_reg, emit_pop, emit_stack_flush, emit_zero_ext, emit_swap)
11886 (emit_stack_adjust, emit_int_call_1, emit_void_call_2): New.
11887 (compile_tracepoint_condition, compile_bytecodes): New.
11888 * target.h (emit_ops): Forward declare.
11889 (struct target_ops): New field emit_ops.
11890 (target_emit_ops): New.
11891 * linux-amd64-ipa.c (gdb_agent_get_raw_reg): New.
11892 * linux-i386-ipa.c (gdb_agent_get_raw_reg): New.
11893 * linux-low.c (linux_emit_ops): New.
11894 (linux_target_ops): Install it.
11895 * linux-low.h (struct linux_target_ops): New field emit_ops.
11896
118972010-06-14 Ulrich Weigand <uweigand@de.ibm.com>
11898
11899 * linux-ppc-low.c (ppc_arch_setup): Use private regcache to test MSR.
11900 * linux-s390-low.c (ppc_arch_setup): Use private regcache to test PSW.
11901
119022010-06-01 Pedro Alves <pedro@codesourcery.com>
11903 Stan Shebs <stan@codesourcery.com>
11904
11905 * Makefile.in (IPA_DEPFILES, extra_libraries): New.
11906 (all): Depend on $(extra_libraries).
11907 (install-only): Install the IPA.
11908 (IPA_OBJS, IPA_LIB): New.
11909 (clean): Remove the IPA lib.
11910 (IPAGENT_CFLAGS): New.
11911 (tracepoint-ipa.o, utils-ipa.o, remote-utils-ipa.o)
11912 (regcache-ipa.o, i386-linux-ipa.o, linux-i386-ipa.o)
11913 (linux-amd64-ipa.o, amd64-linux-ipa.o): New rules.
11914 * linux-amd64-ipa.c, linux-i386-ipa.c: New files.
11915 * configure.ac: Check for atomic builtins support in the compiler.
11916 (IPA_DEPFILES, extra_libraries): Define.
11917 * configure.srv (ipa_obj): Add description.
11918 (ipa_i386_linux_regobj, ipa_amd64_linux_regobj): Define.
11919 (i[34567]86-*-linux*): Set ipa_obj.
11920 (x86_64-*-linux*): Set ipa_obj.
11921 * linux-low.c (stabilizing_threads): New.
11922 (supports_fast_tracepoints): New.
11923 (linux_detach): Stabilize threads before detaching.
11924 (handle_tracepoints): Handle internal tracing breakpoints. Assert
11925 the lwp is either not stabilizing, or is moving out of a jump pad.
11926 (linux_fast_tracepoint_collecting): New.
11927 (maybe_move_out_of_jump_pad): New.
11928 (enqueue_one_deferred_signal): New.
11929 (dequeue_one_deferred_signal): New.
11930 (linux_wait_for_event_1): If moving out of a jump pad, defer
11931 pending signals to later.
11932 (linux_stabilize_threads): New.
11933 (linux_wait_1): Check if threads need moving out of jump pads, and
11934 do it if so.
11935 (stuck_in_jump_pad_callback): New.
11936 (move_out_of_jump_pad_callback): New.
11937 (lwp_running): New.
11938 (linux_resume_one_lwp): Handle moving out of jump pads.
11939 (linux_set_resume_request): Dequeue deferred signals.
11940 (need_step_over_p): Also step over fast tracepoint jumps.
11941 (start_step_over): Also uninsert fast tracepoint jumps.
11942 (finish_step_over): Also reinsert fast tracepoint jumps.
11943 (linux_install_fast_tracepoint_jump): New.
11944 (linux_target_ops): Install linux_stabilize_threads and
11945 linux_install_fast_tracepoint_jump_pad.
11946 * linux-low.h (linux_target_ops) <get_thread_area,
11947 install_fast_tracepoint_jump_pad>: New fields.
11948 (struct lwp_info) <collecting_fast_tracepoint,
11949 pending_signals_to_report, exit_jump_pad_bkpt>: New fields.
11950 (linux_get_thread_area): Declare.
11951 * linux-x86-low.c (jump_insn): New.
11952 (x86_get_thread_area): New.
11953 (append_insns): New.
11954 (push_opcode): New.
11955 (amd64_install_fast_tracepoint_jump_pad): New.
11956 (i386_install_fast_tracepoint_jump_pad): New.
11957 (x86_install_fast_tracepoint_jump_pad): New.
11958 (the_low_target): Install x86_get_thread_area and
11959 x86_install_fast_tracepoint_jump_pad.
11960 * mem-break.c (set_raw_breakpoint_at): Use read_inferior_memory.
11961 (struct fast_tracepoint_jump): New.
11962 (fast_tracepoint_jump_insn): New.
11963 (fast_tracepoint_jump_shadow): New.
11964 (find_fast_tracepoint_jump_at): New.
11965 (fast_tracepoint_jump_here): New.
11966 (delete_fast_tracepoint_jump): New.
11967 (set_fast_tracepoint_jump): New.
11968 (uninsert_fast_tracepoint_jumps_at): New.
11969 (reinsert_fast_tracepoint_jumps_at): New.
11970 (set_breakpoint_at): Use write_inferior_memory.
11971 (uninsert_raw_breakpoint): Use write_inferior_memory.
11972 (check_mem_read): Mask out fast tracepoint jumps.
11973 (check_mem_write): Mask out fast tracepoint jumps.
11974 * mem-break.h (struct fast_tracepoint_jump): Forward declare.
11975 (set_fast_tracepoint_jump): Declare.
11976 (delete_fast_tracepoint_jump)
11977 (fast_tracepoint_jump_here, uninsert_fast_tracepoint_jumps_at)
11978 (reinsert_fast_tracepoint_jumps_at): Declare.
11979 * regcache.c: Don't compile many functions when building the
11980 in-process agent library.
11981 (init_register_cache) [IN_PROCESS_AGENT]: Don't allow allocating
11982 the register buffer in the heap.
11983 (free_register_cache): If the register buffer isn't owned by the
11984 regcache, don't free it.
11985 (set_register_cache) [IN_PROCESS_AGENT]: Don't re-alocate
11986 pre-existing register caches.
11987 * remote-utils.c (convert_int_to_ascii): Constify `from' parameter
11988 type.
11989 (convert_ascii_to_int): : Constify `from' parameter type.
11990 (decode_M_packet, decode_X_packet): Replace the `to' parameter by
11991 a `to_p' pointer to pointer parameter. If TO_P is NULL, malloc
11992 the needed buffer in-place.
11993 (relocate_instruction): New.
11994 * server.c (handle_query) <qSymbols>: If the target supports
11995 tracepoints, give it a chance of looking up symbols. Report
11996 support for fast tracepoints.
11997 (handle_status): Stabilize threads.
11998 (process_serial_event): Adjust.
11999 * server.h (struct fast_tracepoint_jump): Forward declare.
12000 (struct process_info) <fast_tracepoint_jumps>: New field.
12001 (convert_ascii_to_int, convert_int_to_ascii): Adjust.
12002 (decode_X_packet, decode_M_packet): Adjust.
12003 (relocate_instruction): Declare.
12004 (in_process_agent_loaded): Declare.
12005 (tracepoint_look_up_symbols): Declare.
12006 (struct fast_tpoint_collect_status): Declare.
12007 (fast_tracepoint_collecting): Declare.
12008 (force_unlock_trace_buffer): Declare.
12009 (handle_tracepoint_bkpts): Declare.
12010 (initialize_low_tracepoint)
12011 (supply_fast_tracepoint_registers) [IN_PROCESS_AGENT]: Declare.
12012 * target.h (struct target_ops) <stabilize_threads,
12013 install_fast_tracepoint_jump_pad>: New fields.
12014 (stabilize_threads, install_fast_tracepoint_jump_pad): New.
12015 * tracepoint.c [HAVE_MALLOC_H]: Include malloc.h.
12016 [HAVE_STDINT_H]: Include stdint.h.
12017 (trace_debug_1): Rename to ...
12018 (trace_vdebug): ... this.
12019 (trace_debug): Rename to ...
12020 (trace_debug_1): ... this. Add `level' parameter.
12021 (trace_debug): New.
12022 (ATTR_USED, ATTR_NOINLINE): New.
12023 (IP_AGENT_EXPORT): New.
12024 (gdb_tp_heap_buffer, gdb_jump_pad_buffer, gdb_jump_pad_buffer_end)
12025 (collecting, gdb_collect, stop_tracing, flush_trace_buffer)
12026 (about_to_request_buffer_space, trace_buffer_is_full)
12027 (stopping_tracepoint, expr_eval_result, error_tracepoint)
12028 (tracepoints, tracing, trace_buffer_ctrl, trace_buffer_ctrl_curr)
12029 (trace_buffer_lo, trace_buffer_hi, traceframe_read_count)
12030 (traceframe_write_count, traceframes_created)
12031 (trace_state_variables)
12032 New renaming defines.
12033 (struct ipa_sym_addresses): New.
12034 (STRINGIZE_1, STRINGIZE, IPA_SYM): New.
12035 (symbol_list): New.
12036 (ipa_sym_addrs): New.
12037 (all_tracepoint_symbols_looked_up): New.
12038 (in_process_agent_loaded): New.
12039 (write_e_ipa_not_loaded): New.
12040 (maybe_write_ipa_not_loaded): New.
12041 (tracepoint_look_up_symbols): New.
12042 (debug_threads) [IN_PROCESS_AGENT]: New.
12043 (read_inferior_memory) [IN_PROCESS_AGENT]: New.
12044 (UNKNOWN_SIDE_EFFECTS): New.
12045 (stop_tracing): New.
12046 (flush_trace_buffer): New.
12047 (stop_tracing_bkpt): New.
12048 (flush_trace_buffer_bkpt): New.
12049 (read_inferior_integer): New.
12050 (read_inferior_uinteger): New.
12051 (read_inferior_data_pointer): New.
12052 (write_inferior_data_pointer): New.
12053 (write_inferior_integer): New.
12054 (write_inferior_uinteger): New.
12055 (struct collect_static_trace_data_action): Delete.
12056 (enum tracepoint_type): New.
12057 (struct tracepoint) <type>: New field `type'.
12058 <actions_str, step_actions, step_actions_str>: Only include in
12059 GDBserver.
12060 <orig_size, obj_addr_on_target, adjusted_insn_addr>
12061 <adjusted_insn_addr_end, jump_pad, jump_pad_end>: New fields.
12062 (tracepoints): Use IP_AGENT_EXPORT.
12063 (last_tracepoint): Don't include in the IPA.
12064 (stopping_tracepoint): Use IP_AGENT_EXPORT.
12065 (trace_buffer_is_full): Use IP_AGENT_EXPORT.
12066 (alloced_trace_state_variables): New.
12067 (trace_state_variables): Use IP_AGENT_EXPORT.
12068 (traceframe_t): Delete unused variable.
12069 (circular_trace_buffer): Don't include in the IPA.
12070 (trace_buffer_start): Delete.
12071 (struct trace_buffer_control): New.
12072 (trace_buffer_free): Delete.
12073 (struct ipa_trace_buffer_control): New.
12074 (GDBSERVER_FLUSH_COUNT_MASK, GDBSERVER_FLUSH_COUNT_MASK_PREV)
12075 (GDBSERVER_FLUSH_COUNT_MASK_CURR, GDBSERVER_UPDATED_FLUSH_COUNT_BIT):
12076 New.
12077 (trace_buffer_ctrl): New.
12078 (TRACE_BUFFER_CTRL_CURR): New.
12079 (trace_buffer_start, trace_buffer_free, trace_buffer_end_free):
12080 Reimplement as macros.
12081 (trace_buffer_wrap): Delete.
12082 (traceframe_write_count, traceframe_read_count)
12083 (traceframes_created, tracing): Use IP_AGENT_EXPORT.
12084 (struct tracepoint_hit_ctx) <type>: New field.
12085 (struct fast_tracepoint_ctx): New.
12086 (memory_barrier): New.
12087 (cmpxchg): New.
12088 (record_tracepoint_error): Update atomically in the IPA.
12089 (clear_inferior_trace_buffer): New.
12090 (about_to_request_buffer_space): New.
12091 (trace_buffer_alloc): Handle GDBserver and inferior simulatenous
12092 updating the same buffer.
12093 (add_tracepoint): Default the tracepoint's type to trap
12094 tracepoint, and orig_size to -1.
12095 (get_trace_state_variable) [IN_PROCESS_AGENT]: Handle allocated
12096 internal variables.
12097 (create_trace_state_variable): New parameter `gdb'. Handle it.
12098 (clear_installed_tracepoints): Clear fast tracepoint jumps.
12099 (cmd_qtdp): Handle fast tracepoints.
12100 (cmd_qtdv): Adjust.
12101 (max_jump_pad_size): New.
12102 (gdb_jump_pad_head): New.
12103 (get_jump_space_head): New.
12104 (claim_jump_space): New.
12105 (sort_tracepoints): New.
12106 (MAX_JUMP_SIZE): New.
12107 (cmd_qtstart): Handle fast tracepoints. Sync tracepoints with the
12108 IPA.
12109 (stop_tracing) [IN_PROCESS_AGENT]: Don't include the tdisconnected
12110 support. Upload fast traceframes, and delete internal IPA
12111 breakpoints.
12112 (stop_tracing_handler): New.
12113 (flush_trace_buffer_handler): New.
12114 (cmd_qtstop): Upload fast tracepoints.
12115 (response_tracepoint): Handle fast tracepoints.
12116 (tracepoint_finished_step): Upload fast traceframes. Set the
12117 tracepoint hit context's tracepoint type.
12118 (handle_tracepoint_bkpts): New.
12119 (tracepoint_was_hit): Set the tracepoint hit context's tracepoint
12120 type. Add comment about fast tracepoints.
12121 (collect_data_at_tracepoint) [IN_PROCESS_AGENT]: Don't access the
12122 non-existing action_str field.
12123 (get_context_regcache): Handle fast tracepoints.
12124 (do_action_at_tracepoint) [!IN_PROCESS_AGENT]: Don't write the PC
12125 to the regcache.
12126 (fast_tracepoint_from_jump_pad_address): New.
12127 (fast_tracepoint_from_ipa_tpoint_address): New.
12128 (collecting_t): New.
12129 (force_unlock_trace_buffer): New.
12130 (fast_tracepoint_collecting): New.
12131 (collecting): New.
12132 (gdb_collect): New.
12133 (write_inferior_data_ptr): New.
12134 (target_tp_heap): New.
12135 (target_malloc): New.
12136 (download_agent_expr): New.
12137 (UALIGN): New.
12138 (download_tracepoints): New.
12139 (download_trace_state_variables): New.
12140 (upload_fast_traceframes): New.
12141 (IPA_FIRST_TRACEFRAME): New.
12142 (IPA_NEXT_TRACEFRAME_1): New.
12143 (IPA_NEXT_TRACEFRAME): New.
12144 [IN_PROCESS_AGENT]: Include sys/mman.h and fcntl.h.
12145 [IN_PROCESS_AGENT] (gdb_tp_heap_buffer, gdb_jump_pad_buffer)
12146 (gdb_jump_pad_buffer_end): New.
12147 [IN_PROCESS_AGENT] (initialize_tracepoint_ftlib): New.
12148 (initialize_tracepoint): Adjust.
12149 [IN_PROCESS_AGENT]: Allocate the IPA heap, and jump pad scratch
12150 buffer. Initialize the low module.
12151 * utils.c (PREFIX, TOOLNAME): New.
12152 (malloc_failure): Use PREFIX.
12153 (error): In the IPA, an error causes an exit.
12154 (fatal, warning): Use PREFIX.
12155 (internal_error): Use TOOLNAME.
12156 (NUMCELLS): Increase to 10.
12157 * configure, config.in: Regenerate.
12158
121592010-06-01 Pedro Alves <pedro@codesourcery.com>
12160
12161 * server.c (handle_query) <qSupported>: Do two passes over the
12162 qSupported string to avoid nesting strtok.
12163
121642010-05-28 Jan Kratochvil <jan.kratochvil@redhat.com>
12165
12166 * Makefile.in (SFILES): Add $(srcdir)/proc-service.list.
12167 (CDEPS): New.
12168 * configure.ac (RDYNAMIC): New AC_MSG_CHECKING wrapping. Test also
12169 -Wl,--dynamic-list.
12170 * configure: Regenerate.
12171 * proc-service.list: New.
12172
121732010-05-28 Jan Kratochvil <jan.kratochvil@redhat.com>
12174
12175 * linux-low.c (linux_core_of_thread): Fix crash on invalid CONTENT.
12176 New comment.
12177
121782010-05-26 Ozkan Sezer <sezeroz@gmail.com>
12179
12180 * gdbreplay.c (remote_open): Check error return from socket() call by
12181 its equality to -1 not by it being negative.
12182 * remote-utils.c (remote_open): Likewise.
12183
121842010-05-23 Pedro Alves <pedro@codesourcery.com>
12185
12186 * config.h: Regenerate.
12187
121882010-05-19 Maxim Kuvyrkov <maxim@codesourcery.com>
12189
12190 * linux-m68k-low.c (ps_get_thread_area): Don't define if kernel
12191 doesn't provide PTRACE_GET_THREAD_AREA.
12192
121932010-05-19 Maxim Kuvyrkov <maxim@codesourcery.com>
12194
12195 * linux-m68k-low.c: Include <asm/ptrace.h>
12196 (ps_get_thread_area): Implement.
12197
121982010-05-03 Doug Evans <dje@google.com>
12199
12200 * event-loop.c (struct callback_event): New struct.
12201 (callback_list): New global.
12202 (append_callback_event, delete_callback_event): New functions.
12203 (process_callback): New function.
12204 (start_event_loop): Call it.
12205 * remote-utils.c (NOT_SCHEDULED): Define.
12206 (readchar_buf, readchar_bufcnt, readchar_bufp): New static globals,
12207 moved out of readchar.
12208 (readchar): Rewrite. Call reschedule before returning.
12209 (reset_readchar): New function.
12210 (remote_close): Call it.
12211 (process_remaining, reschedule): New functions.
12212 * server.h (callback_handler_func): New typedef.
12213 (append_callback_event, delete_callback_event): Declare.
12214
122152010-05-03 Pedro Alves <pedro@codesourcery.com>
12216
12217 * proc-service.c (ps_pglobal_lookup): Use
12218 thread_db_look_up_one_symbol.
12219 * remote-utils.c (look_up_one_symbol): Add new `may_ask_gdb'
12220 parameter. Use it instead of all_symbols_looked_up.
12221 * server.h (struct process_info) <all_symbols_looked_up>: Delete
12222 field.
12223 (all_symbols_looked_up): Don't declare.
12224 (look_up_one_symbol): Add new `may_ask_gdb' parameter.
12225 * thread-db.c (struct thread_db) <all_symbols_looked_up>: New
12226 field.
12227 (thread_db_look_up_symbols): Adjust call to look_up_one_symbol.
12228 Set all_symbols_looked_up here.
12229 (thread_db_look_up_one_symbol): New.
12230 (thread_db_get_tls_address): Adjust.
12231 (thread_db_load_search, try_thread_db_load_1): Always allocate the
12232 thread_db object on the heap, and tentatively set it in the
12233 process structure.
12234 (thread_db_init): Don't set all_symbols_looked_up here.
12235 * linux-low.h (thread_db_look_up_one_symbol): Declare.
12236
122372010-05-03 Pedro Alves <pedro@codesourcery.com>
12238
12239 * linux-low.c (linux_kill, linux_detach): Adjust.
12240 (status_pending_p_callback): Remove redundant statement. Check
12241 for !TARGET_WAITIKIND_IGNORE, instead of
12242 TARGET_WAITKIND_STOPPED.
12243 (handle_tracepoints): Make sure LWP is locked. Adjust.
12244 (linux_wait_for_event_1): Adjust.
12245 (linux_cancel_breakpoints): New.
12246 (unsuspend_one_lwp): New.
12247 (unsuspend_all_lwps): New.
12248 (linux_wait_1): If finishing a step-over, unsuspend all lwps.
12249 (send_sigstop_callback): Change return type to int, add new
12250 `except' parameter and handle it.
12251 (suspend_and_send_sigstop_callback): New.
12252 (stop_all_lwps): Add new `suspend' and `expect' parameters, and
12253 pass them down. If SUSPEND, also increment the lwp's suspend
12254 count.
12255 (linux_resume_one_lwp): Add notice about resuming a suspended LWP.
12256 (need_step_over_p): Don't consider suspended LWPs.
12257 (start_step_over): Adjust.
12258 (proceed_one_lwp): Change return type to int, add new `except'
12259 parameter and handle it.
12260 (unsuspend_and_proceed_one_lwp): New.
12261 (proceed_all_lwps): Use find_inferior instead of
12262 for_each_inferior.
12263 (unstop_all_lwps): Add `unsuspend' parameter. If UNSUSPEND, them
12264 also decrement the suspend count of LWPs. Pass `except' down,
12265 instead of hacking its suspend count.
12266 (linux_pause_all): Add `freeze' parameter. Adjust.
12267 (linux_unpause_all): New.
12268 (linux_target_ops): Install linux_unpause_all.
12269 * server.c (handle_status): Adjust.
12270 * target.h (struct target_ops): New fields `unpause_all' and
12271 `cancel_breakpoints'. Add new parameter to `pause_all'.
12272 (pause_all): Add new `freeze' parameter.
12273 (unpause_all): New.
12274 (cancel_breakpoints): New.
12275 * tracepoint.c (clear_installed_tracepoints): Pause threads, and
12276 cancel breakpoints.
12277 (cmd_qtstart): Pause threads.
12278 (stop_tracing): Pause threads, and cancel breakpoints.
12279 * win32-low.c (win32_target_ops): Adjust.
12280
122812010-05-03 Pedro Alves <pedro@codesourcery.com>
12282
12283 * linux-low.c (linux_wait_for_event_1): Move passing the signal to
12284 the inferior right away from here...
12285 (linux_wait_1): ... to here, and adjust to check the thread's
12286 last_resume_kind instead of the lwp's step or stop_expected flags.
12287
122882010-05-02 Pedro Alves <pedro@codesourcery.com>
12289
12290 * README: Use consistent `GDB' and `GDBserver' spellings.
12291
122922010-05-02 Pedro Alves <pedro@codesourcery.com>
12293
12294 * linux-low.c (linux_kill_one_lwp): Assume the lwp is stopped.
12295 (linux_kill): Stop all lwps here. Don't delete the main lwp here.
12296 (linux_detach_one_lwp): Assume the lwp is stopped.
12297 (any_thread_of): Delete.
12298 (linux_detach): Stop all lwps here. Don't blindly delete all
12299 breakpoints.
12300 (delete_lwp_callback): New.
12301 (linux_mourn): Delete all lwps of the process that is gone.
12302 (linux_wait_1): Don't delete the last lwp of the process here.
12303 * mem-break.h (mark_breakpoints_out): Declare.
12304 * mem-break.c (mark_breakpoints_out): New.
12305 (free_all_breakpoints): Use it.
12306 * server.c (handle_target_event): If the process is gone, mark
12307 breakpoints out.
12308 * thread-db.c (struct thread_db) <create_bp>: New field.
12309 (thread_db_enable_reporting): Fix prototype. Store a thread event
12310 breakpoint reference in the thread_db struct.
12311 (thread_db_load_search): Clear the thread_db object.
12312 (try_thread_db_load_1): Ditto.
12313 (switch_to_process): New.
12314 (disable_thread_event_reporting): Use it.
12315 (remove_thread_event_breakpoints): New.
12316 (thread_db_detach, thread_db_mourn): Use it.
12317
123182010-05-01 Pedro Alves <pedro@codesourcery.com>
12319
12320 * linux-low.c (linux_enable_event_reporting): New.
12321 (linux_wait_for_event_1, handle_extended_wait): Use it.
12322
123232010-04-30 Pedro Alves <pedro@codesourcery.com>
12324
12325 * linux-low.c (linux_kill_one_lwp, linux_kill)
12326 (linux_detach_one_lwp): Adjust to send_sigstop interface change.
12327 (send_sigstop): Take an lwp_info as parameter instead. Queue a
12328 SIGSTOP even if the LWP is stopped.
12329 (send_sigstop_callback): New.
12330 (stop_all_lwps): Use send_sigstop_callback instead.
12331 (linux_resume_one_thread): Adjust.
12332 (proceed_one_lwp): Still proceed an LWP that the client has
12333 requested to stop, if we haven't reported it as stopped yet. Make
12334 sure that LWPs the client want stopped, have a pending SIGSTOP.
12335
123362010-04-26 Doug Evans <dje@google.com>
12337
12338 * server.c (handle_general_set): Make static.
12339
12340 * remote-utils.c (putpkt_binary_1): Call readchar instead of read.
12341 Print received char after testing for error/eof instead of before.
12342 (input_interrupt): Tweak comment.
12343
123442010-04-23 Doug Evans <dje@google.com>
12345
12346 * server.c (start_inferior): Print inferior argv if --debug.
12347
123482010-04-21 Aleksandar Ristovski <aristovski@qnx.com>
12349
12350 * Makefile.in (nto_low_h nto-low.o nto-x86-low.o): New dependency lists.
12351 * nto-x86-low.c: Include server.h
12352
123532010-04-20 Pierre Muller <muller@ics.u-strasbg.fr>
12354
12355 * win32-i386-low.c: Use __x86_64__ macro instead of __x86_64 to
12356 be consistent with other sources of this directory.
12357 (init_registers_amd64): Correct name of source file of this function
12358 in the comment.
12359
123602010-04-19 Pierre Muller <muller@ics.u-strasbg.fr>
12361
12362 * configure.srv (x86_64-*-mingw*): New configuration for Windows
12363 64-bit executables.
12364
123652010-04-19 Pierre Muller <muller@ics.u-strasbg.fr>
12366
12367 * win32-i386-low.c: Add 64-bit support.
12368 (CONTEXT_EXTENDED_REGISTERS): Set macro to zero if not exisiting.
12369 (init_registers_amd64): Declare.
12370 (mappings): Add 64-bit version of array.
12371 (init_windows_x86): New function.
12372 (the_low_target): Change init_arch field to init_windows_x86.
12373
123742010-04-19 Pierre Muller <muller@ics.u-strasbg.fr>
12375
12376 * win32-low.c: Adapt to support also 64-bit architecture.
12377 (child_xfer_memory): Use uintptr_t type for local variable `addr'.
12378 (get_image_name): Use SIZE_T type for local variable `done'.
12379 (psapi_get_dll_name): Use LPVOID type for parameter `BaseAddress'.
12380 (toolhelp_get_dll_name): Idem.
12381 (handle_load_dll): Use CORE_ADDR type for local variable `load_addr'.
12382 Use uintptr_t typecast to avoid warning.
12383 (handle_unload_dll): Use uintptr_t typecast to avoid warning.
12384 (handle_exception): Use phex_nz to avoid warning.
12385 (win32_wait): Remove unused local variable `process'.
12386
123872010-04-19 Pierre Muller <muller@ics.u-strasbg.fr>
12388
12389 * configure.srv (srv_amd64_regobj): Replace `x86-64-avx.o' by
12390 `amd64-avx.o'.
12391
123922010-04-17 Pierre Muller <muller@ics.u-strasbg.fr>
12393
12394 * configure.ac: Use `ws2_32' library for srv_mingw.
12395 * configure: Regenerate.
12396 * gdbreplay.c: Include winsock2.h instead of winsock.h.
12397 * remote-utils.c: Likewise.
12398
123992010-04-17 H.J. Lu <hongjiu.lu@intel.com>
12400
12401 * linux-x86-low.c (xmltarget_amd64_linux_no_xml): Define only
12402 if __x86_64__ is defined.
12403
124042010-04-16 Pierre Muller <muller@ics.u-strasbg.fr>
12405
12406 * configure: Regenerate.
12407
124082010-04-16 Pierre Muller <muller@ics.u-strasbg.fr>
12409
12410 * server.c (handle_query): Handle 'qGetTIBAddr' query.
12411 * target.h (target_ops): New get_tib_address field.
12412 * win32-low.h (win32_thread_info): Add thread_local_base field.
12413 * win32-low.c (child_add_thread): Add tlb argument.
12414 Set thread_local_base field to TLB.
12415 (get_child_debug_event): Adapt to child_add_thread change.
12416 (win32_get_tib_address): New function.
12417 (win32_target_ops): Set get_tib_address field to
12418 win32_get_tib_address.
12419 * linux-low.c (linux_target_ops): Set get_tib_address field to NULL.
12420
124212010-04-12 Pedro Alves <pedro@codesourcery.com>
12422
12423 * linux-low.c (linux_mourn): Also remove the process.
12424 * server.c (handle_target_event): Don't remove the process here.
12425 * nto-low.c (nto_mourn): New.
12426 (nto_target_ops): Install it.
12427 * spu-low.c (spu_mourn): New.
12428 (spu_target_ops): Install it.
12429 * win32-low.c (win32_mourn): New.
12430 (win32_target_ops): Install it.
12431
124322010-04-12 Pedro Alves <pedro@codesourcery.com>
12433
12434 * server.h (buffer_xml_printf): Remove redundant `;'.
12435
124362010-04-12 Pedro Alves <pedro@codesourcery.com>
12437
12438 * regcache.c (set_register_cache): Invalidate regcaches before
12439 changing the register cache layout.
12440 (regcache_invalidate_one): Allow a NULL regcache.
12441 * linux-x86-low.c (x86_linux_update_xmltarget): Invalidate
12442 regcaches before changing the register cache layout or the target
12443 regsets.
12444
124452010-04-12 H.J. Lu <hongjiu.lu@intel.com>
12446
12447 * linux-x86-low.c (x86_linux_update_xmltarget): Avoid unused
12448 variable warning on Linux/x86-64.
12449
124502010-04-11 Pedro Alves <pedro@codesourcery.com>
12451
12452 GDBserver disconnected tracing support.
12453
12454 * linux-low.c (linux_remove_process): Delete.
12455 (add_lwp): Don't set last_resume_kind here.
12456 (linux_kill): Use `mourn'.
12457 (linux_detach): Use `thread_db_detach', and `mourn'.
12458 (linux_mourn): New.
12459 (linux_attach_lwp_1): Adjust comment.
12460 (linux_attach): last_resume_kind moved the thread_info; adjust.
12461 (status_pending_p_callback): Adjust.
12462 (linux_wait_for_event_1): Adjust.
12463 (count_events_callback, select_singlestep_lwp_callback)
12464 (select_event_lwp_callback, cancel_breakpoints_callback)
12465 (db_wants_lwp_stopped, linux_wait_1, need_step_over_p)
12466 (proceed_one_lwp): Adjust.
12467 (linux_async): Add debug output.
12468 (linux_thread_stopped): New.
12469 (linux_pause_all): New.
12470 (linux_target_ops): Install linux_mourn, linux_thread_stopped and
12471 linux_pause_all.
12472 * linux-low.h (struct lwp_info): Delete last_resume_kind field.
12473 (thread_db_free): Delete declaration.
12474 (thread_db_detach, thread_db_mourn): Declare.
12475 * thread-db.c (thread_db_init): Use thread_db_mourn.
12476 (thread_db_free): Delete, split in two.
12477 (disable_thread_event_reporting): New.
12478 (thread_db_detach): New.
12479 (thread_db_mourn): New.
12480
12481 * server.h (struct thread_info) <last_resume_kind>: New field.
12482 <attached>: Add comment.
12483 <gdb_detached>: New field.
12484 (handler_func): Change return type to int.
12485 (handle_serial_event, handle_target_event): Ditto.
12486 (gdb_connected): Declare.
12487 (tracing): Delete.
12488 (disconnected_tracing): Declare.
12489 (stop_tracing): Declare.
12490
12491 * server.c (handle_query) <qSupported>: Report support for
12492 disconnected tracing.
12493 (queue_stop_reply_callback): Account for running threads.
12494 (gdb_wants_thread_stopped): New.
12495 (gdb_wants_all_threads_stopped): New.
12496 (gdb_reattached_process): New.
12497 (handle_status): Clear the `gdb_detached' flag of all processes.
12498 In all-stop, stop all threads.
12499 (main): Be sure to leave tfind mode. Handle disconnected tracing.
12500 (process_serial_event): If the remote connection breaks, or if an
12501 exit was forced with "monitor exit", force an event loop exit.
12502 Handle disconnected tracing on detach.
12503 (handle_serial_event): Adjust.
12504 (handle_target_event): If GDB isn't connected, forward events back
12505 to the inferior, unless the last process exited, in which case,
12506 exit gdbserver. Adjust interface.
12507
12508 * remote-utils.c (remote_open): Don't block in accept. Instead
12509 register an event loop source on the listen socket file
12510 descriptor. Refactor bits into ...
12511 (listen_desc): ... this new global.
12512 (gdb_connected): ... this new function.
12513 (enable_async_notification): ... this new function.
12514 (handle_accept_event): ... this new function.
12515 (remote_close): Clear remote_desc.
12516
12517 * inferiors.c (add_thread): Set the new thread's last_resume_kind.
12518
12519 * target.h (struct target_ops) <mourn, thread_stopped, pause_all>:
12520 New fields.
12521 (mourn_inferior): Define.
12522 (target_process_qsupported): Avoid the dangling else problem.
12523 (thread_stopped): Define.
12524 (pause_all): Define.
12525 (target_waitstatus_to_string): Declare.
12526 * target.c (target_waitstatus_to_string): New.
12527
12528 * tracepoint.c (tracing): Make extern.
12529 (disconnected_tracing): New.
12530 (stop_tracing): Make extern. Handle tracing stops due to GDB
12531 disconnecting.
12532 (cmd_qtdisconnected): New.
12533 (cmd_qtstatus): Report disconnected tracing status in trace reply.
12534 (handle_tracepoint_general_set): Handle QTDisconnected.
12535
12536 * event-loop.c (event_handler_func): Change return type to int.
12537 (process_event): Bail out if the event handler wants the event
12538 loop to stop.
12539 (handle_file_event): Ditto.
12540 (start_event_loop): Bail out if the event handler wants the event
12541 loop to stop.
12542
12543 * nto-low.c (nto_target_ops): Adjust.
12544 * spu-low.c (spu_wait): Don't remove the process here.
12545 (spu_target_ops): Adjust.
12546 * win32-low.c (win32_wait): Don't remove the process here.
12547 (win32_target_ops): Adjust.
12548
125492010-04-11 Pedro Alves <pedro@codesourcery.com>
12550
12551 * regcache.c (realloc_register_cache): Invalidate inferior's
12552 regcache before recreating it.
12553
125542010-04-09 Pedro Alves <pedro@codesourcery.com>
12555
12556 * tracepoint.c (cmd_qtstatus): Report trace buffer circularity.
12557
125582010-04-09 Stan Shebs <stan@codesourcery.com>
12559 Pedro Alves <pedro@codesourcery.com>
12560
12561 * server.h (LONGEST): New.
12562 (struct thread_info) <while_stepping>: New field.
12563 (unpack_varlen_hex, xrealloc, pulongest, plongest, phex_nz):
12564 Declare.
12565 (initialize_tracepoint, handle_tracepoint_general_set)
12566 (handle_tracepoint_query, tracepoint_finished_step)
12567 (tracepoint_was_hit, release_while_stepping_state_list):
12568 (current_traceframe): Declare.
12569 * server.c (handle_general_set): Handle tracepoint packets.
12570 (read_memory): New.
12571 (write_memory): New.
12572 (handle_search_memory_1): Use read_memory.
12573 (handle_query): Report support for conditional tracepoints, trace
12574 state variables, and tracepoint sources. Handle tracepoint
12575 queries.
12576 (main): Initialize the tracepoints module.
12577 (process_serial_event): Handle traceframe reads/writes.
12578
12579 * linux-low.c (handle_tracepoints): New.
12580 (linux_wait_1): Call it.
12581 (linux_resume_one_lwp): Handle while-stepping.
12582 (linux_supports_tracepoints, linux_read_pc, linux_write_pc): New.
12583 (linux_target_ops): Install them.
12584 * linux-low.h (struct linux_target_ops) <supports_tracepoints>:
12585 New field.
12586 * linux-x86-low.c (x86_supports_tracepoints): New.
12587 (the_low_target). Install it.
12588
12589 * mem-break.h (delete_breakpoint): Declare.
12590 * mem-break.c (delete_breakpoint): Make external.
12591
12592 * target.h (struct target_ops): Add `supports_tracepoints',
12593 `read_pc', and `write_pc' fields.
12594 (target_supports_tracepoints): Define.
12595 * utils.c (xrealloc, decimal2str, pulongest, plongest, thirty_two)
12596 (phex_nz): New.
12597
12598 * regcache.h (struct regcache) <registers_owned>: New field.
12599 (init_register_cache, regcache_cpy): Declare.
12600 (regcache_read_pc, regcache_write_pc): Declare.
12601 (register_cache_size): Declare.
12602 (supply_regblock): Declare.
12603 * regcache.c (init_register_cache): New.
12604 (new_register_cache): Use it.
12605 (regcache_cpy): New.
12606 (register_cache_size): New.
12607 (supply_regblock): New.
12608 (regcache_read_pc, regcache_write_pc): New.
12609
12610 * tracepoint.c: New.
12611
12612 * Makefile.in (OBS): Add tracepoint.o.
12613 (tracepoint.o): New rule.
12614
126152010-04-08 H.J. Lu <hongjiu.lu@intel.com>
12616
12617 * Makefile.in (clean): Also remove i386-mmx.c i386-mmx-linux.c.
12618 (i386-mmx.o): New.
12619 (i386-mmx.c): Likewise.
12620 (i386-mmx-linux.o): Likewise.
12621 (i386-mmx-linux.c): Likewise.
12622
12623 * configure.srv (srv_i386_regobj): Add i386-mmx.o.
12624 (srv_i386_linux_regobj): Add i386-mmx-linux.o.
12625 (srv_i386_xmlfiles): Add i386/i386-mmx.xml.
12626 (srv_i386_linux_xmlfiles): Add i386/i386-mmx-linux.xml.
12627
12628 * linux-x86-low.c (init_registers_i386_mmx_linux): New.
12629 (x86_linux_update_xmltarget): Call init_registers_i386_mmx_linux
12630 and return if ptrace PTRACE_GETFPXREGS failed in 32bit.
12631
126322010-04-07 H.J. Lu <hongjiu.lu@intel.com>
12633
12634 * Makefile.in (clean): Updated.
12635 (i386-avx.o): New.
12636 (i386-avx.c): Likewise.
12637 (i386-avx-linux.o): Likewise.
12638 (i386-avx-linux.c): Likewise.
12639 (amd64-avx.o): Likewise.
12640 (amd64-avx.c): Likewise.
12641 (amd64-avx-linux.o): Likewise.
12642 (amd64-avx-linux.c): Likewise.
12643
12644 * configure.srv (srv_i386_regobj): Add i386-avx.o.
12645 (srv_i386_linux_regobj): Add i386-avx-linux.o.
12646 (srv_amd64_regobj): Add amd64-avx.o.
12647 (srv_amd64_linux_regobj): Add amd64-avx-linux.o.
12648 (srv_i386_32bit_xmlfiles): Add i386/32bit-avx.xml.
12649 (srv_i386_64bit_xmlfiles): Add i386/64bit-avx.xml.
12650 (srv_i386_xmlfiles): Add i386/i386-avx.xml.
12651 (srv_amd64_xmlfiles): Add i386/amd64-avx.xml.
12652 (srv_i386_linux_xmlfiles): Add i386/i386-avx-linux.xml.
12653 (srv_amd64_linux_xmlfiles): Add i386/amd64-avx-linux.xml.
12654
12655 * i387-fp.c: Include "i386-xstate.h".
12656 (i387_xsave): New.
12657 (i387_cache_to_xsave): Likewise.
12658 (i387_xsave_to_cache): Likewise.
12659 (x86_xcr0): Likewise.
12660
12661 * i387-fp.h (i387_cache_to_xsave): Likewise.
12662 (i387_xsave_to_cache): Likewise.
12663 (x86_xcr0): Likewise.
12664
12665 * linux-arm-low.c (target_regsets): Initialize nt_type to 0.
12666 * linux-crisv32-low.c (target_regsets): Likewise.
12667 * linux-m68k-low.c (target_regsets): Likewise.
12668 * linux-mips-low.c (target_regsets): Likewise.
12669 * linux-ppc-low.c (target_regsets): Likewise.
12670 * linux-s390-low.c (target_regsets): Likewise.
12671 * linux-sh-low.c (target_regsets): Likewise.
12672 * linux-sparc-low.c (target_regsets): Likewise.
12673 * linux-xtensa-low.c (target_regsets): Likewise.
12674
12675 * linux-low.c: Include <sys/uio.h>.
12676 (regsets_fetch_inferior_registers): Support nt_type.
12677 (regsets_store_inferior_registers): Likewise.
12678 (linux_process_qsupported): New.
12679 (linux_target_ops): Add linux_process_qsupported.
12680
12681 * linux-low.h (regset_info): Add nt_type.
12682 (linux_target_ops): Add process_qsupported.
12683
12684 * linux-x86-low.c: Include "i386-xstate.h", "elf/common.h"
12685 and <sys/uio.h>.
12686 (init_registers_i386_avx_linux): New.
12687 (init_registers_amd64_avx_linux): Likewise.
12688 (xmltarget_i386_linux_no_xml): Likewise.
12689 (xmltarget_amd64_linux_no_xml): Likewise.
12690 (PTRACE_GETREGSET): Likewise.
12691 (PTRACE_SETREGSET): Likewise.
12692 (x86_fill_xstateregset): Likewise.
12693 (x86_store_xstateregset): Likewise.
12694 (use_xml): Likewise.
12695 (x86_linux_update_xmltarget): Likewise.
12696 (x86_linux_process_qsupported): Likewise.
12697 (target_regsets): Add NT_X86_XSTATE entry and Initialize nt_type.
12698 (x86_arch_setup): Don't call init_registers_amd64_linux nor
12699 init_registers_i386_linux here. Call
12700 x86_linux_update_xmltarget.
12701 (the_low_target): Add x86_linux_process_qsupported.
12702
12703 * server.c (handle_query): Call target_process_qsupported.
12704
12705 * target.h (target_ops): Add process_qsupported.
12706 (target_process_qsupported): New.
12707
127082010-04-03 Pedro Alves <pedro@codesourcery.com>
12709
12710 * inferiors.c (add_thread): Set last_status kind to
12711 TARGET_WAITKIND_IGNORE.
12712 * linux-low.c (cancel_breakpoint): Remove unnecessary regcache
12713 fetch. Use ptid_of. Avoid unnecessary get_lwp_thread calls.
12714 (linux_wait_1): Move `thread' local definition to block that uses
12715 it. Don't NULL initialize `event_child'.
12716 (linux_resume_one_thread): Avoid unnecessary get_lwp_thread calls.
12717 Alway set the thread's last_status to TARGET_WAITKIND_IGNORE.
12718 * linux-x86-low.c (x86_breakpoint_at): Read raw memory.
12719
127202010-04-01 Pedro Alves <pedro@codesourcery.com>
12721
12722 * linux-low.c (get_stop_pc): Don't adjust the PC if stopped with
12723 an extended waitstatus, or by a watchpoint.
12724 (cancel_breakpoints_callback): Don't cancel a breakpoint if the
12725 thread was stepping or has been stopped by a watchpoint.
12726
127272010-04-01 Pedro Alves <pedro@codesourcery.com>
12728
12729 * mem-break.c (struct raw_breakpoint): New field shlib_disabled.
12730 (set_gdb_breakpoint_at): If GDB is inserting a breakpoint on top
12731 of another, then delete the previous, and validate all
12732 breakpoints.
12733 (validate_inserted_breakpoint): New.
12734 (delete_disabled_breakpoints): New.
12735 (validate_breakpoints): New.
12736 (check_mem_read): Validate breakpoints before trusting their
12737 shadow. Delete disabled breakpoints.
12738 (check_mem_write): Validate breakpoints before trusting they
12739 should be inserted. Delete disabled breakpoints.
12740 * mem-break.h (validate_breakpoints):
12741 * server.c (handle_query): Validate breakpoints when we see a
12742 qSymbol query.
12743
127442010-04-01 Pedro Alves <pedro@codesourcery.com>
12745
12746 * linux-low.c (linux_wait_1): Avoid setting need_step_over is
12747 there's a GDB breakpoint at stop_pc. Always report a trap to GDB
12748 if we could tell there's a GDB breakpoint at stop_pc.
12749 (need_step_over_p): Don't do a step over if we find a GDB
12750 breakpoint at the resume PC.
12751
12752 * mem-break.c (struct raw_breakpoint): New.
12753 (enum bkpt_type): New type `gdb_breakpoint'.
12754 (struct breakpoint): Delete the `PC', `old_data' and `inserted'
12755 fields. New field `raw'.
12756 (find_raw_breakpoint_at): New.
12757 (set_raw_breakpoint_at): Handle refcounting. Create a raw
12758 breakpoint instead.
12759 (set_breakpoint_at): Adjust.
12760 (delete_raw_breakpoint): New.
12761 (release_breakpoint): New.
12762 (delete_breakpoint): Rename to...
12763 (delete_breakpoint_1): ... this. Add proc parameter. Use
12764 release_breakpoint. Return ENOENT.
12765 (delete_breakpoint): Reimplement.
12766 (find_breakpoint_at): Delete.
12767 (find_gdb_breakpoint_at): New.
12768 (delete_breakpoint_at): Delete.
12769 (set_gdb_breakpoint_at): New.
12770 (delete_gdb_breakpoint_at): New.
12771 (gdb_breakpoint_here): New.
12772 (set_reinsert_breakpoint): Use release_breakpoint.
12773 (uninsert_breakpoint): Rename to ...
12774 (uninsert_raw_breakpoint): ... this.
12775 (uninsert_breakpoints_at): Adjust to handle raw breakpoints.
12776 (reinsert_raw_breakpoint): Change parameter type to
12777 raw_breakpoint.
12778 (reinsert_breakpoints_at): Adjust to handle raw breakpoints
12779 instead.
12780 (check_breakpoints): Adjust. Use release_breakpoint.
12781 (breakpoint_here): Rewrite using find_raw_breakpoint_at.
12782 (breakpoint_inserted_here): Ditto.
12783 (check_mem_read): Adjust to iterate over raw breakpoints instead.
12784 Don't trust the breakpoint's shadow if it is not inserted.
12785 (check_mem_write): Adjust to iterate over raw breakpoints instead.
12786 (delete_all_breakpoints): Adjust.
12787 (free_all_breakpoints): Mark all breakpoints as uninserted, and
12788 use delete_breakpoint_1.
12789
12790 * mem-break.h (breakpoints_supported): Delete declaration.
12791 (set_gdb_breakpoint_at): Declare.
12792 (gdb_breakpoint_here): Declare.
12793 (delete_breakpoint_at): Delete.
12794 (delete_gdb_breakpoint_at): Declare.
12795
12796 * server.h (struct raw_breakpoint): Forward declare.
12797 (struct process_info): New field `raw_breakpoints'.
12798
12799 * linux-x86-low.c (x86_insert_point, x86_remote_point): Handle Z0
12800 breakpoints.
12801
128022010-03-24 Pedro Alves <pedro@codesourcery.com>
12803
12804 * linux-low.c (status_pending_p_callback): Fix comment.
12805 (linux_wait_for_event_1): Move most of the internal breakpoint
12806 handling from here...
12807 (linux_wait_1): ... to here.
12808 (count_events_callback): New.
12809 (select_singlestep_lwp_callback): New.
12810 (select_event_lwp_callback): New.
12811 (cancel_breakpoints_callback): New.
12812 (select_event_lwp): New.
12813 (linux_wait_1): Simplify internal breakpoint handling. Give equal
12814 priority to all LWPs that have had events that should be reported
12815 to the client. Cancel breakpoints when about to reporting the
12816 event to the client, not while stopping lwps. No longer cancel
12817 finished single-steps here.
12818 (cancel_finished_single_step): Delete.
12819 (cancel_finished_single_steps): Delete.
12820
128212010-03-24 Pedro Alves <pedro@codesourcery.com>
12822
12823 * mem-break.c (enum bkpt_type): New.
12824 (struct breakpoint): New field `type'.
12825 (set_breakpoint_at): Change return type to struct breakpoint
12826 pointer. Set type to `other_breakpoint' by default.
12827 (delete_breakpoint): Rewrite, supporting more than one breakpoint
12828 in the breakpoint list.
12829 (delete_reinsert_breakpoints): Only delete reinsert breakpoints.
12830 (reinsert_breakpoint): Rename to ...
12831 (reinsert_raw_breakpoint): ... this.
12832 (reinsert_breakpoints_at): Adjust.
12833 * mem-break.h (struct breakpoint): Declare.
12834 (set_breakpoint_at): Change return type to struct breakpoint
12835 pointer.
12836
128372010-03-24 Pedro Alves <pedro@codesourcery.com>
12838
12839 * server.c (handle_query): Assign, not compare.
12840
128412010-03-24 Pedro Alves <pedro@codesourcery.com>
12842
12843 Teach linux gdbserver to step-over-breakpoints.
12844
12845 * linux-low.c (can_hardware_single_step): New.
12846 (supports_breakpoints): New.
12847 (handle_extended_wait): If stopping threads, read the stop pc of
12848 the new cloned LWP.
12849 (get_pc): New.
12850 (get_stop_pc): Add `lwp' parameter. Handle it. Bail out if the
12851 low target doesn't support retrieving the PC.
12852 (add_lwp): Set last_resume_kind to resume_continue.
12853 (linux_attach_lwp_1): Adjust comments. Always set stop_expected.
12854 (linux_attach): Don't clear stop_expected. Set the lwp's
12855 last_resume_kind to resume_stop.
12856 (linux_detach_one_lwp): Don't check for removed breakpoints.
12857 (check_removed_breakpoint): Delete.
12858 (status_pending_p): Rename to ...
12859 (status_pending_p_callback): ... this. Don't check for removed
12860 breakpoints. Don't consider threads that are stopped from GDB's
12861 perspective.
12862 (linux_wait_for_lwp): Always read the stop_pc here.
12863 (cancel_breakpoint): New.
12864 (step_over_bkpt): New global.
12865 (linux_wait_for_event_1): Implement stepping over breakpoints.
12866 (gdb_wants_lwp_stopped): New.
12867 (gdb_wants_all_stopped): New.
12868 (linux_wait_1): Tag threads as gdb-wants-stopped. Cancel finished
12869 single-step traps here. Store the thread's last reported target
12870 wait status.
12871 (send_sigstop): Don't clear stop_expected. Always set it,
12872 instead.
12873 (mark_lwp_dead): Remove reference to pending_is_breakpoint.
12874 (cancel_finished_single_step): New.
12875 (cancel_finished_single_steps): New.
12876 (wait_for_sigstop): Don't cancel finished single-step traps here.
12877 (linux_resume_one_lwp): Don't check for removed breakpoints.
12878 Don't set `step' on non-hardware step archs.
12879 (linux_set_resume_request): Ignore resume_stop requests if already
12880 stopping or stopped. Set the lwp's last_resume_kind.
12881 (resume_status_pending_p): Don't check for removed breakpoints.
12882 (need_step_over_p): New.
12883 (start_step_over): New.
12884 (finish_step_over): New.
12885 (linux_resume_one_thread): Always queue a sigstop for resume_stop
12886 requests. Clear the thread's last reported target waitstatus.
12887 Don't use the `suspended' flag. Don't consider pending breakpoints.
12888 (linux_resume): Start a step-over if necessary.
12889 (proceed_one_lwp): New.
12890 (proceed_all_lwps): New.
12891 (unstop_all_lwps): New.
12892 * linux-low.h (struct lwp_info): Rewrite comment for the
12893 `suspended' flag. Add the `stop_pc' field. Delete the
12894 `pending_stop_pc' field. Tweak the `stepping' flag's comment.
12895 Add `'last_resume_kind' and `need_step_over' fields.
12896 * inferiors.c (struct thread_info): Delete, moved elsewhere.
12897 * mem-break.c (struct breakpoint): Delete `reinserting' flag.
12898 Delete `breakpoint_to_reinsert' field. New flag `inserted'.
12899 (set_raw_breakpoint_at): New.
12900 (set_breakpoint_at): Rewrite to use it.
12901 (reinsert_breakpoint_handler): Delete.
12902 (set_reinsert_breakpoint): New.
12903 (reinsert_breakpoint_by_bp): Delete.
12904 (delete_reinsert_breakpoints): New.
12905 (uninsert_breakpoint): Rewrite.
12906 (uninsert_breakpoints_at): New.
12907 (reinsert_breakpoint): Rewrite.
12908 (reinsert_breakpoints_at): New.
12909 (check_breakpoints): Rewrite.
12910 (breakpoint_here): New.
12911 (breakpoint_inserted_here): New.
12912 (check_mem_read): Adjust.
12913 * mem-break.h (breakpoints_supported, breakpoint_here)
12914 (breakpoint_inserted_here, set_reinsert_breakpoint): Declare.
12915 (reinsert_breakpoint_by_bp): Delete declaration.
12916 (delete_reinsert_breakpoints): Declare.
12917 (reinsert_breakpoint): Delete declaration.
12918 (reinsert_breakpoints_at): Declare.
12919 (uninsert_breakpoint): Delete declaration.
12920 (uninsert_breakpoints_at): Declare.
12921 (check_breakpoints): Adjust prototype.
12922 * server.h: Adjust include order.
12923 (struct thread_info): Declare here. Add a `last_status' field.
12924
129252010-03-23 Michael Snyder <msnyder@vmware.com>
12926
12927 * server.c (crc32): New function.
12928 (handle_query): Add handling for 'qCRC:' request.
12929
129302010-03-23 Pedro Alves <pedro@codesourcery.com>
12931
12932 * linux-x86-low.c (x86_linux_prepare_to_resume): Clear DR6 if the
12933 lwp had been stopped by a watchpoint.
12934
129352010-03-16 Pedro Alves <pedro@codesourcery.com>
12936
12937 * server.h (internal_error): Declare.
12938 (gdb_assert, ASSERT_FUNCTION, gdb_assert_fail): Define.
12939 * utils.c (internal_error): New function.
12940
129412010-03-15 Andreas Schwab <schwab@redhat.com>
12942
12943 * configure.srv: Fix typo setting srv_regobj.
12944
129452010-03-15 Pedro Alves <pedro@codesourcery.com>
12946
12947 * linux-low.c (fetch_register): Avoid passing a non string literal
12948 format to `error'.
12949 (usr_store_inferior_registers): Ditto.
12950
129512010-03-14 Pedro Alves <pedro@codesourcery.com>
12952
12953 * linux-low.c (linux_write_memory): Bail out early if peeking
12954 memory failed.
12955
129562010-03-14 Pedro Alves <pedro@codesourcery.com>
12957
12958 * linux-low.h (struct lwp_info): New fields
12959 `stopped_by_watchpoint' and `stopped_data_address'.
12960 * linux-low.c (linux_wait_for_lwp): Check for watchpoint triggers
12961 here, and cache them in the lwp object.
12962 (wait_for_sigstop): Check stopped_by_watchpoint lwp field
12963 directly.
12964 (linux_resume_one_lwp): Clear the lwp's stopped_by_watchpoint
12965 field.
12966 (linux_stopped_by_watchpoint): Rewrite.
12967 (linux_stopped_data_address): Rewrite.
12968
129692010-03-06 Simo Melenius <simo.melenius@iki.fi>
12970
12971 * linux-low.c (linux_wait_for_lwp): Fetch the regcache after
12972 switching the current inferior, not before.
12973
129742010-03-01 H.J. Lu <hongjiu.lu@intel.com>
12975
12976 * Makefile.in (clean): Replace reg-i386.c, reg-x86-64.c,
12977 reg-i386-linux.c and reg-x86-64-linux.c with i386.c, amd64.c,
12978 i386-linux.c and amd64-linux.c.
12979 (reg-i386.o): Removed.
12980 (reg-i386.c): Likewise.
12981 (reg-i386-linux.o): Likewise.
12982 (reg-i386-linux.c): Likewise.
12983 (reg-x86-64.o): Likewise.
12984 (reg-x86-64.c): Likewise.
12985 (reg-x86-64-linux.o): Likewise.
12986 (reg-x86-64-linux.c): Likewise.
12987 (i386.o): New.
12988 (i386.c): Likewise.
12989 (i386-linux.o): Likewise.
12990 (i386-linux.c): Likewise.
12991 (amd64.o): Likewise.
12992 (amd64.c): Likewise.
12993 (amd64-linux.o): Likewise.
12994 (amd64-linux.c): Likewise.
12995
12996 * configure.srv (srv_i386_regobj): New.
12997 (srv_i386_linux_regobj): Likewise.
12998 (srv_amd64_regobj): Likewise.
12999 (srv_amd64_linux_regobj): Likewise.
13000 (srv_i386_32bit_xmlfiles): Likewise.
13001 (srv_i386_64bit_xmlfiles): Likewise.
13002 (srv_i386_xmlfiles): Likewise.
13003 (srv_amd64_xmlfiles): Likewise.
13004 (srv_i386_linux_xmlfiles): Likewise.
13005 (srv_amd64_linux_xmlfiles): Likewise.
13006 (i[34567]86-*-cygwin*): Set srv_regobj to $srv_i386_regobj. Set
13007 srv_xmlfiles to $srv_i386_xmlfiles.
13008 (i[34567]86-*-mingw32ce*): Likewise.
13009 (i[34567]86-*-mingw*): Likewise.
13010 (i[34567]86-*-nto*): Likewise.
13011 (i[34567]86-*-linux*): Set srv_regobj to $srv_i386_linux_regobj
13012 and $srv_amd64_linux_regobj. Set srv_xmlfiles to
13013 $srv_i386_linux_xmlfiles and $srv_amd64_linux_xmlfiles.
13014 (x86_64-*-linux*): Likewise.
13015
13016 * linux-x86-low.c (init_registers_x86_64_linux): Removed.
13017 (init_registers_amd64_linux): New.
13018 (x86_arch_setup): Replace init_registers_x86_64_linux with
13019 init_registers_amd64_linux.
13020
130212010-02-23 Maxim Kuvyrkov <maxim@codesourcery.com>
13022
13023 * configure.ac: Check for libdl. If it is not available link against
13024 static libthread_db.
13025 * configure: Regenerate.
13026
130272010-02-22 Pedro Alves <pedro@codesourcery.com>
13028
13029 PR9605
13030
13031 * i386-low.c (i386_length_and_rw_bits): Throw a fatal error if
13032 handing a read watchpoint.
13033 (i386_low_insert_watchpoint): Read watchpoints aren't supported.
13034
130352010-02-12 Doug Evans <dje@google.com>
13036
13037 * linux-low.c (linux_supports_tracefork_flag): Document.
13038 (linux_look_up_symbols): Add comment.
13039
130402010-02-03 H.J. Lu <hongjiu.lu@intel.com>
13041
13042 * regcache.c (supply_register): Clear regcache if buf is NULL.
13043
130442010-02-02 Nicolas Roche <roche@sourceware.org>
13045 Joel Brobecker <brobecker@adacore.com>
13046
13047 * inferiors.c (find_inferior): Add function documentation.
13048 (unloaded_dll): Handle the case where the unloaded dll has not
13049 been previously registered in the dll list.
13050
130512010-02-01 Daniel Jacobowitz <dan@codesourcery.com>
13052
13053 * linux-arm-low.c (thumb_breakpoint_len): Delete.
13054 (thumb2_breakpoint): New.
13055 (arm_breakpoint_at): Check for Thumb-2 breakpoints.
13056
130572010-01-29 Daniel Jacobowitz <dan@codesourcery.com>
13058
13059 * linux-low.c (get_stop_pc): Check for SIGTRAP.
13060 (linux_wait_for_event_1): Handle SIGILL and SIGSEGV as possible
13061 breakpoints.
13062
130632010-01-21 Pedro Alves <pedro@codesourcery.com>
13064
13065 * linux-ppc-low.c (ppc_arch_setup): Adjust to regcache changes.
13066
130672010-01-21 Jan Kratochvil <jan.kratochvil@redhat.com>
13068
13069 * linux-s390-low.c (s390_collect_ptrace_register)
13070 (s390_supply_ptrace_register): Adjust it for the new regcache parameter.
13071
130722010-01-21 Doug Evans <dje@google.com>
13073
13074 * linux-low.c (PTRACE_ARG3_TYPE): Change from long to void*.
13075 (PTRACE_ARG4_TYPE): New macro.
13076 (handle_extended_wait): Cast ptrace arg4 to PTRACE_ARG4_TYPE.
13077 (linux_wait_for_event_1, linux_resume_one_lwp): Ditto.
13078 (fetch_register): Cast to uintptr_t before casting to PTRACE_ARG3_TYPE.
13079 (usr_store_inferior_registers): Ditto.
13080 (linux_read_memory, linux_write_memory): Ditto.
13081 (linux_test_for_tracefork): Ditto.
13082
13083 * linux-arm-low.c: Remove redundant include of gdb_proc_service.h.
13084 Only include elf.h if gdb_proc_service.h didn't include linux/elf.h.
13085
130862010-01-21 Pedro Alves <pedro@codesourcery.com>
13087
13088 * proc-service.c (ps_lgetregs): Don't refetch registers from the
13089 target.
13090
130912010-01-21 Pedro Alves <pedro@codesourcery.com>
13092
13093 * spu-low.c (spu_fetch_registers, spu_store_registers): Change
13094 prototype to take a regcache. Adjust.
13095
130962010-01-20 Pedro Alves <pedro@codesourcery.com>
13097
13098 * regcache.h (struct thread_info): Forward declare.
13099 (struct regcache): New.
13100 (new_register_cache): Adjust prototype.
13101 (get_thread_regcache): Declare.
13102 (free_register_cache): Adjust prototype.
13103 (registers_to_string, registers_from_string): Ditto.
13104 (supply_register, supply_register_by_name, collect_register)
13105 (collect_register_as_string, collect_register_by_name): Ditto.
13106 * regcache.c (struct inferior_regcache_data): Delete.
13107 (get_regcache): Rename to ...
13108 (get_thread_regcache): ... this. Adjust. Switch inferior before
13109 fetching registers.
13110 (regcache_invalidate_one): Adjust.
13111 (regcache_invalidate): Fix prototype.
13112 (new_register_cache): Return the new register cache.
13113 (free_register_cache): Change prototype.
13114 (realloc_register_cache): Adjust.
13115 (registers_to_string): Change prototype to take a regcache. Adjust.
13116 (registers_from_string): Ditto.
13117 (register_data): Ditto.
13118 (supply_register): Ditto.
13119 (supply_register_by_name): Ditto.
13120 (collect_register): Ditto.
13121 (collect_register_as_string): Ditto.
13122 (collect_register_by_name): Ditto.
13123 * server.c (process_serial_event): Adjust.
13124 * linux-low.h (regset_fill_func, regset_store_func): Change
13125 prototype.
13126 (get_pc, set_pc, collect_ptrace_register, supply_ptrace_register):
13127 Change prototype.
13128 * linux-low.c (get_stop_pc): Adjust.
13129 (check_removed_breakpoint): Adjust.
13130 (linux_wait_for_event): Adjust.
13131 (linux_resume_one_lwp): Adjust.
13132 (fetch_register): Add regcache parameter. Adjust.
13133 (usr_store_inferior_registers): Ditto.
13134 (regsets_fetch_inferior_registers): Ditto.
13135 (regsets_store_inferior_registers): Ditto.
13136 (linux_fetch_registers, linux_store_registers): Ditto.
13137 * i387-fp.c (i387_cache_to_fsave): Change prototype to take a
13138 regcache. Adjust.
13139 (i387_fsave_to_cache, i387_cache_to_fxsave, i387_fxsave_to_cache):
13140 Ditto.
13141 * i387-fp.h (i387_cache_to_fsave, i387_fsave_to_cache): Change
13142 prototype to take a regcache.
13143 (i387_cache_to_fxsave, i387_fxsave_to_cache): Ditto.
13144 * remote-utils.c (convert_ascii_to_int, outreg)
13145 (prepare_resume_reply): Change prototype to take a regcache.
13146 Adjust.
13147 * target.h (struct target_ops) <fetch_registers, store_registers>:
13148 Change prototype to take a regcache.
13149 (fetch_inferior_registers, store_inferior_registers): Change
13150 prototype to take a regcache. Adjust.
13151 * proc-service.c (ps_lgetregs): Adjust.
13152 * linux-x86-low.c (x86_fill_gregset, x86_store_gregset)
13153 (x86_fill_fpregset, x86_store_fpregset, x86_fill_fpxregset)
13154 (x86_store_fpxregset, x86_get_pc, x86_set_pc): Change prototype to
13155 take a regcache. Adjust.
13156 * linux-arm-low.c (arm_fill_gregset, arm_store_gregset)
13157 (arm_fill_wmmxregset, arm_store_wmmxregset, arm_fill_vfpregset)
13158 (arm_store_vfpregset, arm_get_pc, arm_set_pc):
13159 (arm_breakpoint_at): Change prototype to take a regcache. Adjust.
13160 * linux-cris-low.c (cris_get_pc, cris_set_pc)
13161 (cris_cannot_fetch_register):
13162 (cris_breakpoint_at): Change prototype to take a regcache.
13163 Adjust.
13164 * linux-crisv32-low.c (cris_get_pc, cris_set_pc,
13165 cris_reinsert_addr, cris_write_data_breakpoint): Change prototype
13166 to take a regcache. Adjust.
13167 (cris_breakpoint_at, cris_insert_point, cris_remove_point):
13168 Adjust.
13169 * linux-m32r-low.c (m32r_get_pc, m32r_set_pc): Change prototype to
13170 take a regcache. Adjust.
13171 * linux-m68k-low.c (m68k_fill_gregset, m68k_store_gregset)
13172 (m68k_fill_fpregset, m68k_store_fpregset, m68k_get_pc,
13173 (m68k_set_pc): Change prototype to take a regcache. Adjust.
13174 * linux-mips-low.c (mips_get_pc):
13175 (mips_set_pc): Change prototype to take a regcache. Adjust.
13176 (mips_reinsert_addr): Adjust.
13177 (mips_collect_register): Change prototype to take a regcache.
13178 Adjust.
13179 (mips_supply_register):
13180 (mips_collect_register_32bit, mips_supply_register_32bit)
13181 (mips_fill_gregset, mips_store_gregset, mips_fill_fpregset)
13182 (mips_store_fpregset): Ditto.
13183 * linux-ppc-low.c (ppc_supply_ptrace_register)
13184 (ppc_supply_ptrace_register): Ditto.
13185 (parse_spufs_run): Adjust.
13186 (ppc_get_pc, ppc_set_pc, ppc_fill_gregset, ppc_fill_vsxregset)
13187 (ppc_store_vsxregset, ppc_fill_vrregset, ppc_store_vrregset)
13188 (ppc_fill_evrregset, ppc_store_evrregset): Change prototype to
13189 take a regcache. Adjust.
13190 * linux-s390-low.c (s390_collect_ptrace_register)
13191 (s390_supply_ptrace_register, s390_fill_gregset, s390_get_pc)
13192 (s390_set_pc): Change prototype to take a regcache. Adjust.
13193 (s390_arch_setup): Adjust.
13194 * linux-sh-low.c (sh_get_pc, sh_breakpoint_at)
13195 (sh_fill_gregset): Change prototype to take a regcache. Adjust.
13196 * linux-sparc-low.c (sparc_fill_gregset_to_stack)
13197 (sparc_fill_gregset, sparc_store_gregset_from_stack)
13198 (sparc_store_gregset, sparc_get_pc): Change prototype to take a
13199 regcache. Adjust.
13200 (sparc_breakpoint_at): Adjust.
13201 * linux-xtensa-low.c (xtensa_fill_gregset):
13202 (xtensa_store_gregset):
13203 (xtensa_fill_xtregset, xtensa_store_xtregset, xtensa_get_pc)
13204 (xtensa_set_pc): Change prototype to take a regcache. Adjust.
13205 * nto-low.c (nto_fetch_registers, nto_store_registers): Change
13206 prototype to take a regcache. Adjust.
13207 * win32-arm-low.c (arm_fetch_inferior_register)
13208 (arm_store_inferior_register): Change prototype to take a
13209 regcache. Adjust.
13210 * win32-i386-low.c (i386_fetch_inferior_register)
13211 (i386_store_inferior_register): Change prototype to take a
13212 regcache. Adjust.
13213 * win32-low.c (child_fetch_inferior_registers)
13214 (child_store_inferior_registers): Change prototype to take a
13215 regcache. Adjust.
13216 (win32_wait): Adjust.
13217 (win32_fetch_inferior_registers): Change prototype to take a
13218 regcache. Adjust.
13219 (win32_store_inferior_registers): Adjust.
13220 * win32-low.h (struct win32_target_ops) <fetch_inferior_register,
13221 store_inferior_register>: Change prototype to take a regcache.
13222
132232010-01-20 Doug Evans <dje@google.com>
13224
13225 * linux-low.c (linux_create_inferior): Wrap use of __SIGRTMIN in
13226 #ifdef.
13227 (linux_wait_for_event1, linux_init_signals): Ditto.
13228 (W_STOPCODE): Provide definition if missing.
13229
132302010-01-13 Vladimir Prus <vladimir@codesourcery.com>
13231
13232 * linux-low.c (linux_core_of_thread): New.
13233 (compare_ints, show_process, list_threads): New.
13234 (linux_qxfer_osdata): Report threads and cores.
13235 (linux_target_op): Register linux_core_of_thread.
13236 * remote-utils.c (prepare_resume_reply): Report the core.
13237 (buffer_xml_printf): Support %d specifier.
13238 * server.c (handle_threads_qxfer_proper, handle_threads_qxfer):
13239 New.
13240 (handle_query): Handle qXfer:threads. Announce availability
13241 thereof.
13242 * target.h (struct target_ops): New field core_of_thread.
13243
132442010-01-04 Ulrich Weigand <uweigand@de.ibm.com>
13245
13246 * Makefile.in (clean): Remove new generated files.
13247 (reg-s390.o, reg-s390.c): Remove rules.
13248 (reg-s390x.o, reg-s390x.c): Likewise.
13249 (s390-linux32.o, s390-linux32.c): Add rules.
13250 (s390-linux64.o, s390-linux64.c): Likewise.
13251 (s390x-linux64.o, s390x-linux64.c): Likewise.
13252 * configure.srv (s390*-*-linux*): Update srv_regobj and srv_xmlfiles.
13253 * linux-s390-low.c: Include <elf.h>.
13254 (HWCAP_S390_HIGH_GPRS): Define if undefined.
13255 (init_registers_s390): Remove prototype.
13256 (init_registers_s390x): Likewise.
13257 (init_registers_s390_linux32): Add prototype.
13258 (init_registers_s390_linux64): Likewise.
13259 (init_registers_s390x_linux64): Likewise.
13260 (s390_num_regs_3264): New define.
13261 (s390_regmap_3264): New global variable.
13262 (s390_cannot_fetch_register): Remove obsolete check.
13263 (s390_cannot_store_register): Likewise.
13264 (s390_collect_ptrace_register): Handle upper/lower register halves.
13265 (s390_supply_ptrace_register): Likewise.
13266 (s390_fill_gregset): Update to register number changes.
13267 (s390_get_hwcap): New routine.
13268 (s390_arch_setup): Detect 32-bit process running on 64-bit system.
13269 Install appropriate regmap and register set.
13270
132712010-01-01 Joel Brobecker <brobecker@adacore.com>
13272
13273 * server.c (gdbserver_version): Update copyright year to 2010.
13274 * gdbreplay.c (gdbreplay_version): Likewise.
13275
132762009-12-28 Doug Evans <dje@google.com>
13277
13278 * linux-low.c: Delete inclusion of ansidecl.h, elf/common.h,
13279 elf/external.h. Include <elf.h> instead but only if necessary.
13280
132812009-12-28 Pedro Alves <pedro@codesourcery.com>
13282
13283 * linux-low.c (linux_remove_process): Remove `detaching'
13284 parameter. Don't release/detach from thread_db here.
13285 (linux_kill): Release/detach from thread_db here, ...
13286 (linux_detach): ... and here, before actually detaching.
13287 (linux_wait_1): ... and here, when a process exits.
13288 * thread-db.c (any_thread_of): New.
13289 (thread_db_free): Switch the current inferior to a thread of the
13290 passed in process.
13291
132922009-12-21 Doug Evans <dje@google.com>
13293
13294 * linux-x86-low.c: Delete outdated comment about Elf32_Phdr.
13295
13296 * linux-low.c (kill_lwp): Use __NR_tkill instead of SYS_tkill.
13297 Move definition of tkill_failed to ifdef __NR_tkill to avoid gcc
13298 warning ifndef __NR_tkill. Move setting of errno there too.
13299 Delete unnecessary resetting of errno after syscall.
13300 Minor comment changes to match gdb/linux-nat.c:kill_lwp.
13301
13302 * configure.ac: Check for dladdr.
13303 * config.in: Regenerate.
13304 * configure: Regenerate.
13305 * thread-db.c (dladdr_to_soname): Only define ifdef HAVE_DLADDR.
13306 (try_thread_db_load): Update.
13307
13308 * linux-low.c (my_waitpid): Delete unnecessary prototype.
13309
133102009-12-18 Doug Evans <dje@google.com>
13311
13312 * event-loop.c: Include unistd.h if it exists.
13313
13314 * linux-low.c (my_waitpid): Move definition away from being in
13315 between linux_tracefork_child/linux_test_for_tracefork.
13316
13317 * gdb_proc_service.h (psaddr_t): Fix type.
13318 * thread-db.c (thread_db_info.td_thr_tls_get_addr_p): Fix
13319 signature to match glibc.
13320
133212009-12-16 Doug Evans <dje@google.com>
13322
13323 * linux-low.c (linux_read_memory): Fix argument to read.
13324
133252009-11-26 Pedro Alves <pedro@codesourcery.com>
13326
13327 * win32-low.c (get_child_debug_event): On EXIT_THREAD_DEBUG_EVENT
13328 events, don't leave current_inferior pointing at null.
13329
133302009-11-26 Pedro Alves <pedro@codesourcery.com>
13331
13332 * win32-low.c (LOG): Delete.
13333 (OUTMSG): Output to stderr.
13334 (OUTMSG2): Conditionalize on `debug_threads' variable, instead of
13335 on compile time LOG macro.
13336 (win32_wait): Fix debug output.
13337
133382009-11-26 Pedro Alves <pedro@codesourcery.com>
13339
13340 * win32-low.c (win32_add_one_solib): If the dll name is
13341 "ntdll.dll", prepend the system directory to the dll path.
13342
133432009-11-17 Daniel Jacobowitz <dan@codesourcery.com>
13344
13345 * m68k-tdep.c (m68k_gdbarch_init): Reuse previous initialization.
13346
133472009-11-17 Nathan Sidwell <nathan@codesourcery.com>
13348 Vladimir Prus <vladimir@codesourcery.com>
13349
13350 * Makefile.in (reg-cf.o, reg-cf.c): New targets.
13351 * configure.ac: Check for __mcoldfire__ and set
13352 gdb_cv_m68k_is_coldfire.
13353 * configure.srv: Use gdb_cv_m68k_is_coldfire to select between
13354 reg-cf.o and reg-m68k.o.
13355 * configure: Regenerated.
13356
133572009-11-16 Pedro Alves <pedro@codesourcery.com>
13358
13359 * linux-low.c (linux_remove_process): Add `detaching' parameter.
13360 Pass it to thread_db_free.
13361 (linux_kill, linux_detach, linux_wait_1): Adjust to pass the
13362 proper `detaching' argument to linux_remove_process.
13363 * linux-low.h (thread_db_free): Add `detaching' parameter.
13364 * thread-db.c (thread_db_init): Pass false as `detaching' argument
13365 to thread_db_free.
13366 (thread_db_free): Add `detaching' parameter. Only
13367 call td_ta_clear_event if detaching from process.
13368
133692009-11-12 Maxim Kuvyrkov <maxim@codesourcery.com>
13370
13371 * thread-db.c (thread_db_free): Fix typo.
13372
133732009-11-11 Paul Pluzhnikov <ppluzhnikov@google.com>
13374
13375 PR gdb/10838
13376 * thread-db.c (thread_db_free): Call td_ta_clear_event.
13377
133782009-11-03 Nathan Sidwell <nathan@codesourcery.com>
13379
13380 * configure.ac (i[34567]86-*): Check if we're targetting x86-64
13381 with an i686 compiler.
13382 * configure.srv (i[34567]86-*-linux*): Pull in x86-64 handling if
13383 needed.
13384 * configure: Rebuilt.
13385
133862009-10-29 Sandra Loosemore <sandra@codesourcery.com>
13387
13388 PR gdb/10783
13389
13390 * server.c (handle_search_memory_1): Correct read_addr initialization
13391 in loop for searching subsequent chunks.
13392
133932009-10-29 Paul Pluzhnikov <ppluzhnikov@google.com>
13394
13395 * configure.ac: New --with-libthread-db option.
13396 * thread-db.c: Allow direct dependence on libthread_db.
13397 (thread_db_free): Adjust.
13398 * config.in: Regenerate.
13399 * configure: Likewise.
13400
134012009-10-28 Paul Pluzhnikov <ppluzhnikov@google.com>
13402
13403 PR gdb/10757
13404 * thread-db.c (attach_thread): New function.
13405 (maybe_attach_thread): Return success/failure.
13406 (find_new_threads_callback): Adjust.
13407 (thread_db_find_new_threads): Loop until no new threads.
13408
134092009-10-13 Pedro Alves <pedro@codesourcery.com>
13410
13411 * proc-service.c (ps_lgetregs): Formatting.
13412
134132009-10-08 Paul Pluzhnikov <ppluzhnikov@google.com>
13414
13415 * acinclude.m4: (SRV_CHECK_THREAD_DB, SRV_CHECK_TLS_GET_ADDR): Remove.
13416 * configure.ac: Adjust.
13417 * linux-low.h (struct process_info_private): Move members to struct
13418 thread_db.
13419 (thread_db_free, thread_db_handle_monitor_command): New prototype.
13420 * linux-low.c (linux_remove_process): Adjust.
13421 (linux_wait_for_event_1, linux_look_up_symbols): Likewise.
13422 * server.c (handle_query): Move code ...
13423 (handle_monitor_command): ... here. New function.
13424 * target.h (struct target_ops): New member.
13425 * thread-db.c (struct thread_db): New.
13426 (libthread_db_search_path): New variable.
13427 (thread_db_create_event, thread_db_enable_reporting)
13428 (find_one_thread, maybe_attach_thread, find_new_threads_callback)
13429 (thread_db_find_new_threads, (thread_db_get_tls_address): Adjust.
13430 (try_thread_db_load_1, dladdr_to_soname): New functions.
13431 (try_thread_db_load, thread_db_load_search): New functions.
13432 (thread_db_init): Search for libthread_db.
13433 (thread_db_free): New function.
13434 (thread_db_handle_monitor_command): Likewise.
13435 * config.in: Regenerate.
13436 * configure: Regenerate.
13437
134382009-09-27 Ulrich Weigand <uweigand@de.ibm.com>
13439
13440 * spu-low.c (spu_kill): Wait for inferior to terminate.
13441 Call clear_inferiors.
13442 (spu_detach): Call clear_inferiors.
13443
134442009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13445
13446 * aclocal.m4: Regenerate.
13447 * config.in: Likewise.
13448 * configure: Likewise.
13449
134502009-07-31 Ulrich Weigand <uweigand@de.ibm.com>
13451
13452 * linux-ppc-low.c (INSTR_SC, NR_spu_run): Define.
13453 (parse_spufs_run): New function.
13454 (ppc_get_pc, ppc_set_pc): Detect and handle SPU PC.
13455 (ppc_breakpoint_at): Handle SPU breakpoints.
13456
134572009-07-31 Ulrich Weigand <uweigand@de.ibm.com>
13458
13459 * linux-low.c: Include <sys/stat.h> and <sys/vfs.h>.
13460 (SPUFS_MAGIC): Define.
13461 (spu_enumerate_spu_ids): New function.
13462 (linux_qxfer_spu): New function.
13463 (linux_target_ops): Install linux_qxfer_spu.
13464
134652009-07-31 Ulrich Weigand <uweigand@de.ibm.com>
13466
13467 * configure.srv (powerpc*-*-linux*): Add powerpc-cell32l.o
13468 and powerpc-cell64l.o to srv_regobj. Add rs6000/powerpc-cell32l.xml
13469 and rs6000/powerpc-cell64l.xml to srv_xmlfiles.
13470 * Makefile.in (powerpc-cell32l.o, powerpc-cell32l.c): New rules.
13471 (powerpc-cell64l.o, powerpc-cell64l.c): Likewise.
13472 (clean): Handle powerpc-cell32l.c and powerpc-cell64l.c.
13473 * linux-ppc-low.c (PPC_FEATURE_CELL): Define.
13474 (init_registers_powerpc_cell32l): Add prototype.
13475 (init_registers_powerpc_cell64l): Likewise.
13476 (ppc_arch_setup): Detect Cell/B.E. architecture.
13477
134782009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13479
13480 * Makefile.in (datarootdir): New variable.
13481
134822009-07-28 Daniel Jacobowitz <dan@codesourcery.com>
13483
13484 * linux-low.c (linux_write_memory): Update debugging output.
13485 * Makefile.in (clean): Add new descriptions.
13486 (arm-with-vfpv2.o, arm-with-vfpv2.c, arm-with-vfpv3.o)
13487 (arm-with-vfpv3.c, arm-with-neon.o, arm-with-neon.c): New rules.
13488 * configure.srv: Add new files for arm*-*-linux*.
13489 * linux-arm-low.c: Add new declarations.
13490 (PTRACE_GETVFPREGS, PTRACE_SETVFPREGS): Define if undefined.
13491 (arm_hwcap, HWCAP_VFP, HWCAP_IWMMXT, HWCAP_NEON, HWCAP_VFPv3)
13492 (HWCAP_VFPv3D16): New.
13493 (arm_fill_wmmxregset, arm_store_wmmxregset): Check HWCAP_IWMMXT
13494 instead of __IWMMXT__.
13495 (arm_fill_vfpregset, arm_store_vfpregset, arm_get_hwcap)
13496 (arm_arch_setup): New.
13497 (target_regsets): Remove #ifdef. Add VFP regset.
13498 (the_low_target): Use arm_arch_setup.
13499
135002009-07-28 Daniel Jacobowitz <dan@codesourcery.com>
13501
13502 * linux-low.c (linux_kill_one_lwp): Adjust kernel workaround to skip
13503 the main thread again.
13504
135052009-07-06 Aleksandar Ristovski <aristovski@qnx.com>
13506
13507 Adding Neutrino gdbserver.
13508 * configure: Regenerated.
13509 * configure.ac: Add case for srv_qnx and set LIBS accordingly.
13510 * configure.srv (i[34567]86-*-nto*): New target.
13511 * nto-low.c, nto-low.h, nto-x86-low.c: New files.
13512 * remote-utils.c [__QNX__]: Include sys/iomgr.h
13513 (nto_comctrl) [__QNX__]: New function.
13514 (enable_async_io, disable_async_io) [__QNX__]: Call nto_comctrl.
13515
135162009-07-05 Danny Backx <dannybackx@users.sourceforge.net>
13517
13518 * configure.srv (i[34567]86-*-mingw32ce*): Add i386-low.o to
13519 srv_tgtobj.
13520
135212009-07-04 Danny Backx <dannybackx@users.sourceforge.net>
13522 Pedro Alves <pedro@codesourcery.com>
13523
13524 * win32-i386-low.c (i386_get_thread_context): Handle systems that
13525 don't support CONTEXT_EXTENDED_REGISTERS.
13526 (i386_win32_breakpoint, i386_win32_breakpoint_len): New.
13527 (the_low_target): Install them.
13528 * win32-low.c (get_child_debug_event): Handle WaitForDebugEvent
13529 failing with ERROR_PIPE_NOT_CONNECTED.
13530
135312009-06-30 Doug Evans <dje@google.com>
13532 Pierre Muller <muller@ics.u-strasbg.fr>
13533
13534 Add h/w watchpoint support to x86-linux, win32-i386.
13535 * Makefile.in (SFILES): Add i386-low.c
13536 (i386_low_h): Define.
13537 (i386-low.o): Add dependencies.
13538 (linux-x86-low.o): Add i386-low.h dependency.
13539 (win32-i386-low.o): Ditto.
13540 * i386-low.c: New file.
13541 * i386-low.h: New file.
13542 * configure.srv (i[34567]86-*-cygwin*): Add i386-low.o to srv_tgtobj.
13543 (i[34567]86-*-linux*, i[34567]86-*-mingw*, x86_64-*-linux*): Ditto.
13544 * linux-low.c (linux_add_process): Initialize arch_private.
13545 (linux_remove_process): Free arch_private.
13546 (add_lwp): Initialize arch_private.
13547 (delete_lwp): Free arch_private.
13548 (linux_resume_one_lwp): Call the_low_target.prepare_to_resume if
13549 provided.
13550 * linux-low.h (process_info_private): New member arch_private.
13551 (lwp_info): New member arch_private.
13552 (linux_target_ops): New members new_process, new_thread,
13553 prepare_to_resume.
13554 (ptid_of): New macro.
13555 * linux-x86-low.c: Include stddef.h, i386-low.h.
13556 (arch_process_info): New struct.
13557 (arch_lwp_info): New struct.
13558 (x86_linux_dr_get, x86_linux_dr_set): New functions.
13559 (i386_dr_low_set_addr, i386_dr_low_set_control): New functions.
13560 (i386_dr_low_get_status): New function.
13561 (x86_insert_point, x86_remove_point): New functions.
13562 (x86_stopped_by_watchpoint): New function.
13563 (x86_stopped_data_address): New function.
13564 (x86_linux_new_process, x86_linux_new_thread): New functions.
13565 (x86_linux_prepare_to_resume): New function.
13566 (the_low_target): Add entries for insert_point, remove_point,
13567 stopped_by_watchpoint, stopped_data_address, new_process, new_thread,
13568 prepare_to_resume.
13569 * server.c (debug_hw_points): New global.
13570 (monitor_show_help): Document set debug-hw-points.
13571 (handle_query): Process "set debug-hw-points".
13572 * server.h (debug_hw_points): Declare.
13573 (paddress): Declare.
13574 * utils.c (NUMCELLS, CELLSIZE): New macros.
13575 (get_sell, xsnprintf, paddress): New functions.
13576 * win32-arm-low.c (the_low_target): Add entries for insert_point,
13577 remove_point, stopped_by_watchpoint, stopped_data_address.
13578 * win32-i386-low.c: Include i386-low.h.
13579 (debug_reg_state): Replaces dr.
13580 (i386_dr_low_set_addr, i386_dr_low_set_control): New functions.
13581 (i386_dr_low_get_status): New function.
13582 (i386_insert_point, i386_remove_point): New functions.
13583 (i386_stopped_by_watchpoint): New function.
13584 (i386_stopped_data_address): New function.
13585 (i386_initial_stuff): Update.
13586 (get_thread_context,set_thread_context,i386_thread_added): Update.
13587 (the_low_target): Add entries for insert_point,
13588 remove_point, stopped_by_watchpoint, stopped_data_address.
13589 * win32-low.c (win32_insert_watchpoint): New function.
13590 (win32_remove_watchpoint): New function.
13591 (win32_stopped_by_watchpoint): New function.
13592 (win32_stopped_data_address): New function.
13593 (win32_target_ops): Add entries for insert_watchpoint,
13594 remove_watchpoint, stopped_by_watchpoint, stopped_data_address.
13595 * win32-low.h (win32_target_ops): New members insert_point,
13596 remove_point, stopped_by_watchpoint, stopped_data_address.
13597
135982009-06-25 Pedro Alves <pedro@codesourcery.com>
13599
13600 * server.c (process_serial_event): Re-return unsupported, not
13601 error, if the type isn't recognized. Re-allow supporting only
13602 insert or remove packets. Also call require_running for
13603 breakpoints. Add missing break statement to default case. Tidy.
13604 * target.h (struct target_ops): Rename insert_watchpoint to
13605 insert_point, and remove_watchpoint to remove_point.
13606
13607 * linux-low.h (struct linux_target_ops): Likewise.
13608 * linux-low.c (linux_insert_watchpoint): Rename to ...
13609 (linux_insert_point): ... this. Adjust.
13610 (linux_remove_watchpoint): Rename to ...
13611 (linux_remove_point): ... this. Adjust.
13612 (linux_target_ops): Adjust.
13613 * linux-crisv32-low.c (cris_insert_watchpoint): Rename to ...
13614 (cris_insert_point): ... this.
13615 (cris_remove_watchpoint): Rename to ...
13616 (cris_remove_point): ... this.
13617 (the_low_target): Adjust.
13618
136192009-06-24 Pierre Muller <muller@ics.u-strasbg.fr>
13620
13621 * server.c (handle_v_kill): Pass signal_pid to
13622 kill_inferior if multi_process is zero.
13623
136242009-06-23 Aleksandar Ristovski <aristovski@qnx.com>
13625
13626 * server.c (process_serial_event): Add support for Z0 and Z1 packet.
13627 * target.h (target_ops): Comment for *_watchpoint to make it clear
13628 the functions can get types '0' and '1'.
13629
136302009-06-22 Aleksandar Ristovski <aristovski@qnx.com>
13631
13632 * linux-low.c (usr_fetch_inferior_registers): Remove check for regno 0.
13633 * proc-service.c (ps_lgetregs): Pass -1 to fetch all registers.
13634 * regcache.c (get_regcache): Likewise.
13635 * spu-low.c (spu_fetch_registers): Remove 0 to -1 conversion.
13636 * win32-low.c (child_fetch_inferior_registers): Remove check for
13637 regno 0.
13638
136392009-06-19 Aleksandar Ristovski <aristovski@qnx.com>
13640 Pedro Alves <pedro@codesourcery.com>
13641
13642 * target.h (struct target_ops) <supports_multi_process>: New
13643 callback.
13644 (target_supports_multi_process): New.
13645 * server.c (handle_query): Even if GDB reports support, only
13646 enable multi-process if the target also supports it. Report
13647 multi-process support only if the target backend supports it.
13648 * linux-low.c (linux_supports_multi_process): New function.
13649 (linux_target_ops): Install it as target_supports_multi_process
13650 callback.
13651
136522009-05-24 Doug Evans <dje@google.com>
13653
13654 Global renaming of find_thread_pid to find_thread_ptid.
13655 * server.h (find_thread_ptid): Renamed from find_thread_pid.
13656 * inferiors.c (find_thread_ptid): Renamed from find_thread_pid.
13657 All callers updated.
13658
13659 * linux-low.c (handle_extended_wait): Use linux_resume_one_lwp
13660 to resume the newly created thread, don't call ptrace (PTRACE_CONT)
13661 directly.
13662
13663 * linux-low.c (get_stop_pc): Print pc if debug_threads.
13664 (check_removed_breakpoint, linux_wait_for_lwp): Ditto.
13665 (linux_resume_one_lwp): Ditto.
13666
136672009-05-23 Doug Evans <dje@google.com>
13668
13669 * linux-low.c (linux_resume_one_lwp): Change type of first arg
13670 from struct inferior_list_entry * to struct lwp_info *.
13671 All callers updated.
13672
136732009-05-13 Doug Evans <dje@google.com>
13674
13675 * linux-x86-low.c: Don't include assert.h.
13676 (x86_siginfo_fixup): Use fatal, not assert.
13677 (x86_arch_setup): Fix comment.
13678
136792009-05-12 Doug Evans <dje@google.com>
13680
13681 Biarch support for i386/amd64 gdbserver.
13682 * Makefile.in (SFILES): Remove linux-i386-low.c, linux-x86-64-low.c.
13683 Add linux-x86-low.c.
13684 (linux-i386-low.o, linux-x86-64-low.o): Delete.
13685 (linux-x86-low.o): Add.
13686 * linux-x86-64-low.c: Delete.
13687 * linux-i386-low.c: Delete.
13688 * linux-x86-low.c: New file.
13689 * configure.srv (i?86-linux srv_tgtobj): Replace linux-i386-low.o with
13690 linux-x86-low.o.
13691 (x86_64-linux srv_tgtobj): Replace linux-x86-64-low.o with
13692 linux-x86-low.o.
13693 (x86_64-linux srv_regobj): Add reg-i386-linux.o.
13694 * linux-low.c: Include ansidecl.h, elf/common.h, elf/external.h.
13695 (linux_child_pid_to_exec_file): New function.
13696 (elf_64_header_p, elf_64_file_p): New functions.
13697 (siginfo_fixup): New function.
13698 (linux_xfer_siginfo): New local inf_siginfo. Call siginfo_fixup to
13699 give target a chance to convert layout.
13700 * linux-low.h (linux_target_ops): New member siginfo_fixup.
13701 (linux_child_pid_to_exec_file, elf_64_file_p): Declare.
13702
137032009-05-07 Doug Evans <dje@google.com>
13704
13705 * linux-low.c (regsets_fetch_inferior_registers): Fix memory leak.
13706 (regsets_store_inferior_registers): Ditto.
13707
137082009-05-06 Pedro Alves <pedro@codesourcery.com>
13709
13710 PR server/10048
13711
13712 * linux-low.c (must_set_ptrace_flags): Delete.
13713 (linux_create_inferior): Set `lwp->must_set_ptrace_flags' instead
13714 of the global.
13715 (linux_attach_lwp_1): Don't set PTRACE_SETOPTIONS here. Set
13716 `lwp->must_set_ptrace_flags' instead.
13717 (linux_wait_for_event_1): Set ptrace options here.
13718 (linux_wait_1): ... not here.
13719
137202009-04-30 Doug Evans <dje@google.com>
13721
13722 * inferiors.c (started_inferior_callback): New function.
13723 (attached_inferior_callback): New function.
13724 (have_started_inferiors_p, have_attached_inferiors_p): New functions.
13725 * server.c (print_started_pid, print_attached_pid): New functions.
13726 (detach_or_kill_for_exit): New function.
13727 (main): Call it instead of for_each_inferior (kill_inferior_callback).
13728 * server.h (have_started_inferiors_p): Declare.
13729 (have_attached_inferiors_p): Declare.
13730
13731 * inferiors.c (remove_process): Fix memory leak, free process.
13732 * linux-low.c (linux_remove_process): New function.
13733 (linux_kill): Call it instead of remove_process.
13734 (linux_detach, linux_wait_1): Ditto.
13735
137362009-04-19 Danny Backx <dannybackx@users.sourceforge.net>
13737
13738 * configure.srv: Add x86 Windows CE target.
13739
137402009-04-03 Ulrich Weigand <uweigand@de.ibm.com>
13741
13742 * inferiors.c (get_thread_process): Make global.
13743 * server.h (get_thread_process): Add prototype.
13744 * thread-db.c (find_one_thread): Use get_thread_process
13745 instead of current_process.
13746 (thread_db_get_tls_address): Do not crash if called when
13747 thread layer is not yet initialized.
13748
137492009-04-03 Ulrich Weigand <uweigand@de.ibm.com>
13750
13751 * remote-utils.c (prepare_resume_reply): Null-terminate packet.
13752 * spu-low.c (current_tid): Rename to ...
13753 (current_ptid): ... this.
13754 (fetch_ppc_register, fetch_ppc_memory, store_ppc_memory,
13755 spu_proc_xfer_spu, spu_resume, spu_request_interrupt): Use
13756 ptid_get_lwp (current_ptid) instead of current_tid.
13757 (spu_kill, spu_detach, spu_join, spu_wait): Use pid argument
13758 instead of current_tid. Use find_process_pid to verify pid
13759 argument is valid. Pass proper argument to remove_process.
13760 (spu_thread_alive): Compare current_ptid instead of current_tid.
13761 (spu_resume): Likewise.
13762
137632009-04-02 Pedro Alves <pedro@codesourcery.com>
13764
13765 * linux-low.c (usr_store_inferior_registers): Declare local `pid'
13766 variable.
13767
137682009-04-01 Pedro Alves <pedro@codesourcery.com>
13769
13770 Implement the multiprocess extensions, and add linux multiprocess
13771 support.
13772
13773 * server.h (ULONGEST): Declare.
13774 (struct ptid, ptid_t): New.
13775 (minus_one_ptid, null_ptid): Declare.
13776 (ptid_build, pid_to_ptid, ptid_get_pid, ptid_get_lwp)
13777 (ptid_get_tid, ptid_equal, ptid_is_pid): Declare.
13778 (struct inferior_list_entry): Change `id' type from unsigned from
13779 to ptid_t.
13780 (struct sym_cache, struct breakpoint, struct
13781 process_info_private): Forward declare.
13782 (struct process_info): Declare.
13783 (current_process): Declare.
13784 (all_processes): Declare.
13785 (initialize_inferiors): Declare.
13786 (add_thread): Adjust to use ptid_t.
13787 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id): Ditto.
13788 (add_process, remove_process, find_thread_pid): Declare.
13789 (find_inferior_id): Adjust to use ptid_t.
13790 (cont_thread, general_thread, step_thread): Change type to ptid_t.
13791 (multi_process): Declare.
13792 (push_event): Adjust to use ptid_t.
13793 (read_ptid, write_ptid): Declare.
13794 (prepare_resume_reply): Adjust to use ptid_t.
13795 (clear_symbol_cache): Declare.
13796 * inferiors.c (all_processes): New.
13797 (null_ptid, minus_one_ptid): New.
13798 (ptid_build, pid_to_ptid, ptid_get_pid, ptid_get_lwp)
13799 (ptid_get_tid, ptid_equal, ptid_is_pid): New.
13800 (add_thread): Change unsigned long to ptid. Remove gdb_id
13801 parameter. Adjust.
13802 (thread_id_to_gdb_id, thread_to_gdb_id): Change unsigned long to ptid.
13803 (gdb_id_to_thread): Rename to ...
13804 (find_thread_pid): ... this. Change unsigned long to ptid.
13805 (gdb_id_to_thread_id, find_inferior_id): Change unsigned long to ptid.
13806 (loaded_dll, pull_pid_from_list): Adjust.
13807 (add_process, remove_process, find_process_pid)
13808 (get_thread_process, current_process, initialize_inferiors): New.
13809 * target.h (struct thread_resume) <thread>: Change type to ptid_t.
13810 (struct target_waitstatus) <related_pid>: Ditto.
13811 (struct target_ops) <kill, detach>: Add `pid' argument. Change
13812 return type to int.
13813 (struct target_ops) <join>: Add `pid' argument.
13814 (struct target_ops) <thread_alive>: Change pid's type to ptid_t.
13815 (struct target_ops) <wait>: Add `ptid' field. Change return type
13816 to ptid.
13817 (kill_inferior, detach_inferior, join_inferior): Add `pid' argument.
13818 (mywait): Add `ptid' argument. Change return type to ptid_t.
13819 (target_pid_to_str): Declare.
13820 * target.c (set_desired_inferior): Adjust to use ptids.
13821 (mywait): Add new `ptid' argument. Adjust.
13822 (target_pid_to_str): New.
13823 * mem-break.h (free_all_breakpoints): Declare.
13824 * mem-break.c (breakpoints): Delelete.
13825 (set_breakpoint_at, delete_breakpoint, find_breakpoint_at)
13826 (check_mem_read, check_mem_write, delete_all_breakpoints): Adjust
13827 to use per-process breakpoint list.
13828 (free_all_breakpoints): New.
13829 * remote-utils.c (struct sym_cache) <name>: Drop `const'.
13830 (symbol_cache, all_symbols_looked_up): Delete.
13831 (hexchars): New.
13832 (ishex, unpack_varlen_hex, write_ptid, hex_or_minus_one,
13833 read_ptid): New.
13834 (prepare_resume_reply): Change ptid argument's type from unsigned
13835 long to ptid_t. Adjust. Implement W;process and X;process.
13836 (free_sym_cache, clear_symbol_cache): New.
13837 (look_up_one_symbol): Adjust to per-process symbol cache. *
13838 * server.c (cont_thread, general_thread, step_thread): Change type
13839 to ptid_t.
13840 (attached): Delete.
13841 (multi_process): New.
13842 (last_ptid): Change type to ptid_t.
13843 (struct vstop_notif) <ptid>: Change type to ptid_t.
13844 (queue_stop_reply, push_event): Change `ptid' argument's type to
13845 ptid_t.
13846 (discard_queued_stop_replies): Add `pid' argument.
13847 (start_inferior): Adjust to use ptids. Adjust to mywait interface
13848 changes. Don't reference the `attached' global.
13849 (attach_inferior): Adjust to mywait interface changes.
13850 (handle_query): Adjust to use ptids. Parse GDB's qSupported
13851 features. Handle and report "multiprocess+". Handle
13852 "qAttached:PID".
13853 (handle_v_cont): Adjust to use ptids. Adjust to mywait interface
13854 changes.
13855 (handle_v_kill): New.
13856 (handle_v_stopped): Adjust to use target_pid_to_str.
13857 (handle_v_requests): Allow multiple attaches and runs when
13858 multiprocess extensions are in effect. Handle "vKill".
13859 (myresume): Adjust to use ptids.
13860 (queue_stop_reply_callback): Add `arg' parameter. Handle it.
13861 (handle_status): Adjust to discard_queued_stop_replies interface
13862 change.
13863 (first_thread_of, kill_inferior_callback)
13864 (detach_or_kill_inferior_callback, join_inferiors_callback): New.
13865 (main): Call initialize_inferiors. Adjust to use ptids, killing
13866 and detaching from all inferiors. Handle multiprocess packet
13867 variants.
13868 * linux-low.h: Include gdb_proc_service.h.
13869 (struct process_info_private): New.
13870 (struct linux_target_ops) <pid_of>: Use ptid_get_pid.
13871 <lwpid_of>: Use ptid_get_lwp.
13872 (get_lwp_thread): Adjust.
13873 (struct lwp_info): Add `dead' member.
13874 (find_lwp_pid): Declare.
13875 * linux-low.c (thread_db_active): Delete.
13876 (new_inferior): Adjust comment.
13877 (inferior_pid): Delete.
13878 (linux_add_process): New.
13879 (handle_extended_wait): Adjust.
13880 (add_lwp): Change unsigned long to ptid.
13881 (linux_create_inferior): Add process to processes table. Adjust
13882 to use ptids. Don't set new_inferior here.
13883 (linux_attach_lwp): Rename to ...
13884 (linux_attach_lwp_1): ... this. Add `initial' argument. Handle
13885 it. Adjust to use ptids.
13886 (linux_attach_lwp): New.
13887 (linux_attach): Add process to processes table. Don't set
13888 new_inferior here.
13889 (struct counter): New.
13890 (second_thread_of_pid_p, last_thread_of_process_p): New.
13891 (linux_kill_one_lwp): Add `args' parameter. Handle it. Adjust to
13892 multiple processes.
13893 (linux_kill): Add `pid' argument. Handle it. Adjust to multiple
13894 processes. Remove process from process table.
13895 (linux_detach_one_lwp): Add `args' parameter. Handle it. Adjust
13896 to multiple processes.
13897 (any_thread_of): New.
13898 (linux_detach): Add `pid' argument, and handle it. Remove process
13899 from processes table.
13900 (linux_join): Add `pid' argument. Handle it.
13901 (linux_thread_alive): Change unsighed long argument to ptid_t.
13902 Consider dead lwps as not being alive.
13903 (status_pending_p): Rename `dummy' argument to `arg'. Filter out
13904 threads we're not interested in.
13905 (same_lwp, find_lwp_pid): New.
13906 (linux_wait_for_lwp): Change `pid' argument's type from int to
13907 ptid_t. Adjust.
13908 (linux_wait_for_event): Rename to ...
13909 (linux_wait_for_event_1): ... this. Change `pid' argument's type
13910 from int to ptid_t. Adjust.
13911 (linux_wait_for_event): New.
13912 (linux_wait_1): Add `ptid' argument. Change return type to
13913 ptid_t. Adjust. Use last_thread_of_process_p. Remove processes
13914 that exit from the process table.
13915 (linux_wait): Add `ptid' argument. Change return type to ptid_t.
13916 Adjust.
13917 (mark_lwp_dead): New.
13918 (wait_for_sigstop): Adjust to use ptids. If a process exits while
13919 stopping all threads, mark its main lwp as dead.
13920 (linux_set_resume_request, linux_resume_one_thread): Adjust to use
13921 ptids.
13922 (fetch_register, usr_store_inferior_registers)
13923 (regsets_fetch_inferior_registers)
13924 (regsets_store_inferior_registers, linux_read_memory)
13925 (linux_write_memory): Inline `inferior_pid'.
13926 (linux_look_up_symbols): Adjust to use per-process
13927 `thread_db_active'.
13928 (linux_request_interrupt): Adjust to use ptids.
13929 (linux_read_auxv): Inline `inferior_pid'.
13930 (initialize_low): Don't reference thread_db_active.
13931 * gdb_proc_service.h (struct ps_prochandle) <pid>: Remove.
13932 * proc-service.c (ps_lgetregs): Use find_lwp_pid.
13933 (ps_getpid): Return the pid of the current inferior.
13934 * thread-db.c (proc_handle, thread_agent): Delete.
13935 (thread_db_create_event, thread_db_enable_reporting): Adjust to
13936 per-process data.
13937 (find_one_thread): Change argument type to ptid_t. Adjust to
13938 per-process data.
13939 (maybe_attach_thread): Adjust to per-process data and ptids.
13940 (thread_db_find_new_threads): Ditto.
13941 (thread_db_init): Ditto.
13942 * spu-low.c (spu_create_inferior, spu_attach): Add process to
13943 processes table. Adjust to use ptids.
13944 (spu_kill, spu_detach): Adjust interface. Remove process from
13945 processes table.
13946 (spu_join, spu_thread_alive): Adjust interface.
13947 (spu_wait): Adjust interface. Remove process from processes
13948 table. Adjust to use ptids.
13949 * win32-low.c (current_inferior_tid): Delete.
13950 (current_inferior_ptid): New.
13951 (debug_event_ptid): New.
13952 (thread_rec): Take a ptid. Adjust.
13953 (child_add_thread): Add `pid' argument. Adjust to use ptids.
13954 (child_delete_thread): Ditto.
13955 (do_initial_child_stuff): Add `attached' argument. Add process to
13956 processes table.
13957 (child_fetch_inferior_registers, child_store_inferior_registers):
13958 Adjust.
13959 (win32_create_inferior): Pass 0 to do_initial_child_stuff.
13960 (win32_attach): Pass 1 to do_initial_child_stuff.
13961 (win32_kill): Adjust interface. Remove process from processes
13962 table.
13963 (win32_detach): Ditto.
13964 (win32_join): Adjust interface.
13965 (win32_thread_alive): Take a ptid.
13966 (win32_resume): Adjust to use ptids.
13967 (get_child_debug_event): Ditto.
13968 (win32_wait): Adjust interface. Remove exiting process from
13969 processes table.
13970
139712009-04-01 Pedro Alves <pedro@codesourcery.com>
13972
13973 Non-stop mode support.
13974
13975 * server.h (non_stop): Declare.
13976 (gdb_client_data, handler_func): Declare.
13977 (delete_file_handler, add_file_handler, start_event_loop):
13978 Declare.
13979 (handle_serial_event, handle_target_event, push_event)
13980 (putpkt_notif): Declare.
13981 * target.h (enum resume_kind): New.
13982 (struct thread_resume): Replace `step' field by `kind' field.
13983 (TARGET_WNOHANG): Define.
13984 (struct target_ops) <wait>: Add `options' argument.
13985 <supports_non_stop, async, start_non_stop>: New fields.
13986 (target_supports_non_stop, target_async): New.
13987 (start_non_stop): Declare.
13988 (mywait): Add `options' argument.
13989 * target.c (mywait): Add `options' argument. Print child exit
13990 notifications here.
13991 (start_non_stop): New.
13992 * server.c (non_stop, own_buf, mem_buf): New globals.
13993 (struct vstop_notif): New.
13994 (notif_queue): New global.
13995 (queue_stop_reply, push_event, discard_queued_stop_replies)
13996 (send_next_stop_reply): New.
13997 (start_inferior): Adjust to use resume_kind. Adjust to mywait
13998 interface changes.
13999 (attach_inferior): In non-stop mode, don't wait for the target
14000 here.
14001 (handle_general_set): Handle QNonStop.
14002 (handle_query): When handling qC, return the current general
14003 thread, instead of the first thread of the list.
14004 (handle_query): If the backend supports non-stop mode, include
14005 QNonStop+ in the qSupported query response.
14006 (handle_v_cont): Adjust to use resume_kind. Handle resume_stop
14007 and non-stop mode.
14008 (handle_v_attach, handle_v_run): Handle non-stop mode.
14009 (handle_v_stopped): New.
14010 (handle_v_requests): Report support for vCont;t. Handle vStopped.
14011 (myresume): Adjust to use resume_kind. Handle non-stop.
14012 (queue_stop_reply_callback): New.
14013 (handle_status): Handle non-stop mode.
14014 (main): Clear non_stop flag on reconnection. Use the event-loop.
14015 Refactor serial protocol handling from here ...
14016 (process_serial_event): ... to this new function. When GDB
14017 selects any thread, select one here. In non-stop mode, wait until
14018 GDB acks all pending events before exiting.
14019 (handle_serial_event, handle_target_event): New.
14020 * remote-utils.c (remote_open): Install remote_desc in the event
14021 loop.
14022 (remote_close): Remove remote_desc from the event loop.
14023 (putpkt_binary): Rename to...
14024 (putpkt_binary_1): ... this. Add `is_notic' argument. Handle it.
14025 (putpkt_binary): New as wrapper around putpkt_binary_1.
14026 (putpkt_notif): New.
14027 (prepare_resume_reply): In non-stop mode, don't change the
14028 general_thread.
14029 * event-loop.c: New.
14030 * Makefile.in (OBJ): Add event-loop.o.
14031 (event-loop.o): New rule.
14032
14033 * linux-low.h (pid_of): Moved here.
14034 (lwpid_of): New.
14035 (get_lwp_thread): Use lwpid_of.
14036 (struct lwp_info): Delete `lwpid' field. Add `suspended' field.
14037 * linux-low.c (pid_of): Delete.
14038 (inferior_pid): Use lwpid_of.
14039 (linux_event_pipe): New.
14040 (target_is_async_p): New.
14041 (delete_lwp): New.
14042 (handle_extended_wait): Use lwpid_of.
14043 (add_lwp): Don't set lwpid field.
14044 (linux_attach_lwp): Adjust debug output. Use lwpid_of.
14045 (linux_kill_one_lwp): If killing a running lwp, stop it first.
14046 Use lwpid_of. Adjust to linux_wait_for_event interface changes.
14047 (linux_detach_one_lwp): If detaching from a running lwp, stop it
14048 first. Adjust to linux_wait_for_event interface changes. Use
14049 lwpid_of.
14050 (linux_detach): Don't delete the main lwp here.
14051 (linux_join): Use my_waitpid. Avoid signal_pid. Use lwpid_of.
14052 (status_pending_p): Don't consider explicitly suspended lwps.
14053 (linux_wait_for_lwp): Take an integer pid instead of a lwp_info
14054 pointer. Add OPTIONS argument. Change return type to int. Use
14055 my_waitpid instead of sleeping. Handle WNOHANG. Use lwpid_of.
14056 (linux_wait_for_event): Take an integer pid instead of a lwp_info
14057 pointer. Add status pointer argument. Return a pid instead of a
14058 status. Use lwpid_of. Adjust to linux_wait_for_lwp interface
14059 changes. In non-stop mode, don't switch to a random thread.
14060 (linux_wait): Rename to...
14061 (linux_wait_1): ... this. Add target_options argument, and handle
14062 it. Adjust to use resume_kind. Use lwpid_of. In non-stop mode,
14063 don't handle the continue thread. Handle TARGET_WNOHANG. Merge
14064 clean exit and signal exit code. Don't stop all threads in
14065 non-stop mode. In all-stop mode, only stop all threads when
14066 reporting a stop to GDB. Handle explicit thread stop requests.
14067 (async_file_flush, async_file_mark): New.
14068 (linux_wait): New.
14069 (send_sigstop): Use lwpid_of.
14070 (wait_for_sigstop): Use lwpid_of. Adjust to linux_wait_for_event
14071 interface changes. In non-stop mode, don't switch to a random
14072 thread.
14073 (linux_resume_one_lwp): Use lwpid_of.
14074 (linux_continue_one_thread, linux_queue_one_thread): Merge into ...
14075 (linux_resume_one_thread): ... this. Handle resume_stop. In
14076 non-stop mode, don't look for pending flag in all threads.
14077 (resume_status_pending_p): Don't consider explicitly suspended
14078 threads.
14079 (my_waitpid): Reimplement. Emulate __WALL.
14080 (linux_request_interrupt, linux_read_offsets, linux_xfer_siginfo):
14081 Use lwpid_of.
14082 (sigchld_handler, linux_supports_non_stop, linux_async)
14083 (linux_start_non_stop): New.
14084 (linux_target_ops): Register linux_supports_non_stop, linux_async
14085 and linux_start_non_stop.
14086 (initialize_low): Install SIGCHLD handler.
14087 * thread-db.c (thread_db_create_event, find_one_thread)
14088 (thread_db_get_tls_address): Use lwpid_of.
14089 * win32-low.c (win32_detach): Adjust to use resume_kind.
14090 (win32_wait): Add `options' argument.
14091 * spu-low.c (spu_resume): Adjust to use resume_kind.
14092 (spu_wait): Add `options' argument.
14093
140942009-04-01 Pedro Alves <pedro@codesourcery.com>
14095
14096 Decouple target code from remote protocol.
14097
14098 * target.h (enum target_waitkind): New.
14099 (struct target_waitstatus): New.
14100 (struct target_ops) <wait>: Return an unsigned long. Take a
14101 target_waitstatus pointer instead of a char pointer.
14102 (mywait): Likewise.
14103 * target.c (mywait): Change prototype to return an unsigned long.
14104 Take a target_waitstatus pointer instead of a char pointer. Adjust.
14105 * server.h (thread_from_wait, old_thread_from_wait): Delete
14106 declarations.
14107 (prepare_resume_reply): Change prototype to take a
14108 target_waitstatus.
14109 * server.c (thread_from_wait, old_thread_from_wait): Delete.
14110 (last_status, last_ptid): New.
14111 (start_inferior): Remove "statusptr" argument. Adjust. Return a
14112 pid instead of a signal.
14113 (attach_inferior): Remove "status" and "signal" parameters.
14114 Adjust.
14115 (handle_query): For qGetTLSAddr, parse the thread id with strtol,
14116 not as an address.
14117 (handle_v_cont, handle_v_attach, handle_v_run, handle_v_kill)
14118 (handle_v_requests, myresume): Remove "status" and "signal"
14119 parameters. Adjust.
14120 (handle_status): New.
14121 (main): Delete local `status'. Adjust.
14122 * remote-utils.c: Include target.h.
14123 (prepare_resume_reply): Change prototype to take a
14124 target_waitstatus. Adjust.
14125
14126 * linux-low.c (linux_wait): Adjust to new target_ops->wait
14127 interface.
14128 * spu-low.c (spu_wait): Adjust.
14129 * win32-low.c (enum target_waitkind, struct target_waitstatus):
14130 Delete.
14131 (win32_wait): Adjust.
14132
141332009-04-01 Pedro Alves <pedro@codesourcery.com>
14134
14135 * target.h (struct thread_resume): Delete leave_stopped member.
14136 (struct target_ops): Add a `n' argument to the `resume' callback.
14137 * server.c (start_inferior): Adjust.
14138 (handle_v_cont, myresume): Adjust.
14139 * linux-low.c (check_removed_breakpoint): Adjust to resume
14140 interface change, and to removed leave_stopped field.
14141 (resume_ptr): Delete.
14142 (struct thread_resume_array): New.
14143 (linux_set_resume_request): Add new `arg' parameter. Adjust to
14144 resume interface change.
14145 (linux_continue_one_thread, linux_queue_one_thread)
14146 (resume_status_pending_p): Check if the resume field is NULL
14147 instead of checking the leave_stopped member.
14148 (linux_resume): Adjust to the target resume interface change.
14149 * spu-low.c (spu_resume): Adjust to the target resume interface
14150 change.
14151 * win32-low.c (win32_detach, win32_resume): Ditto.
14152
141532009-04-01 Pedro Alves <pedro@codesourcery.com>
14154
14155 * linux-low.c (linux_wait_for_event): Don't clear the `stepping'
14156 flag.
14157 (wait_for_sigstop): Don't leave a finished single-step SIGTRAP
14158 pending.
14159 (linux_continue_one_thread): Only preserve the stepping flag if
14160 there's a pending breakpoint.
14161
141622009-03-31 Pedro Alves <pedro@codesourcery.com>
14163
14164 * server.c (main): After the inferior having exited, call
14165 remote_close before exiting gdbserver.
14166
141672009-03-25 Thiago Jung Bauermann <bauerman@br.ibm.com>
14168
14169 Fix size of FPSCR in Power 7 processors.
14170 * linux-ppc-low.c (PPC_FEATURE_ARCH_2_05): Remove #define.
14171 (PPC_FEATURE_HAS_DFP): New #define.
14172 (ppc_arch_setup): Check for DFP feature instead of ISA 2.05 to decide on
14173 size of the FPSCR.
14174
141752009-03-23 Pedro Alves <pedro@codesourcery.com>
14176
14177 * server.c (handle_query) Whitespace and formatting.
14178
141792009-03-22 Pedro Alves <pedro@codesourcery.com>
14180
14181 * i387-fp.c, linux-arm-low.c, linux-cris-low.c,
14182 linux-crisv32-low.c, linux-i386-low.c, linux-low.c,
14183 linux-mips-low.c, linux-s390-low.c, linux-sparc-low.c,
14184 linux-x86-64-low.c, linux-xtensa-low.c, proc-service.c,
14185 regcache.c, remote-utils.c, server.c, spu-low.c, target.h,
14186 thread-db.c, win32-low.c, xtensa-xtregs.c, gdbreplay.c,
14187 Makefile.in, configure.ac: Fix whitespace throughout.
14188 * configure: Regenerate.
14189
141902009-03-22 Pedro Alves <pedro@codesourcery.com>
14191
14192 * inferiors.c (find_inferior): Make it safe for the callback
14193 function to delete the currently iterated inferior.
14194
141952009-03-22 Pedro Alves <pedro@codesourcery.com>
14196
14197 * Makefile.in (linuw_low_h): Move higher.
14198 (thread-db.o): Depend on $(linux_low_h).
14199
142002009-03-17 Pedro Alves <pedro@codesourcery.com>
14201
14202 Rename "process" to "lwp" throughout.
14203
14204 * linux-low.c (all_processes): Rename to...
14205 (all_lwps): ... this.
14206 (inferior_pid, handle_extended_wait, get_stop_pc): Adjust.
14207 (add_process): Rename to ...
14208 (add_lwp): ... this. Adjust.
14209 (linux_create_inferior): Adjust.
14210 (linux_attach_lwp): Adjust.
14211 (linux_attach): Adjust.
14212 (linux_kill_one_process): Rename to ...
14213 (linux_kill_one_lwp): ... this. Adjust.
14214 (linux_kill): Adjust.
14215 (linux_detach_one_process): Rename to ...
14216 (linux_detach_one_lwp): ... this. Adjust.
14217 (linux_detach): Adjust.
14218 (check_removed_breakpoint): Adjust.
14219 (status_pending_p): Adjust.
14220 (linux_wait_for_process): Rename to ...
14221 (linux_wait_for_lwp): ... this. Adjust.
14222 (linux_wait_for_event): Adjust.
14223 (send_sigstop): Adjust.
14224 (wait_for_sigstop): Adjust.
14225 (stop_all_processes): Rename to ...
14226 (stop_all_lwps): ... this.
14227 (linux_resume_one_process): Rename to ...
14228 (linux_resume_one_lwp): ... this. Adjust.
14229 (linux_set_resume_request, linux_continue_one_thread)
14230 (linux_queue_one_thread, resume_status_pending_p)
14231 (usr_store_inferior_registers, regsets_store_inferior_registers)
14232 (linux_request_interrupt, linux_read_offsets, linux_xfer_siginfo):
14233 Adjust.
14234 * linux-low.h (get_process): Rename to ...
14235 (get_lwp): ... this. Adjust.
14236 (get_thread_process): Rename to ...
14237 (get_thread_lwp): ... this. Adjust.
14238 (get_process_thread): Rename to ...
14239 (get_lwp_thread): ... this. Adjust.
14240 (struct process_info): Rename to ...
14241 (struct lwp_info): ... this.
14242 (all_processes): Rename to ...
14243 (all_lwps): ... this.
14244 * proc-service.c (ps_lgetregs): Adjust.
14245 * thread-db.c (thread_db_create_event, find_one_thread)
14246 (maybe_attach_thread, thread_db_get_tls_address): Adjust.
14247
142482009-03-14 Pedro Alves <pedro@codesourcery.com>
14249
14250 * server.c (handle_query): Handle "qAttached".
14251
142522009-03-13 Nathan Sidwell <nathan@codesourcery.com>
14253
14254 * Makefile.in, hostio-errno.c, errno.c, xtensa-xtregs.c: Change to
14255 GPLv3, update license URL.
14256
142572009-03-01 Doug Evans <dje@google.com>
14258
14259 * Makefile.in (INCLUDE_CFLAGS): Add -I$(srcdir)/../common.
14260 (server_h): Add gdb_signals.h.
14261 (signals.o): Update.
14262 * server.h (target_signal_from_host,target_signal_to_host_p)
14263 (target_signal_to_host,target_signal_to_name): Moved to gdb_signals.h.
14264
142652009-02-14 Pierre Muller <muller@ics.u-strasbg.fr>
14266
14267 * remote-utils.c (getpkt): Also generate remote-debug
14268 information if noack_mode is set.
14269
142702009-02-06 Pedro Alves <pedro@codesourcery.com>
14271
14272 * server.c (handle_query): Report qXfer:siginfo:read and
14273 qXfer:siginfo:write as supported and handle them.
14274 * target.h (struct target_ops) <qxfer_siginfo>: New field.
14275 * linux-low.c (linux_xfer_siginfo): New.
14276 (linux_target_ops): Set it.
14277
142782009-01-26 Pedro Alves <pedro@codesourcery.com>
14279
14280 * server.c (gdbserver_usage): Mention --remote-debug.
14281 (main): Accept '--remote-debug' switch.
14282
142832009-01-18 Doug Evans <dje@google.com>
14284
14285 * regcache.c (new_register_cache): No need to check result of xcalloc.
14286 * server.c (handle_search_memory): Back out calls to xmalloc,
14287 result is checked and error is returned to user upon failure.
14288 (handle_query): Ditto. Add more checks for result of malloc.
14289 (handle_v_cont): Check result of malloc, report error back to
14290 user upon failure.
14291 (handle_v_run): Ditto. Call freeargv.
14292 * server.h (freeargv): Declare.
14293 * utils.c (freeargv): New fn.
14294
142952009-01-15 Doug Evans <dje@google.com>
14296
14297 * gdbreplay.c (perror_with_name): Make arg const char *.
14298 * server.h (target_signal_to_name): Make return type const char *.
14299 * thread-db.c (thread_db_err_str): Make return type const char *.
14300 * utils.c (perror_with_name): Make arg const char *.
14301
143022009-01-14 Pedro Alves <pedro@codesourcery.com>
14303
14304 * win32-low.c (get_child_debug_event): Issue a final DBG_CONTINUE
14305 when handling a EXIT_PROCESS_DEBUG_EVENT.
14306
143072009-01-06 Joel Brobecker <brobecker@adacore.com>
14308
14309 * gdbreplay.c (gdbreplay_version): Update copyright year.
14310 * server.c (gdbserver_version): Likewise.
14311
143122009-01-05 Doug Evans <dje@google.com>
14313
14314 * linux-low.c (linux_attach_lwp): Add some comments/fixmes.
14315 (handle_extended_wait): Improve comment.
14316
143172008-12-13 Doug Evans <dje@google.com>
14318
14319 * utils.c (xmalloc,xcalloc,xstrdup): New fns.
14320 * server.h (ATTR_MALLOC): New macro.
14321 (xmalloc,xcalloc,xstrdup): Declare.
14322 * hostio.c: Replace malloc,calloc,strdup with xmalloc,xcalloc,xstrdup.
14323 * inferiors.c: Ditto.
14324 * linux-low.c: Ditto.
14325 * mem-break.c: Ditto.
14326 * regcache.c: Ditto.
14327 * remote-utils.c: Ditto.
14328 * server.c: Ditto.
14329 * target.c: Ditto.
14330 * win32-low.c: Ditto.
14331
143322008-12-12 Doug Evans <dje@google.com>
14333
14334 * linux-low.c (linux_wait_for_process): Don't clobber current_inferior
14335 in debugging printf.
14336
14337 * linux-low.c (handle_extended_wait): Simplify, use my_waitpid.
14338
143392008-12-09 Doug Evans <dje@google.com>
14340
14341 * linux-low.h (struct process_info): Delete member tid, unused.
14342 * thread-db.c (find_one_thread): Update.
14343 (maybe_attach_thread): Update.
14344
143452008-12-02 Pedro Alves <pedro@codesourcery.com>
14346
14347 * target.h (struct target_ops): Add qxfer_osdata member.
14348 * linux-low.c: Include ctype.h and pwd.h and sys/types.h
14349 and dirent.h.
14350 (linux_qxfer_osdata): New functions.
14351 (linux_target_ops): Register linux_qxfer_osdata as qxfer_osdata
14352 callback.
14353 * server.c (handle_query): Handle "qXfer:osdata:read:".
14354 * remote-utils.c (buffer_grow, buffer_free, buffer_init, buffer_finish)
14355 (buffer_xml_printf): New functions.
14356 * server.h (struct buffer): New.
14357 (buffer_grow_str, buffer_grow_str0): New macros.
14358 (buffer_grow, buffer_free, buffer_init, buffer_finish)
14359 (buffer_xml_printf): Declare.
14360
143612008-11-24 Doug Evans <dje@google.com>
14362
14363 * Makefile.in (VERSION,DIST,LINT,LINTFLAGS): Delete, unused.
14364
143652008-11-24 Daniel Jacobowitz <dan@codesourcery.com>
14366
14367 * server.c (handle_v_run): Always use the supplied argument list.
14368
143692008-11-19 Bob Wilson <bob.wilson@acm.org>
14370
14371 * xtensa-xtregs.c (XTENSA_ELF_XTREG_SIZE): Change to 4.
14372 (xtensa_regmap_table): Add entry for scompare1.
14373
143742008-11-18 Thiago Jung Bauermann <bauerman@br.ibm.com>
14375
14376 * Makefile.in (powerpc-isa205-32l.o, powerpc-isa205-32l.c,
14377 powerpc-isa205-altivec32l.o, powerpc-isa205-altivec32l.c,
14378 powerpc-isa205-vsx32l.o, powerpc-isa205-vsx32l.c,
14379 powerpc-isa205-64l.o, powerpc-isa205-64l.c,
14380 powerpc-isa205-altivec64l.o, powerpc-isa205-altivec64l.c,
14381 powerpc-isa205-vsx64l.o, powerpc-isa205-vsx64l.c): New targets.
14382 * configure.srv (powerpc*-*-linux*): Add ISA 2.05 object files and
14383 XML target descriptions.
14384 * linux-ppc-low.c (ppc_arch_setup): Init registers with 64-bit FPSCR
14385 when inferior is running on an ISA 2.05 or later processor. Add
14386 special case to return offset for full 64-bit slot of FPSCR when
14387 in 32-bits.
14388
143892008-11-14 Daniel Gutson <dgutson@codesourcery.com>
14390
14391 * Makefile.in (SFILES, clean): Added sparc64 files.
14392 (reg-sparc64.o, reg-sparc64.c): New.
14393 * configure.srv (sparc*-*-linux*): New configuration.
14394 * linux-low.c (regsets_fetch_inferior_registers): Swap ptrace
14395 syscall arguments for SPARC.
14396 (regsets_store_inferior_registers): Likewise.
14397 * linux-sparc-low.c: New file.
14398
143992008-10-21 Doug Evans <dje@google.com>
14400
14401 * Makefile.in (BFD_DIR,BFD,BFD_SRC,BFD_CFLAGS): Delete.
14402 (READLINE_DIR,READLINE_DEP): Delete.
14403 (INTERNAL_CFLAGS): Update.
14404 (LINTFLAGS): Update.
14405
144062008-10-10 Pedro Alves <pedro@codesourcery.com>
14407
14408 * server.c (handle_v_run): If GDB didn't specify an argv, use the
14409 whole argv from the last run, not just argv[0].
14410
144112008-09-08 Pedro Alves <pedro@codesourcery.com>
14412
14413 * regcache.c (new_register_cache): Return NULL if the register
14414 cache size isn't known yet.
14415 (free_register_cache): Avoid dereferencing a NULL regcache.
14416
144172008-09-04 Daniel Jacobowitz <dan@codesourcery.com>
14418
14419 * configure.srv: Merge MIPS and MIPS64.
14420
144212008-08-24 Maciej W. Rozycki <macro@linux-mips.org>
14422
14423 * Makefile.in (uninstall): Apply $(EXEEXT) too.
14424
144252008-08-18 Luis Machado <luisgpm@br.ibm.com>
14426
14427 * Makefile.in: Add required vsx dependencies.
14428
14429 * linux-ppc-low: Define PPC_FEATURE_HAS_VSX.
14430 Declare init_registers_powerpc_vsx32l.
14431 Declare init_registers_powerpc_vsx64l.
14432 Define PTRACE_GETVSXREGS and PTRACE_SETVSXREGS.
14433 (ppc_arch_setup): Check for VSX in hwcap.
14434 (ppc_fill_vsxregset): New function.
14435 (ppc_store_vsxregset): New function.
14436 Add new VSX entry in regset_info target_regsets.
14437
14438 * configure.srv: Add new VSX dependencies.
14439
144402008-08-12 Pedro Alves <pedro@codesourcery.com>
14441
14442 * remote-utils.c (noack_mode, transport_is_reliable): New globals.
14443 (remote_open): Set or clear transport_is_reliable.
14444 (putpkt_binary): Don't expect acks in noack mode.
14445 (getpkt): Don't send ack/nac in noack mode.
14446 * server.c (handle_general_set): Handle QStartNoAckMode.
14447 (handle_query): If connected by tcp pass QStartNoAckMode+ in
14448 qSupported.
14449 (main): Reset noack_mode on every connection.
14450 * server.h (noack_mode): Declare.
14451
144522008-08-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14453
14454 * Makefile.in (GDBREPLAY_OBS): New variable.
14455 (gdbreplay$(EXEEXT)): Use it to avoid unportable $^.
14456
144572008-08-05 Ulrich Weigand <uweigand@de.ibm.com>
14458 Daniel Jacobowitz <dan@codesourcery.com>
14459
14460 * linux-low.c (linux_resume_one_process): Ignore ESRCH.
14461 (usr_store_inferior_registers): Likewise.
14462 (regsets_store_inferior_registers): Likewise.
14463
144642008-07-31 Rolf Jansen <rj@surtec.com>
14465 Pedro Alves <pedro@codesourcery.com>
14466
14467 * configure.ac: Check for memmem declaration.
14468 * server.c [HAVE_MALLOC_H]: Include malloc.h.
14469 (disable_packet_vCont, disable_packet_Tthread, disable_packet_qC)
14470 (disable_packet_qfThreadInfo): Unconditionally compile.
14471 * server.h [!HAVE_DECL_MEMMEM]: Declare memmem.
14472 * configure, config.in: Regenerate.
14473
144742008-07-28 Doug Kwan <dougkwan@google.com>
14475
14476 * linux-low.c (sys/dir.h, sys/user.h): Remove includes.
14477 (linux_write_memory): Remove declaration of errno.
14478
144792008-07-12 Ulrich Weigand <uweigand@de.ibm.com>
14480
14481 * linux-low.c (handle_extended_wait): Do not use "status"
14482 variable uninitialized.
14483
144842008-07-07 Pedro Alves <pedro@codesourcery.com>
14485
14486 * server.c (handle_v_attach): Inhibit reporting dll changes.
14487
144882008-06-27 Pedro Alves <pedro@codesourcery.com>
14489
14490 * remote-utils.c (prepare_resume_reply): If requested, don't
14491 output "thread:TID" in the T stop reply.
14492
14493 * server.c (disable_packet_vCont, disable_packet_Tthread)
14494 (disable_packet_qC, disable_packet_qfThreadInfo): New globals.
14495 (handle_query): If requested, disable support for qC, qfThreadInfo
14496 and qsThreadInfo.
14497 (handle_v_requests): If requested, disable support for vCont.
14498 (gdbserver_show_disableable): New.
14499 (main): Handle --disable-packet and --disable-packet=LIST.
14500
14501 * server.h (disable_packet_vCont, disable_packet_Tthread)
14502 (disable_packet_qC, disable_packet_qfThreadInfo): Declare.
14503
145042008-06-20 Carlos O'Donell <carlos@codesourcery.com>
14505
14506 * server.c (gdbserver_usage): Mention --version.
14507
145082008-06-06 Daniel Jacobowitz <dan@codesourcery.com>
14509
14510 * Makefile.in (gdbreplay.o): New rule.
14511
145122008-06-06 Joseph Myers <joseph@codesourcery.com>
14513
14514 * gdbreplay.c (gdbreplay_version): Say gdbreplay in version
14515 message, not gdbserver.
14516
145172008-06-05 Vladimir Prus <vladimir@codesourcery.com>
14518 Nathan Sidwell <nathan@codesourcery.com>
14519 Joseph Myers <joseph@codesourcery.com>
14520
14521 * acinclude.m4: Include ../../config/acx.m4.
14522 * configure.ac: Use ACX_PKGVERSION and ACX_BUGURL.
14523 * configure, config.in: Regenerate.
14524 * Makefile.in (gdbreplay$(EXEEXT)): Add version.o.
14525 * server.c (gdbserver_version): Print PKGVERSION.
14526 (gdbsrever_usage): Add stream parameter. Print REPORT_BUGS_TO.
14527 (main): Adjust gdbserver_usage calls.
14528 * gdbreplay.c (version, host_name): Add declarations.
14529 (gdbreplay_version, gdbreplay_usage): New.
14530 (main): Accept --version and --help options.
14531
145322008-06-04 Daniel Jacobowitz <dan@codesourcery.com>
14533
14534 * linux-arm-low.c (thumb_breakpoint, thumb_breakpoint_len): New.
14535 (arm_breakpoint_at): Handle Thumb.
14536 (the_low_target): Add comment.
14537
145382008-05-29 Ulrich Weigand <uweigand@de.ibm.com>
14539
14540 * linux-ppc-low.c (ppc_collect_ptrace_register): Clear buffer.
14541
145422008-05-09 Doug Evans <dje@google.com>
14543
14544 * server.h (decode_search_memory_packet): Declare.
14545 * remote-utils.c (decode_search_memory_packet): New fn.
14546 * server.c (handle_search_memory_1): New fn.
14547 (handle_search_memory): New fn.
14548 (handle_query): Process qSearch:memory packets.
14549
145502008-05-08 Ulrich Weigand <uweigand@de.ibm.com>
14551
14552 * regcache.c (registers_length): Remove.
14553 (set_register_cache): Verify that PBUFSIZ is large enough to hold a
14554 full register packet.
14555 * regcache.h (registers_length): Remove prototype.
14556 * server.h (PBUFSIZ): Define to 16384.
14557
145582008-05-03 Ulrich Weigand <uweigand@de.ibm.com>
14559
14560 * configure.srv (powerpc*-*-linux*): Set srv_regobj to
14561 powerpc-32l.o, powerpc-altivec32l.o, powerpc-e500l.o,
14562 powerpc-64l.o, and powerpc-altivec64l.o.
14563 Remove rs6000/powerpc-32.xml, rs6000/powerpc-64.xml, and
14564 rs6000/powerpc-e500.xml; add rs6000/powerpc-32l.xml,
14565 rs6000/powerpc-altivec32l.xml, rs6000/powerpc-e500l.xml,
14566 rs6000/powerpc-64l.xml, rs6000/powerpc-altivec64l.xml,
14567 rs6000/power-linux.xml, and rs6000/power64-linux.xml
14568 to srv_xmlfiles.
14569
14570 * Makefile.in (reg-ppc.o, reg-ppc.c): Remove, replace by ...
14571 (powerpc-32l.o, powerpc-32l.c): ... these new rules.
14572 (powerpc-32.o, powerpc-32.c): Remove, replace by ...
14573 (powerpc-altivec32l.o, powerpc-altivec32l.c): ... these new rules.
14574 (powerpc-e500.o, powerpc-e500.c): Remove, replace by ...
14575 (powerpc-e500l.o, powerpc-e500l.c): ... these new rules.
14576 (reg-ppc64.o, reg-ppc64.c): Remove, replace by ...
14577 (powerpc-64l.o, powerpc-64l.c): ... these new rules.
14578 (powerpc-64.o, powerpc-64.c): Remove, replace by ...
14579 (powerpc-altivec64l.o, powerpc-altivec64l.c): ... these new rules.
14580 (clean): Update.
14581
14582 * linux-ppc-low.c (init_registers_ppc): Remove, replace by ...
14583 (init_registers_powerpc_32l): ... this new prototype.
14584 (init_registers_powerpc_32): Remove, replace by ...
14585 (init_registers_powerpc_altivec32l): ... this new prototype.
14586 (init_registers_powerpc_e500): Remove, replace by ...
14587 (init_registers_powerpc_e500l): ... this new prototype.
14588 (init_registers_ppc64): Remove, replace by ...
14589 (init_registers_powerpc_64l): ... this new prototype.
14590 (init_registers_powerpc_64): Remove, replace by ...
14591 (init_registers_powerpc_altivec64l): ... this new prototype.
14592 (ppc_num_regs): Set to 73.
14593 (PT_ORIG_R3, PT_TRAP): Define if necessary.
14594 (ppc_regmap, ppc_regmap_e500): Add values for orig_r3 and trap.
14595 (ppc_cannot_store_register): Handle orig_r3 and trap.
14596 (ppc_arch_setup): Update init_registers_... calls.
14597 (ppc_fill_gregset): Handle orig_r3 and trap.
14598
14599 * inferiors.c (clear_inferiors): Reset current_inferior.
14600
146012008-04-23 Paolo Bonzini <bonzini@gnu.org>
14602
14603 * acinclude.m4: Add override.m4.
14604 * configure: Regenerate.
14605
146062008-04-21 Ulrich Weigand <uweigand@de.ibm.com>
14607
14608 * linux-ppc-low.c (ppc_arch_setup): Reset ppc_hwcap after the
14609 initial call to init_register_ppc64.
14610
146112008-04-21 Ulrich Weigand <uweigand@de.ibm.com>
14612
14613 * configure.srv (powerpc64-*-linux*, powerpc-*-linux*): Merge into
14614 single powerpc*-*-linux* case.
14615 (s390-*-linux*, s390x-*-linux*): Merge into single s390*-*-linux* case.
14616
146172008-04-17 Ulrich Weigand <uweigand@de.ibm.com>
14618
14619 * configure.srv [powerpc64-*-linux*]: Remove powerpc-e500.o from
14620 srv_regobj. Remove rs6000/powerpc-e500.xml and rs6000/power-spe.xml
14621 from reg_xmlfiles.
14622 * linux-ppc-low.c: Include <elf.h>.
14623 (PPC_FEATURE_HAS_ALTIVEC, PPC_FEATURE_HAS_SPE): Define.
14624 (ppc_hwcap): New global variable.
14625 (ppc_regmap): Remove __SPE__ #ifdef sections.
14626 (ppc_regmap_e500): New global variable.
14627 (ppc_cannot_store_register): Update __SPE__ special case.
14628 (ppc_get_hwcap): New function.
14629 (ppc_arch_setup): Use it to determine whether inferior supports
14630 AltiVec or SPE registers. Set the_low_target.regmap if appropriate.
14631 (ppc_fill_vrregset, ppc_store_vrregset): Define unconditionally.
14632 Do not access registers if target does not support AltiVec.
14633 (ppc_fill_evrregset, ppc_store_evrregset): Define unconditionally.
14634 Do not access registers if target does not support SPE.
14635 (target_regsets): Unconditionally include AltiVec and SPE regsets.
14636
146372008-04-17 Daniel Jacobowitz <dan@codesourcery.com>
14638
14639 * linux-low.c (disabled_regsets, num_regsets): New.
14640 (use_regsets_p): Delete.
14641 (linux_wait_for_process): Clear disabled_regsets.
14642 (regsets_fetch_inferior_registers): Check and set it.
14643 (regsets_store_inferior_registers): Likewise.
14644 (linux_fetch_registers, linux_store_registers): Do not use
14645 use_regsets_p.
14646 (initialize_low): Allocate disabled_regsets.
14647
146482008-04-14 Daniel Jacobowitz <dan@codesourcery.com>
14649
14650 * Makefile.in (LIBOBJS): New.
14651 (OBS): Use LIBOBJS.
14652 (memmem.o): New rule.
14653 * configure.ac: Use AC_CONFIG_LIBOBJ_DIR and check for memmem.
14654 * configure: Regenerated.
14655
146562008-04-04 Ulrich Weigand <uweigand@de.ibm.com>
14657
14658 * server.c (handle_query): Never return "unsupported" for
14659 qXfer:features:read queries.
14660
146612008-03-27 Ulrich Weigand <uweigand@de.ibm.com>
14662
14663 * server.c (get_features_xml): Fix inverted condition.
14664 (handle_query): Always support qXfer:feature:read.
14665
146662008-03-10 Daniel Jacobowitz <dan@codesourcery.com>
14667
14668 * server.c (wrapper_argv): New.
14669 (start_inferior): Handle wrapper_argv. If set, expect an extra
14670 trap.
14671 (gdbserver_usage): Document --wrapper.
14672 (main): Parse --wrapper.
14673
146742008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
14675
14676 * configure.srv [powerpc64-*-linux*]: Add all files mentioned for
14677 powerpc-*-linux* to srv_regobj and reg_xmlfiles.
14678 * linux-ppc-low.c (ppc_get_pc): Support bi-arch operation.
14679 (ppc_set_pc): Likewise.
14680 (ppc_arch_setup): New function.
14681 (ppc_fill_gregset): Call ppc_collect_ptrace_register instead
14682 of collect_register.
14683 (the_low_target): Use ppc_arch_setup as arch_setup initializer.
14684
146852008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
14686
14687 * configure.srv [powerpc64-*-linux*]: Use linux-ppc-low.o
14688 instead of linux-ppc64-low.o.
14689 * linux-ppc64-low.c: Remove file.
14690 * Makefile.in (SFILES): Remove linux-ppc64-low.c.
14691 (linux-ppc64-low.o): Remove rule.
14692
14693 * linux-ppc-low.c (init_registers_ppc64): Add prototype.
14694 (init_registers_powerpc_64): Likewise.
14695 (ppc_regmap): Conditionally define depending on __powerpc64__.
14696 (ppc_cannot_store_register): Do not special-case "fpscr" when
14697 compiled on __powerpc64__.
14698 (ppc_collect_ptrace_register): New function.
14699 (ppc_supply_ptrace_register): New function.
14700 (ppc_breakpoint): Change type to "unsigned int".
14701 (ppc_breakpoint_at): Change type of "insn" to "unsigned int".
14702 (the_low_target): Conditionally provide initializers for the
14703 arch_setup member depending on __powerpc64__. Install
14704 collect_ptrace_register and supply_ptrace_register members.
14705
147062008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
14707
14708 * regcache.h (gdbserver_xmltarget): Add extern declaration.
14709 * server.c (gdbserver_xmltarget): Define.
14710 (get_features_xml): Use it to replace "target.xml" and arch_string.
14711
14712 * configure.srv: Remove srv_xmltarget. Add XML files that were
14713 mentioned there to srv_xmlfiles instead. Remove conditional tests
14714 on gdb_cv_arm_iwmmxt, gdb_cv_ppc_altivec, gdb_cv_ppc_spe; set
14715 srv_xmlfiles and srv_regobj to include all possible choices.
14716 * configure.ac (srv_xmltarget): Remove.
14717 (srv_xmlfiles): Do not add "target.xml".
14718 (gdb_cv_arm_iwmmxt, gdb_cv_ppc_altivec, gdb_cv_ppc_spe): Remove
14719 checks for supplementary target information.
14720 * configure: Regenerate.
14721 * Makefile.in (XML_TARGET): Remove.
14722 (target.xml): Remove rule.
14723 (clean): Do not clean up target.xml.
14724 (.PRECIOUS): Do not mention target.xml.
14725
14726 * target.h (struct target_ops): Remove arch_string member.
14727 * linux-low.c (linux_arch_string): Remove.
14728 (linux_target_ops): Remove arch_string initializer.
14729 * linux-low.h (struct linux_target_ops): Remove arch_string member.
14730 * linux-i386-low.c (the_low_target): Remove arch_string initializer.
14731 * linux-x86-64-low.c (the_low_target): Remove arch_string initializer.
14732 * spu-low.c (spu_arch_string): Remove.
14733 (spu_target_ops): Remove arch_string initializer.
14734 * win32-low.c (win32_arch_string): Remove.
14735 (win32_target_ops): Remove arch_string initializer.
14736 * win32-low.h (struct win32_target_ops): Remove arch_string member.
14737 * win32-arm-low.c (the_low_target): Remove arch_string initializer.
14738 * win32-i368-low.c (the_low_target): Remove arch_string initializer.
14739
147402008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
14741
14742 * linux-low.h (struct linux_target_ops): Replace left_pad_xfer field
14743 by collect_ptrace_register and supply_ptrace_register hooks.
14744 * linux-low.c (fetch_register): Use supply_ptrace_register callback
14745 instead of checking for the_low_target.left_pad_xfer.
14746 (usr_store_inferior_registers): Use collect_ptrace_register callback
14747 instead of checking for the_low_target.left_pad_xfer.
14748
14749 * linux-s390-low.c (s390_collect_ptrace_register): New function.
14750 (s390_supply_ptrace_register): Likewise.
14751 (s390_fill_gregset): Call s390_collect_ptrace_register.
14752 (the_low_target): Update.
14753
14754 * linux-ppc64-low.c (ppc_collect_ptrace_register): New function.
14755 (ppc_supply_ptrace_register): Likewise.
14756 (the_low_target): Update.
14757
14758 * linux-i386-low.c (the_low_target): Update.
14759 * linux-x86-64-low.c (the_low_target): Update.
14760
147612008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
14762
14763 * configure.srv [s390x-*-linux*]: Set srv_regobj to include both
14764 reg-s390.o and reg-s390x.o.
14765
14766 * linux-low.c (new_inferior): New global variable.
14767 (linux_create_inferior, linux_attach): Set it.
14768 (linux_wait_for_process): Call the_low_target.arch_setup after the
14769 target has stopped for the first time.
14770 (initialize_low): Do not call the_low_target.arch_setup.
14771
14772 * linux-s390-low.c (s390_get_pc): Support bi-arch operation.
14773 (s390_set_pc): Likewise.
14774 (s390_arch_setup): New function.
14775 (the_low_target): Use s390_arch_setup as arch_setup routine.
14776
14777 * regcache.c (realloc_register_cache): New function.
14778 (set_register_cache): Call it for each existing regcache.
14779
147802008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
14781
14782 * server.h (init_registers): Remove prototype.
14783
14784 * linux-low.h (struct linux_target_ops): Add arch_setup field.
14785 * linux-low.c (initialize_low): Call the_low_target.arch_setup ()
14786 instead of init_registers ().
14787 * linux-arm-low.c (init_registers_arm): Add prototype.
14788 (init_registers_arm_with_iwmmxt): Likewise.
14789 (the_low_target): Add initializer for arch_setup field.
14790 * linux-cris-low.c (init_registers_cris): Add prototype.
14791 (the_low_target): Add initializer for arch_setup field.
14792 * linux-crisv32-low.c (init_registers_crisv32): Add prototype.
14793 (the_low_target): Add initializer for arch_setup field.
14794 * linux-i386-low.c (init_registers_i386_linux): Add prototype.
14795 (the_low_target): Add initializer for arch_setup field.
14796 * linux-ia64-low.c (init_registers_ia64): Add prototype.
14797 (the_low_target): Add initializer for arch_setup field.
14798 * linux-m32r-low.c (init_registers_m32r): Add prototype.
14799 (the_low_target): Add initializer for arch_setup field.
14800 * linux-m68k-low.c (init_registers_m68k): Add prototype.
14801 (the_low_target): Add initializer for arch_setup field.
14802 * linux-mips-low.c (init_registers_mips_linux): Add prototype.
14803 (init_registers_mips64_linux): Likewise.
14804 (the_low_target): Add initializer for arch_setup field.
14805 * linux-ppc-low.c (init_registers_ppc): Add prototype.
14806 (init_registers_powerpc_32, init_registers_powerpc_e500): Likewise.
14807 (the_low_target): Add initializer for arch_setup field.
14808 * linux-ppc64-low.c (init_registers_ppc64): Add prototype.
14809 (init_registers_powerpc_64): Likewise.
14810 (the_low_target): Add initializer for arch_setup field.
14811 * linux-s390-low.c (init_registers_s390): Add prototype.
14812 (init_registers_s390x): Likewise.
14813 (the_low_target): Add initializer for arch_setup field.
14814 * linux-sh-low.c (init_registers_sh): Add prototype.
14815 (the_low_target): Add initializer for arch_setup field.
14816 * linux-x86-64-low.c (init_registers_x86_64_linux): Add prototype.
14817 (the_low_target): Add initializer for arch_setup field.
14818 * linux-xtensa-low.c (init_registers_xtensa): Add prototype.
14819 (the_low_target): Add initializer for arch_setup field.
14820
14821 * win32-low.h (struct win32_target_ops): Add arch_setup field.
14822 * win32-low.c (initialize_low): Call the_low_target.arch_setup ()
14823 instead of init_registers ().
14824 * win32-arm-low.c (init_registers_arm): Add prototype.
14825 (the_low_target): Add initializer for arch_setup field.
14826 * win32-i386-low.c (init_registers_i386): Add prototype.
14827 (the_low_target): Add initializer for arch_setup field.
14828
14829 * spu-low.c (init_registers_spu): Add prototype.
14830 (initialize_low): Call initialie_registers_spu () instead of
14831 initialize_registers ().
14832
148332008-02-19 Pedro Alves <pedro@codesourcery.com>
14834
14835 * server.c (handle_v_requests): When handling the vRun and vAttach
14836 packets, if already debugging a process, don't kill it. Return an
14837 error instead.
14838
148392008-02-17 Daniel Jacobowitz <dan@codesourcery.com>
14840
14841 * server.c (handle_query): Correct length check.
14842
148432008-02-14 Pedro Alves <pedro_alves@portugalmail.pt>
14844
14845 * win32-low.c (do_initial_child_stuff): Add process handle
14846 parameter. Set current_process_handle and current_process_id from the
14847 parameters. Clear globals.
14848 (win32_create_inferior): Don't set current_process_handle and
14849 current_process_id here. Instead pass them on the call to
14850 do_initial_child_stuff.
14851 (win32_attach): Likewise.
14852 (win32_clear_inferiors): New.
14853 (win32_kill): Don't close the current process handle or the
14854 current thread handle here. Instead call win32_clear_inferiors.
14855 (win32_detach): Don't open a new handle to the process. Call
14856 win32_clear_inferiors.
14857 (win32_join): Don't rely on current_process_handle; open a new
14858 handle using the process id.
14859 (win32_wait): Call win32_clear_inferiors when the inferior process
14860 has exited.
14861
148622008-02-14 Daniel Jacobowitz <dan@codesourcery.com>
14863
14864 * server.c (monitor_show_help): Add "exit".
14865
148662008-02-11 Maxim Grigoriev <maxim2405@gmail.com>
14867
14868 * Makefile.in (SFILES): Add linux-xtensa-low.c.
14869 (clean): Add reg-xtensa.c.
14870 (linux-xtensa-low.o, reg-xtensa.o, reg-xtensa.c): New dependencies.
14871 * configure.srv (xtensa*-*-linux*) New target.
14872 * linux-xtensa-low.c: New.
14873 * xtensa-xtregs.c: New.
14874
148752008-02-01 Pedro Alves <pedro_alves@portugalmail.pt>
14876
14877 * hostio.c: Don't include errno.h.
14878 (errno_to_fileio_errno): Move to hostio-errno.
14879 * hostio.c: (hostio_error): Remove the error parameter. Defer the
14880 error number outputting to the target->hostio_last_error callback.
14881 (hostio_packet_error): Use FILEIO_EINVAL directly.
14882 (handle_open, handle_pread, hostio_error, handle_unlink): Update
14883 calls to hostio_error.
14884 * hostio-errno.c: New.
14885 * server.h (hostio_last_error_from_errno): Declare.
14886 * target.h (target_ops): Add hostio_last_error member.
14887 * linux-low.c (linux_target_op): Register hostio_last_error_from_errno
14888 as hostio_last_error handler.
14889 * spu-low.c (spu_target_ops): Likewise.
14890 * win32-low.c [_WIN32_WCE] (win32_error_to_fileio_error)
14891 (wince_hostio_last_error): New functions.
14892 (win32_target_ops) [_WIN32_WCE]: Register wince_hostio_last_error
14893 as hostio_last_error handler.
14894 (win32_target_ops) [!_WIN32_WCE]: Register
14895 hostio_last_error_from_errno as hostio_last_error handler.
14896 * Makefile.in (SFILES): Add hostio.c and hostio-errno.c.
14897 (hostio-errno.o): New rule.
14898 * configure.ac (GDBSERVER_DEPFILES): Add $srv_hostio_err_objs.
14899 * configure.srv (srv_hostio_err_objs): New variable. Default to
14900 hostio-errno.o.
14901 (arm*-*-mingw32ce*): Set srv_hostio_err_objs to "".
14902 * configure: Regenerate.
14903
149042008-01-29 Daniel Jacobowitz <dan@codesourcery.com>
14905
14906 * linux-low.c (linux_attach_lwp): Do not _exit after errors.
14907 (linux_kill, linux_detach): Clean up the process list.
14908 * remote-utils.c (remote_open): Improve port number parsing.
14909 (putpkt_binary, input_interrupt): Only send interrupts if the target
14910 is running.
14911 * server.c (extended_protocol): Make static.
14912 (attached): Define earlier.
14913 (exit_requested, response_needed, program_argv): New variables.
14914 (target_running): New.
14915 (start_inferior): Clear attached here.
14916 (attach_inferior): Set attached here.
14917 (require_running): Define.
14918 (handle_query): Use require_running and target_running. Implement
14919 "monitor exit".
14920 (handle_v_attach, handle_v_run): New.
14921 (handle_v_requests): Use require_running. Handle vAttach and vRun.
14922 (gdbserver_usage): Update.
14923 (main): Redo argument parsing. Handle --debug and --multi. Handle
14924 --attach along with other options or after the port. Save
14925 program_argv. Support no initial program. Resynchronize
14926 communication with GDB after an error. Handle "monitor exit".
14927 Use require_running and target_running. Always allow the extended
14928 protocol. Do not error out for Hc0 or Hc-1. Do not automatically
14929 restart in extended mode.
14930 * README: Refer to the GDB manual. Update --attach usage.
14931
149322007-12-20 Andreas Schwab <schwab@suse.de>
14933
14934 * linux-low.c (STACK_SIZE): Define.
14935 (linux_tracefork_child): Use it. Use __clone2 on ia64.
14936 (linux_test_for_tracefork): Likewise.
14937
149382007-12-18 Daniel Jacobowitz <dan@codesourcery.com>
14939
14940 * linux-low.c (linux_wait_for_event): Update messages. Do not
14941 reinsert auto-delete breakpoints.
14942 * mem-break.c (struct breakpoint): Change return type of handler to
14943 int.
14944 (set_breakpoint_at): Update handler type.
14945 (reinsert_breakpoint_handler): Return 1 instead of calling
14946 delete_breakpoint.
14947 (reinsert_breakpoint_by_bp): Check for the original breakpoint before
14948 setting a new one.
14949 (check_breakpoints): Delete auto-delete breakpoints and return 2.
14950 * mem-break.h (set_breakpoint_at): Update handler type.
14951 * thread-db.c (thread_db_create_event, thread_db_create_event): Update.
14952 * win32-low.c (auto_delete_breakpoint): New.
14953 (get_child_debug_event): Use it.
14954
149552007-12-16 Daniel Jacobowitz <dan@codesourcery.com>
14956
14957 * configure.ac: Check for pread and pwrite.
14958 * hostio.c (handle_pread): Fall back to lseek and read.
14959 (handle_pwrite): Fall back to lseek and write.
14960 * config.in, configure: Regenerated.
14961
149622007-12-07 Daniel Jacobowitz <dan@codesourcery.com>
14963
14964 * server.c (myresume): Add own_buf argument.
14965 (main): Update calls.
14966
149672007-12-06 Daniel Jacobowitz <dan@codesourcery.com>
14968
14969 * linux-low.c (linux_wait, linux_resume): Do not handle async I/O.
14970 * remote-utils.c (remote_open): Do not call disable_async_io.
14971 (block_async_io): Delete.
14972 (unblock_async_io): Make static.
14973 (initialize_async_io): New.
14974 * server.c (handle_v_cont): Handle async I/O here.
14975 (myresume): Likewise. Move other common resume tasks here...
14976 (main): ... from here. Call initialize_async_io. Disable async
14977 I/O before the main loop.
14978 * server.h (initialize_async_io): Declare.
14979 (block_async_io, unblock_async_io): Delete prototypes.
14980 * spu-low.c (spu_resume, spu_wait): Do not handle async I/O here.
14981
149822007-12-06 Mick Davis <mickd@goanna.iinet.net.au>
14983
14984 * remote-utils.c (readchar): Allow binary data in received messages.
14985
149862007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
14987
14988 * win32-low.c (attaching): New global.
14989 (win32_create_inferior): Clear the `attaching' global.
14990 (win32_attach): Set the `attaching' global.
14991 (get_child_debug_event) [_WIN32_WCE]: Stop the inferior when
14992 attaching. Only set a breakpoint at the entry point if not
14993 attaching.
14994
149952007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
14996
14997 * server.c (main): Don't report dll events on the initial
14998 connection on attaches.
14999
150002007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
15001
15002 * server.c (main): Relax numerical bases supported for the pid of
15003 the --attach command line argument.
15004
150052007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
15006
15007 * win32-low.c (win32_attach): Call OpenProcess before
15008 DebugActiveProcess, not after. Add last error output to error
15009 call.
15010
150112007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
15012
15013 * win32-low.c (win32_get_thread_context)
15014 (win32_set_thread_context): New functions.
15015 (thread_rec): Use win32_get_thread_context.
15016 (continue_one_thread, win32_resume): Use win32_set_thread_context.
15017 * win32-low.h (win32_thread_info) [_WIN32_WCE]: Add `base_context'
15018 field.
15019
150202007-12-03 Leo Zayas
15021 Pedro Alves <pedro_alves@portugalmail.pt>
15022
15023 * win32-low.c (soft_interrupt_requested, faked_breakpoint): New
15024 global variables.
15025 (child_add_thread): Minor cleanup.
15026 (child_continue): Resume artificially suspended threads before
15027 calling ContinueDebugEvent.
15028 (suspend_one_thread): New.
15029 (fake_breakpoint_event): New.
15030 (get_child_debug_event): Change return type to int. Check here if
15031 gdb sent an interrupt request. If a soft interrupt was requested,
15032 fake a breakpoint event. Return 0 if there is no event to handle,
15033 and 1 otherwise.
15034 (win32_wait): Don't check here if gdb sent an interrupt request.
15035 Ensure there is a valid event to handle.
15036 (win32_request_interrupt): Add soft interruption method as last
15037 resort.
15038
150392007-12-03 Leo Zayas
15040 Pedro Alves <pedro_alves@portugalmail.pt>
15041
15042 * win32-low.h (win32_thread_info): Add descriptions to the
15043 structure members. Replace `suspend_count' counter by a
15044 `suspended' flag.
15045 * win32-low.c (thread_rec): Update condition of when to get the
15046 context from the inferior. Rely on ContextFlags being set if it
15047 has already been retrieved. Only suspend the inferior thread if
15048 we haven't already. Warn if that fails.
15049 (continue_one_thread): s/suspend_count/suspended/. Only call
15050 ResumeThread once. Warn if that fails.
15051
150522007-12-02 Pedro Alves <pedro_alves@portugalmail.pt>
15053
15054 * win32-low.c (win32_wait): Don't read from the inferior when it
15055 has already exited.
15056
150572007-12-02 Pedro Alves <pedro_alves@portugalmail.pt>
15058
15059 * Makefile.in (win32_low_h): New variable.
15060 (win32-low.o): Add dependency on $(win32_low_h).
15061 (win32-arm-low.o, win32-i386-low.o): New rules.
15062
150632007-11-30 Daniel Jacobowitz <dan@codesourcery.com>
15064
15065 * hostio.c: Correct copyright year.
15066
150672007-11-30 Daniel Jacobowitz <dan@codesourcery.com>
15068
15069 * Makefile.in (OBS): Add hostio.o.
15070 (hostio.o): New rule.
15071 * server.h (handle_vFile): Declare.
15072 * hostio.c: New file.
15073 * server.c (handle_v_requests): Take packet_len and new_packet_len
15074 for binary packets. Call handle_vFile.
15075 (main): Update call to handle_v_requests.
15076
150772007-11-05 Daniel Jacobowitz <dan@codesourcery.com>
15078
15079 * linux-low.c: Include <sched.h>.
15080
150812007-11-01 Daniel Jacobowitz <dan@codesourcery.com>
15082
15083 * linux-low.c (linux_tracefork_grandchild): New.
15084 (linux_tracefork_child): Use clone.
15085 (linux_test_for_tracefork): Use clone; allocate and free a stack.
15086
150872007-10-31 Joel Brobecker <brobecker@adacore.com>
15088
15089 * Makefile.in: Use $(SHELL) instead of "sh" to call regdat.sh.
15090
150912007-10-24 Daniel Jacobowitz <dan@codesourcery.com>
15092
15093 * linux-low.c (handle_extended_wait): Handle unexpected signals.
15094
150952007-10-23 Daniel Jacobowitz <dan@codesourcery.com>
15096
15097 * inferiors.c (change_inferior_id): Delete.
15098 (add_pid_to_list, pull_pid_from_list): New.
15099 * linux-low.c (PTRACE_SETOPTIONS, PTRACE_GETEVENTMSG)
15100 (PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK, PTRACE_O_TRACEVFORK)
15101 (PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC, PTRACE_O_TRACEVFORKDONE)
15102 (PTRACE_O_TRACEEXIT, PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK)
15103 (PTRACE_EVENT_CLONE, PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE)
15104 (PTRACE_EVENT_EXIT, __WALL): Provide default definitions.
15105 (stopped_pids, thread_db_active, must_set_ptrace_flags): New variables.
15106 (using_threads): Always set to 1.
15107 (handle_extended_wait): New.
15108 (add_process): Do not set TID.
15109 (linux_create_inferior): Set must_set_ptrace_flags.
15110 (linux_attach_lwp): Remove TID argument. Do not check using_threads.
15111 Use PTRACE_SETOPTIONS. Call new_thread_notify. Update all callers.
15112 (linux_thread_alive): Rename TID argument to LWPID.
15113 (linux_wait_for_process): Handle unknown processes. Do not use TID.
15114 (linux_wait_for_event): Do not use TID or check using_threads. Update
15115 call to dead_thread_notify. Call handle_extended_wait.
15116 (linux_create_inferior): Use PTRACE_SETOPTIONS.
15117 (send_sigstop): Delete sigstop_sent.
15118 (wait_for_sigstop): Avoid TID.
15119 (linux_supports_tracefork_flag, linux_tracefork_child, my_waitpid)
15120 (linux_test_for_tracefork): New.
15121 (linux_lookup_signals): Use thread_db_active and
15122 linux_supports_tracefork_flag.
15123 (initialize_low): Use thread_db_active and linux_test_for_tracefork.
15124 * linux-low.h (get_process_thread): Avoid TID.
15125 (struct process_ifo): Move thread_known and tid to the end. Remove
15126 sigstop_sent.
15127 (linux_attach_lwp, thread_db_init): Update prototypes.
15128 * server.h (change_inferior_id): Delete prototype.
15129 (add_pid_to_list, pull_pid_from_list): New prototypes.
15130 * thread-db.c (thread_db_use_events): New.
15131 (find_first_thread): Rename to...
15132 (find_one_thread): ...this. Update callers and messages. Do not
15133 call fatal. Check thread_db_use_events. Do not call
15134 change_inferior_id or new_thread_notify.
15135 (maybe_attach_thread): Update. Do not call new_thread_notify.
15136 (thread_db_init): Set thread_db_use_events. Check use_events.
15137 * utils.c (fatal, warning): Correct message prefix.
15138
151392007-10-15 Daniel Jacobowitz <dan@codesourcery.com>
15140
15141 * Makefile.in (clean): Remove new files.
15142 (powerpc-32.o, powerpc-32.c, powerpc-e500.o, powerpc-e500.c)
15143 (powerpc-64.o, powerpc-64.c): New rules.
15144 * configure.srv: Use alternate register sets for powerpc64-*-linux*
15145 with AltiVec, powerpc-*-linux* with AltiVec, and powerpc-*-linux*
15146 with SPE.
15147 * linux-ppc-low.c (ppc_regmap): Do not fetch the FP registers for
15148 SPE targets.
15149 (ppc_cannot_store_register): Do not check for FPSCR for SPE targets.
15150 (PTRACE_GETVRREGS, PTRACE_SETVRREGS, SIZEOF_VRREGS, ppc_fill_vrregset)
15151 (ppc_store_vrregset, PTRACE_GETEVRREGS, PTRACE_SETEVRREGS)
15152 (struct gdb_evrregset_t, ppc_fill_evrregset, ppc_store_evrregset): New.
15153 (target_regsets): Add AltiVec and SPE register sets.
15154 * configure.ac: Check for AltiVec and SPE.
15155 * linux-ppc64-low.c (PTRACE_GETVRREGS, PTRACE_SETVRREGS, SIZEOF_VRREGS)
15156 (ppc_fill_vrregset, ppc_store_vrregset): New.
15157 (target_regsets): Add AltiVec register set.
15158 * configure: Regenerated.
15159
151602007-09-19 Daniel Jacobowitz <dan@codesourcery.com>
15161
15162 * linux-low.c (O_LARGEFILE): Define.
15163 (linux_read_memory): Use /proc/PID/mem.
15164 * configure.ac: Use AC_GNU_SOURCE. Check for pread64.
15165 * configure, config.in: Regenerated.
15166
151672007-09-04 Daniel Jacobowitz <dan@codesourcery.com>
15168
15169 * linux-low.c (linux_wait_for_event): Do not pass signals while
15170 single-stepping.
15171
151722007-09-03 Pedro Alves <pedro_alves@portugalmail.pt>
15173
15174 * win32-low.c (create_process): New.
15175 (win32_create_inferior): Use create_process instead of
15176 CreateProcess. If create_process failed retry appending an ".exe"
15177 suffix. Store the GetLastError result immediatelly after
15178 create_process calls and use it on the call to error.
15179
151802007-09-03 Pedro Alves <pedro_alves@portugalmail.pt>
15181
15182 * win32-low.c (handle_load_dll): Don't use toolhelp when waiting.
15183
151842007-08-23 Joel Brobecker <brobecker@adacore.com>
15185
15186 * configure.ac: Switch license to GPLv3.
15187
151882007-08-01 Michael Snyder <msnyder@access-company.com>
15189
15190 * remote-utils.c (putpkt_binary): Memory leak, free buf2.
15191
151922007-07-31 Pedro Alves <pedro_alves@portugalmail.pt>
15193
15194 * win32-low.c (winapi_CloseToolhelp32Snapshot) [_WIN32_WCE]: New
15195 typedef.
15196 (win32_CloseToolhelp32Snapshot) [_WIN32_WCE]: New global var.
15197 (load_toolhelp) [_WIN32_WCE]: Load TOOLHELP.DLL. Get
15198 CloseToolhelp32Snapshot.
15199 (toolhelp_get_dll_name) [_WIN32_WCE]: Close the snapshot with
15200 CloseToolhelp32Snapshot.
15201
152022007-07-27 Michael Snyder <michael.snyder@access-company.com>
15203
15204 * server.c (main): Check for inferior exit before main loop.
15205
152062007-07-18 Pedro Alves <pedro_alves@portugalmail.pt>
15207
15208 * remote-utils.c (remote_open): Set SO_KEEPALIVE on remote_desc
15209 instead of on tmp_desc.
15210
152112007-07-17 Pedro Alves <pedro_alves@portugalmail.pt>
15212 Daniel Jacobowitz <dan@codesourcery.com>
15213
15214 * inferiors.c (all_dlls, dlls_changed, get_dll): New.
15215 (add_thread): Minor cleanups.
15216 (clear_inferiors): Move lower in the file. Clear the DLL
15217 list.
15218 (free_one_dll, match_dll, loaded_dll, unloaded_dll, clear_list): New.
15219 * remote-utils.c (prepare_resume_reply): Check dlls_changed.
15220 (xml_escape_text): New.
15221 * server.c (handle_query): Handle qXfer:libraries:read. Report it
15222 for qSupported.
15223 (handle_v_cont): Report errors.
15224 (gdbserver_version): Update.
15225 (main): Correct size of own_buf. Do not report initial DLL events.
15226 * server.h (struct dll_info, all_dlls, dlls_changed, loaded_dll)
15227 (unloaded_dll, xml_escape_text): New.
15228 * win32-low.c (enum target_waitkind): Update comments.
15229 (win32_add_one_solib, get_image_name, winapi_EnumProcessModules)
15230 (winapi_GetModuleInformation, winapi_GetModuleFileNameExA)
15231 (win32_EnumProcessModules, win32_GetModuleInformation)
15232 (win32_GetModuleFileNameExA, load_psapi, psapi_get_dll_name)
15233 (winapi_CreateToolhelp32Snapshot, winapi_Module32First)
15234 (winapi_Module32Next, win32_CreateToolhelp32Snapshot)
15235 (win32_Module32First, win32_Module32Next, load_toolhelp)
15236 (toolhelp_get_dll_name, handle_load_dll, handle_unload_dll): New.
15237 (get_child_debug_event): Handle DLL events.
15238 (win32_wait): Likewise.
15239
152402007-07-12 Daniel Jacobowitz <dan@codesourcery.com>
15241
15242 * configure.srv: Set srv_linux_regsets for sh*-*-linux*.
15243 * linux-sh-low.c (sh_fill_gregset, target_regsets): New.
15244
152452007-07-08 Pedro Alves <pedro_alves@portugalmail.pt>
15246
15247 * win32-low.c (handle_output_debug_string): Ignore event if not
15248 waiting.
15249
152502007-07-08 Pedro Alves <pedro_alves@portugalmail.pt>
15251
15252 * win32-arm-low.c (arm_wince_breakpoint): Fix typo.
15253
152542007-07-03 Daniel Jacobowitz <dan@codesourcery.com>
15255
15256 * remote-utils.c (look_up_one_symbol): Handle 'm' packets.
15257
152582007-07-02 Daniel Jacobowitz <dan@codesourcery.com>
15259
15260 * inferiors.c (change_inferior_id): Add comment.
15261 * linux-low.c (check_removed_breakpoint): Add an early
15262 prototype. Improve debug output.
15263 (linux_attach): Doc update.
15264 (linux_detach_one_process, linux_detach): Clean up before releasing
15265 each process.
15266 (send_sigstop, wait_for_sigstop): Improve comments and debug output.
15267 * linux-low.h (struct process_info): Doc improvement.
15268 * mem-break.c (delete_all_breakpoints): New.
15269 * mem-break.h (delete_all_breakpoints): New prototype.
15270 * thread-db.c (find_first_thread): New.
15271 (thread_db_create_event): Call it instead of
15272 thread_db_find_new_threads. Clean up unused variables.
15273 (maybe_attach_thread): Remove first thread handling.
15274 (thread_db_find_new_threads): Use find_first_thread.
15275 (thread_db_get_tls_address): Likewise.
15276
152772007-06-27 Daniel Jacobowitz <dan@codesourcery.com>
15278
15279 * thread-db.c (thread_db_find_new_threads): Add prototype.
15280 (thread_db_create_event): Check for the main thread before adding
15281 a new thread.
15282 (maybe_attach_thread): Only enable event reporting if TID == 0.
15283 (thread_db_get_tls_address): Check for new threads.
15284
152852007-06-20 Daniel Jacobowitz <dan@codesourcery.com>
15286
15287 * linux-low.c (linux_create_inferior): Try execv before execvp.
15288 * spu-low.c (spu_create_inferior): Likewise.
15289
152902007-06-13 Mike Frysinger <vapier@gentoo.org>
15291
15292 * linux-low.c (linux_create_inferior): Change execv to execvp.
15293 * spu-low.c (spu_create_inferior): Likewies.
15294
152952007-06-13 Daniel Jacobowitz <dan@codesourcery.com>
15296
15297 * Makefile.in (clean): Clean new files instead of deleted ones.
15298 (reg-mips.o, reg-mips.c, reg-mips64.o, reg-mips64.c): Delete.
15299 (mips-linux.o, mips-linux.c, mips64-linux.o, mips64-linux.c): New
15300 rules.
15301 * configure.srv: Specify XML files and new regformats for MIPS and
15302 MIPS64 GNU/Linux.
15303 * linux-mips-low.c (mips_num_regs): Set to only used registers.
15304 (mips_regmap): Do not fetch $0. Remove unused registers. Add
15305 an entry for the restart register.
15306 (mips_cannot_fetch_register, mips_cannot_store_register)
15307 (mips_reinsert_addr, mips_fill_fpregset, mips_store_fpregset): Update
15308 register names to match the XML descriptions.
15309 (mips_fill_gregset, mips_store_gregset): Likewise. Handle the
15310 restart register instead of $0.
15311
153122007-06-12 Ulrich Weigand <uweigand@de.ibm.com>
15313 Markus Deuling <deuling@de.ibm.com>
15314
15315 * remote-utils.c (decode_xfer_write): New function.
15316 * server.h (decode_xfer_write): Add prototype.
15317 * server.c (handle_query): Add PACKET_LEN argument. Support
15318 qXfer:spu:read and qXfer:spu:write packets.
15319 (main): Pass packet_len to handle_query.
15320 * spu-low.c (spu_target_ops): Add spu_proc_xfer_spu.
15321 * target.h (target_ops): Add qxfer_spu.
15322
153232007-06-12 Ulrich Weigand <uweigand@de.ibm.com>
15324
15325 * spu-low.c (spu_proc_xfer_spu): Do not return failure when
15326 accessing non-seekable spufs files.
15327
153282007-05-16 Markus Deuling <deuling@de.ibm.com>
15329
15330 * server.c (handle_query): Add reply for qC packet.
15331
153322007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
15333 Leo Zayas <lerele@champenstudios@com>
15334
15335 * server.h (check_remote_input_interrupt_request): New function.
15336 * remote_utils.c (INVALID_DESCRIPTOR): New define.
15337 (remote_desc): Initialize with INVALID_DESCRIPTOR.
15338 (input_interrupt): Expose on USE_WIN32API too. Fix whitespace.
15339 (check_remote_input_interrupt_request): New function.
15340 * server.h (check_remote_input_interrupt_request): Declare.
15341 * win32-low.c (winapi_DebugBreakProcess,
15342 winapi_GenerateConsoleCtrlEvent): New typedefs.
15343 (get_child_debug_event): Lower Win32 debug event polling from 1 sec
15344 to 250 ms.
15345 (win32_wait): Check for remote interrupt request
15346 with check_remote_input_interrupt_request.
15347 (win32_request_interrupt): New function.
15348 (win32_target_op): Set request_interrupt to win32_request_interrupt.
15349
153502007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
15351
15352 * win32-low.c (debug_registers_changed,
15353 debug_registers_used, CONTEXT_EXTENDED_REGISTERS,
15354 CONTEXT_FLOATING_POINT, CONTEXT_DEBUG_REGISTERS,
15355 CONTEXT_DEBUGGER, CONTEXT_DEBUGGER_DR): Delete.
15356 (thread_rec): Get context using the low target.
15357 (child_add_thread): Call thread_added on the low target,
15358 which does the same thing.
15359 (regptr): Delete.
15360 (do_initial_child_stuff): Remove debug registers references.
15361 Set context using the low target. Resume threads after
15362 setting the contexts.
15363 (child_continue): Remove dead variable. Remove debug
15364 registers references.
15365 (child_fetch_inferior_registers): Go through the low target.
15366 (do_child_store_inferior_registers): Remove.
15367 (child_store_inferior_registers): Go through the low target.
15368 (win32_resume): Remove debug registers references.
15369 Set context using the low target.
15370 (handle_exception): Change return type to void. Don't record
15371 context here. Set status to TARGET_WAITKIND_SPURIOUS on a
15372 first chance exception.
15373 (get_child_debug_event): Change return type to void. Remove
15374 goto loop. Always return after waiting for debug event.
15375 (win32_wait): Convert to switch statement. Handle spurious
15376 events.
15377
15378 * win32-i386-low.c (debug_registers_changed,
15379 debug_registers_used): New.
15380 (initial_stuff): Rename to ...
15381 (i386_initial_stuff): ... this. Clear debug registers
15382 state variables.
15383 (store_debug_registers): Delete.
15384 (i386_get_thread_context): New.
15385 (load_debug_registers): Delete.
15386 (i386_set_thread_context): New.
15387 (i386_thread_added): New.
15388 (single_step): Rename to ...
15389 (i386_single_step): ... this.
15390 (do_fetch_inferior_registers): Rename to ...
15391 (i386_fetch_inferior_register): ... this.
15392 (i386_store_inferior_register): New.
15393 (the_low_target): Adapt to new interface.
15394
15395 * win32-arm-low.c (CONTEXT_FLOATING_POINT): Define.
15396 (arm_get_thread_context): New.
15397 (arm_set_thread_context): New.
15398 (regptr): New.
15399 (do_fetch_inferior_registers): Rename to ...
15400 (arm_fetch_inferior_register): ... this.
15401 (arm_store_inferior_register): New.
15402 (arm_wince_breakpoint): Reimplement as unsigned long.
15403 (arm_wince_breakpoint_len): Define.
15404 (the_low_target): Adapt to new interface.
15405
15406 * win32-low.h (target_ops): Remove regmap, store_debug_registers and
15407 load_debug_registers. Add get_thread_context, set_thread_context,
15408 thread_added and store_inferior_register. Rename
15409 fetch_inferior_registers to fetch_inferior_register.
15410 (regptr): Remove declaration.
15411
154122007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
15413
15414 * linux-low.c (linux_detach): Change return type to int. Return 0.
15415 * spu-low.c (spu_detach): Likewise.
15416
154172007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
15418
15419 * target.h (target_ops): Change return type of detach to int.
15420 Add join.
15421 (join_inferior): New.
15422 * server.c (main): Don't skip detach support on mingw32.
15423 If the inferior doesn't support detaching return error.
15424 Call join_inferior instead of using waitpid.
15425 * linux-low.c (linux_join): New.
15426 (linux_target_op): Add linux_join.
15427 * spu-low.c (spu_join): New.
15428 (spu_target_ops): Add spu_join.
15429 * win32-low.c (win32_detach): Adapt to new interface.
15430 Reopen current_process_handle before detaching. Issue a child
15431 resume before detaching.
15432 (win32_join): New.
15433 (win32_target_op): Add win32_join.
15434
154352007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
15436
15437 * win32-low.c (win32-attach): Fix return value.
15438 * target.h (target_ops): Describe ATTACH return values.
15439
154402007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
15441
15442 * win32-low.c (GETPROCADDRESS): Define.
15443 (winapi_DebugActiveProcessStop): Add WINAPI. typedef as pointer.
15444 (winapi_DebugSetProcessKillOnExit): Likewise.
15445 (win32_create_inferior): Force usage of ansi CreateProcessA.
15446 (win32_attach): Use GETPROCADDRESS.
15447 (win32_detach): Likewise.
15448
154492007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
15450
15451 * win32-low.c (win32_wait): Don't use WSTOPSIG.
15452
154532007-03-30 Pedro Alves <pedro_alves@portugalmail.pt>
15454
15455 * win32-low.c: Commit leftover changes from 2007-03-29.
15456
154572007-03-30 Daniel Jacobowitz <dan@codesourcery.com>
15458
15459 * i387-fp.c (struct i387_fsave, struct i387_fxsave): Make 16-bit
15460 fields short instead of int. Add explicit padding.
15461 (i387_cache_to_fsave): Remove unnecessary casts.
15462 (i387_fsave_to_cache): Doc fix.
15463 (i387_cache_to_fxsave): Remove unnecessary casts and masking.
15464
154652007-03-30 Daniel Jacobowitz <dan@codesourcery.com>
15466
15467 * i387-fp.c (i387_cache_to_fxsave): Reinitialize val2 before use.
15468 (i387_fxsave_to_cache): Check fp->ftag while building ftag value.
15469
154702007-03-29 Pedro Alves <pedro_alves@portugalmail.pt>
15471
15472 * configure.srv (arm*-*-mingw32ce*): Move near the other
15473 arm targets.
15474
154752007-03-29 Pedro Alves <pedro_alves@portugalmail.pt>
15476
15477 * configure.ac: Add errno checking.
15478 (AC_CHECK_HEADERS): Add errno.h, fcntl.h, signal.h,
15479 sys/file.h and malloc.h.
15480 (AC_CHECK_DECLS): Add perror.
15481 (srv_mingwce): Handle.
15482 * configure.srv (i[34567]86-*-cygwin*): Add
15483 win32-i386-low.o to srv_tgtobj.
15484 (i[34567]86-*-mingw*): Likewise.
15485 (arm*-*-mingw32ce*): Add case.
15486 * gdbreplay.c [HAVE_SYS_FILE_H, HAVE_SIGNAL_H,
15487 HAVE_FCNTL_H, HAVE_ERRNO_H, HAVE_MALLOC_H]: Check.
15488 [__MINGW32CE__] (strerror): New function.
15489 [__MINGW32CE__] (errno): Define to GetLastError.
15490 [__MINGW32CE__] (COUNTOF): New macro.
15491 (remote_open): Remove extra close call.
15492 * mem-break.c (delete_breakpoint_at): New function.
15493 * mem-break.h (delete_breakpoint_at): Declare.
15494 * remote-utils.c [HAVE_SYS_FILE_H, HAVE_SIGNAL_H,
15495 HAVE_FCNTL_H, HAVE_UNISTD_H, HAVE_ERRNO_H]: Check.
15496 [USE_WIN32API] (read, write): Add char* casts.
15497 * server.c [HAVE_UNISTD_H, HAVE_SIGNAL_H]: Check.
15498 * server.h: Include wincecompat.h on Windows CE.
15499 [HAVE_ERRNO_H]: Check.
15500 (perror): Declare if not declared.
15501 * utils.c: Add stdlib.h, errno.h and malloc.h includes.
15502 (perror_with_name): Remove errno declaration.
15503 * wincecompat.h: New.
15504 * wincecompat.c: New.
15505 * win32-low.h: New.
15506 * win32-arm-low.c: New.
15507 * win32-i386-low.c: New.
15508 (win32-low.c): Include mem-break.h and win32-low.h, and winnt.h.
15509 (OUTMSG2): Make it safe.
15510 (_T): New macro.
15511 (COUNTOF): New macro.
15512 (NUM_REGS): Get it from the low target.
15513 (CONTEXT_EXTENDED_REGISTERS, CONTEXT_FLOATING_POINT,
15514 CONTEXT_DEBUG_REGISTERS): Add fallbacks to 0.
15515 (thread_rec): Let low target handle debug registers.
15516 (child_add_thread): Likewise.
15517 (child_init_thread_list): Likewise.
15518 (continue_one_thread): Likewise.
15519 (regptr): New.
15520 (do_child_fetch_inferior_registers): Move to ...
15521 * win32-i386-low.c: ... here, and rename to ...
15522 (do_fetch_inferior_registers): ... this.
15523 * win32-low.c (child_fetch_inferior_registers):
15524 Go through the low target.
15525 (do_child_store_inferior_registers): Use regptr.
15526 (strwinerror): New function.
15527 (win32_create_inferior): Handle Windows CE.
15528 Use strwinerror instead of strerror on Windows error
15529 codes. Add program to the error output.
15530 Don't close the main thread handle on Windows CE.
15531 (win32_attach): Use coredll.dll on Windows CE.
15532 (win32_kill): Close current process and current
15533 thread handles.
15534 (win32_detach): Use coredll.dll on Windows CE.
15535 (win32_resume): Let low target handle debug registers, and
15536 step request.
15537 (handle_exception): Add/Remove initial breakpoint. Avoid
15538 non-existant WSTOPSIG on Windows CE.
15539 (win32_read_inferior_memory): Cast to remove warning.
15540 (win32_arch_string): Go through the low target.
15541 (initialize_low): Call set_breakpoint_data with the low
15542 target's breakpoint.
15543 * win32-low.c (dr, FLAG_TRACE_BIT, FCS_REGNUM,
15544 FOP_REGNUM, mappings): Move to ...
15545 * win32-i386-low.c: ... here.
15546 * win32-low.c (win32_thread_info): Move to ...
15547 * win32-low.h: ... here.
15548 * Makefile.in (SFILES): Add win32-low.c, win32-i386-low.c,
15549 win32-arm-low.c and wincecompat.c.
15550 (all:): Add $EXEEXT.
15551 (install-only:): Likewise.
15552 (gdbserver:): Likewise.
15553 (gdbreplay:): Likewise.
15554 * config.in: Regenerate.
15555 * configure: Regenerate.
15556
155572007-03-28 Pedro Alves <pedro_alves@portugalmail.pt>
15558
15559 * win32-low.c: Rename typedef thread_info to
15560 win32_thread_info throughout.
15561
155622007-03-28 Pedro Alves <pedro_alves@portugalmail.pt>
15563
15564 * win32-i386-low.c: Rename to ...
15565 * win32-low.c: ... this.
15566 * configure.srv: Replace win32-i386-low.o with win32-low.o.
15567 * Makefile.in: Likewise.
15568
155692007-03-27 Pedro Alves <pedro_alves@portugalmail.pt>
15570
15571 * remote-utils.c (monitor_output): Constify msg parameter.
15572 * server.h (monitor_output): Likewise.
15573 * win32-i386-low.c (handle_output_debug_string): New.
15574 (win32_kill): Handle OUTPUT_DEBUG_STRING_EVENT events using
15575 handle_output_debug_string.
15576 (get_child_debug_event): Likewise.
15577
155782007-03-27 Mat Hostetter <mat@lcs.mit.edu>
15579
15580 * server.c (main): Correct strtoul check.
15581
155822007-03-27 Jon Ringle <jon@ringle.org>
15583
15584 * linux-low.c: Check __ARCH_HAS_MMU__ also.
15585
155862007-03-27 Brooks Moses <brooks.moses@codesourcery.com>
15587
15588 * Makefile.in: Add dummy "pdf" and "install-pdf" targets.
15589
155902007-02-27 Daniel Jacobowitz <dan@codesourcery.com>
15591
15592 * terminal.h: Check HAVE_SGTTY_H.
15593
155942007-02-27 Mat Hostetter <mat@lcs.mit.edu>
15595
15596 * remote-utils.c (remote_open): Print out the assigned port number.
15597
155982007-02-26 Daniel Jacobowitz <dan@codesourcery.com>
15599
15600 * remote-utils.c (monitor_output): New function.
15601 * server.c (debug_threads): Define here.
15602 (monitor_show_help): New function.
15603 (handle_query): Handle qRcmd.
15604 (main): Do not handle 'd' packet.
15605 * server.h (debug_threads, remote_debug, monitor_output): Declare.
15606 * linux-low.c, spu-low.c, win32-i386-low.c: Remove definitions
15607 of debug_threads.
15608
156092007-02-25 Pedro Alves <pedro_alves@portugalmail.pt>
15610
15611 * Makefile.in (EXEEXT): New.
15612 (clean): Use $(EXEEXT).
15613
156142007-02-25 Pedro Alves <pedro_alves@portugalmail.pt>
15615
15616 * target.h (target_ops): Rename send_signal to request_interrupt,
15617 and remove enum target_signal parameter.
15618 * linux-low.c (linux_request_interrupt): Rename from
15619 linux_send_signal, and always send SIGINT.
15620 * spu-low.c (spu_request_interrupt): Rename from spu_send_signal,
15621 and always send SIGINT.
15622 * remote-utils.c (putpkt_binary): Call request_interrupt, instead
15623 of send_signal.
15624 (input_interrupt): Likewise.
15625
156262007-02-25 Pedro Alves <pedro_alves@portugalmail.pt>
15627
15628 * server.c (get_features_xml): Check if target implemented
15629 arch_string.
15630 * win32-i386-low.c (win32_arch_string): New.
15631 (win32_target_ops): Add win32_arch_string as arch_string member.
15632
156332007-02-22 Markus Deuling <deuling@de.ibm.com>
15634
15635 * spu-low.c (spu_arch_string): New.
15636 (spu_target_ops): Add spu_arch_string.
15637
156382007-02-16 Daniel Jacobowitz <dan@codesourcery.com>
15639
15640 * remote-utils.c: Remove HAVE_TERMINAL_H check.
15641 * configure.ac: Do not check for terminal.h.
15642 * configure, config.in: Regenerated.
15643
156442007-02-08 Daniel Jacobowitz <dan@codesourcery.com>
15645
15646 * Makefile.in (OBS): Add $(XML_BUILTIN).
15647 (XML_DIR, XML_TARGET, XML_FILES, XML_BUILTIN): New.
15648 (clean): Update.
15649 (target.xml, xml-builtin.c, stamp-xml, arm-with-iwmmxt.o)
15650 (arm-with-iwmmxt.c): New.
15651 * config.in, configure: Regenerate.
15652 * configure.ac: Check for iWMMXt. Handle srv_xmltarget,
15653 srv_xmlbuiltin, and srv_xmlfiles. Define USE_XML.
15654 * configure.srv: Mention srv_xmltarget and srv_xmlfiles.
15655 (arm*-*-linux*): Add iWMMXt and regset support.
15656 * linux-arm-low.c (PTRACE_GETWMMXREGS, PTRACE_SETWMMXREGS): Define.
15657 (arm_fill_gregset, arm_store_gregset, arm_fill_wmmxregset)
15658 (arm_store_wmmxregset, target_regsets): New.
15659 * server.c (get_features_xml): Take annex argument. Check builtin
15660 XML documents.
15661 (handle_query): Handle multiple annexes.
15662
156632007-01-29 Daniel Jacobowitz <dan@codesourcery.com>
15664
15665 * remote-utils.c [USE_WIN32API] (read, write): Define.
15666 (putpkt_binary, input_interrupt, readchar, getpkt): Use read and
15667 write.
15668
156692007-01-09 Daniel Jacobowitz <dan@codesourcery.com>
15670
15671 * linux-i386-low.c (the_low_target): Set arch_string.
15672 * linux-x86-64-low.c (the_low_target): Likewise.
15673 * linux-low.c (linux_arch_string): New.
15674 (linux_target_ops): Add it.
15675 * linux-low.h (struct linux_target_ops): Add arch_string.
15676 * server.c (write_qxfer_response): Use const void * for DATA.
15677 (get_features_xml): New.
15678 (handle_query): Handle qXfer:features:read. Report it for qSupported.
15679 * target.h (struct target_ops): Add arch_string method.
15680
156812007-01-03 Denis Pilat <denis.pilat@st.com>
15682 Daniel Jacobowitz <dan@codesourcery.com>
15683
15684 * linux-low.c (linux_kill): Handle being called with no threads.
15685 * win32-i386-low.c (win32_kill): Likewise.
15686 (get_child_debug_event): Clear current_process_handle.
15687
156882006-12-30 Denis PILAT <denis.pilat@st.com>
15689 Daniel Jacobowitz <dan@codesourcery.com>
15690
15691 * remote-utils.c (remote_open): Check the type of specified
15692 serial port devices before opening them.
15693 * server.c (main): Kill the inferior if an error occurs during
15694 the first remote_open.
15695
156962006-12-05 Markus Deuling <deuling@de.ibm.com>
15697
15698 * README: Update supported targets.
15699
157002006-11-28 Daniel Jacobowitz <dan@codesourcery.com>
15701
15702 * Makefile.in (clean): Remove reg-mips64.c.
15703 (reg-mips64.c, reg-mips64.o): New rules.
15704 * configure.srv: Handle mips64. Include regset support for mips.
15705 * linux-mips-low.c (union mips_register): New.
15706 (mips_get_pc, mips_set_pc, mips_reinsert_addr): Use it.
15707 (mips_breakpoint, mips_breakpoint_at): Use int.
15708 (mips_collect_register, mips_supply_register)
15709 (mips_collect_register_32bit, mips_supply_register_32bit)
15710 (mips_fill_gregset, mips_store_gregset, mips_fill_fpregset)
15711 (mips_store_fpregset, target_regsets): New.
15712 * thread-db.c (thread_db_get_tls_address): Use uintptr_t.
15713
157142006-11-22 Ulrich Weigand <uweigand@de.ibm.com>
15715
15716 * configure.srv: Add target "spu*-*-*".
15717 * Makefile.in (clean): Remove reg-spu.c.
15718 (reg-spu.c, reg-spu.o, spu-low.o): Add dependencies.
15719 * spu-low.c: New file.
15720
157212006-11-16 Daniel Jacobowitz <dan@codesourcery.com>
15722
15723 * configure.ac: Correct td_thr_tls_get_addr test.
15724 * configure: Regenerated.
15725
157262006-11-16 Daniel Jacobowitz <dan@codesourcery.com>
15727
15728 * linux-low.c (linux_wait_for_event): Reformat. Use the
15729 pass_signals array.
15730 * remote-utils.c (decode_address_to_semicolon): New.
15731 * server.c (pass_signals, handle_general_set): New.
15732 (handle_query): Mention QPassSignals for qSupported.
15733 (main): Call handle_general_set.
15734 * server.h (pass_signals, decode_address_to_semicolon): New.
15735
157362006-11-06 Daniel Jacobowitz <dan@codesourcery.com>
15737
15738 * server.c (handle_query): Correct error handling for read_auxv.
15739
157402005-10-19 Ulrich Weigand <uweigand@de.ibm.com>
15741
15742 * configure.srv [s390-*-linux*, s390x-*-linux*]: Set srv_linux_regsets
15743 and srv_linux_thread_db to yes.
15744 * linux-s390-low.c (s390_fill_gregset): New function.
15745 (target_regsets): Define data structure.
15746
157472006-10-17 Daniel Jacobowitz <dan@codesourcery.com>
15748
15749 * acinclude.m4 (SRV_CHECK_TLS_GET_ADDR): New.
15750 * configure.ac: Use it. Define HAVE_TD_THR_TLS_GET_ADDR.
15751 * config.in, configure: Regenerated.
15752 * inferiors.c (gdb_id_to_thread): New function.
15753 (gdb_id_to_thread_id): Use it.
15754 * linux-low.c (linux_target_ops): Use thread_db_get_tls_address.
15755 * linux-low.h (struct process_info): Add th member.
15756 (thread_db_get_tls_address): New prototype.
15757 * remote-utils.c (decode_address): Make non-static.
15758 * server.c (handle_query): Handle qGetTLSAddr.
15759 * server.h (gdb_id_to_thread, decode_address): New prototypes.
15760 * target.h (struct target_ops): Add get_tls_address.
15761 * thread-db.c (maybe_attach_thread): Save the thread handle.
15762 (thread_db_get_tls_address): New.
15763
157642006-09-28 Daniel Jacobowitz <dan@codesourcery.com>
15765
15766 * linux-low.c (PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
15767 (linux_resume_one_process): Take a siginfo_t *. Update all
15768 callers. Queue it if necessary. Use PTRACE_SETSIGINFO.
15769 (struct pending_signals): Add a siginfo_t.
15770 (linux_wait_for_process): Always set last_status.
15771 (linux_wait_for_event): Use PTRACE_GETSIGINFO.
15772 (linux_queue_one_thread): Use PTRACE_GETSIGINFO.
15773 * linux-low.h (struct process_info): Add last_status.
15774
157752006-09-21 Daniel Jacobowitz <dan@codesourcery.com>
15776
15777 * remote-utils.c (try_rle): New function.
15778 (putpkt_binary): Use it.
15779
157802006-08-19 Daniel Jacobowitz <dan@codesourcery.com>
15781
15782 * Makefile.in (clean): Clean reg-x86-64-linux.c.
15783 (reg-x86-64-linux.o, reg-x86-64-linux.c): New.
15784 * configure.srv (x86_64-*-linux*): Use reg-x86-64-linux.o.
15785 * linux-x86-64-low.c (x86_64_regmap): Include ORIG_RAX.
15786 (x86_64_fill_gregset, x86_64_store_gregset): Skip floating
15787 point registers.
15788
157892006-08-08 Richard Sandiford <richard@codesourcery.com>
15790
15791 * server.c (terminal_fd): New variable.
15792 (old_foreground_pgrp): Likewise.
15793 (restore_old_foreground_pgrp): New function.
15794 (start_inferior): Record the terminal file descriptor in terminal_fd
15795 and its original foreground group in old_foreground_pgrp. Register
15796 restore_old_foreground_pgrp with atexit().
15797
157982006-07-26 Daniel Jacobowitz <dan@codesourcery.com>
15799
15800 * server.c (handle_query): Correct qPart to qXfer.
15801
158022006-07-22 Daniel Jacobowitz <dan@codesourcery.com>
15803
15804 * configure.ac: Check for more headers which are missing on
15805 Windows. Automatically supply -lwsock32 and USE_WIN32API.
15806 * configure.srv: Add Cygwin and mingw32.
15807 * remote-utils.c: Don't include headers unconditionally which
15808 are missing on mingw32. Include <winsock.h> for mingw32.
15809 (remote_open): Adjust for mingw32 support. Flush
15810 standard error after writing to it.
15811 (remote_close, putpkt_binary, input_interrupt, block_async_io)
15812 (unblock_async_io, enable_async_io, disable_async_io)
15813 (readchar, getpkt): Update for Winsock support.
15814 (prepare_resume_reply): Expect a protocol signal number.
15815 * server.c: Disable <sys/wait.h> on mingw32.
15816 (start_inferior): Adjust for mingw32 support. Flush
15817 standard error after writing to it.
15818 (attach_inferior): Likewise. Use protocol signal
15819 numbers.
15820 (main): Skip 'D' packet on mingw32. Use protocol signal numbers
15821 and names.
15822 * win32-i386-low.c: New file.
15823 * Makefile.in (XM_CLIBS): Set.
15824 (gdbserver, gdbreplay): Use $(INTERNAL_CFLAGS).
15825 (win32-i386-low.o): New dependency rule.
15826 * linux-low.c (linux_wait): Use target signal numbers.
15827 * target.h (struct target_ops): Doc fix.
15828 * server.h (target_signal_to_name): New prototype.
15829 * gdbreplay.c: Don't include headers unconditionally which
15830 are missing on mingw32. Include <winsock.h> for mingw32.
15831 (remote_close, remote_open): Adjust for Winsock support.
15832 * configure, config.in: Regenerated.
15833
158342006-07-12 Daniel Jacobowitz <dan@codesourcery.com>
15835
15836 * server.c (decode_xfer_read, write_qxfer_response): New.
15837 (handle_query): Take a packet length argument. Handle
15838 qXfer:auxv:read instead of qPart:auxv:read. Mention it in
15839 the qSupported response.
15840 (main): Update call to handle_query.
15841
158422006-06-22 Daniel Jacobowitz <dan@codesourcery.com>
15843
15844 * remote-utils.c (remote_escape_output, remote_unescape_input): New.
15845 (putpkt_binary): Renamed from putpkt and adjusted for binary
15846 data.
15847 (putpkt): New wrapper for putpkt_binary.
15848 (readchar): Don't mask off the high bit.
15849 (decode_X_packet): New function.
15850 * server.c (main): Call putpkt_binary if a handler sets the packet
15851 length. Save the length of the incoming packet. Handle 'X'.
15852 * server.h (gdb_byte, remote_escape_output, decode_X_packet): New.
15853
158542006-06-21 Daniel Jacobowitz <dan@codesourcery.com>
15855
15856 * server.c (handle_query): Handle qSupported.
15857
158582006-05-30 Daniel Jacobowitz <dan@codesourcery.com>
15859
15860 * remote-utils.c (all_symbols_looked_up): New variable.
15861 (look_up_one_symbol): Check it.
15862 * server.h (look_up_one_symbol): New declaration.
15863 * thread-db.c (thread_db_init): Set all_symbols_looked_up.
15864
158652006-05-30 Daniel Jacobowitz <dan@codesourcery.com>
15866
15867 * Makefile.in (linux-arm-low.o): Update dependencies.
15868 * linux-arm-low.c: Include "gdb_proc_service.h".
15869 (PTRACE_GET_THREAD_AREA): Define.
15870 (ps_get_thread_area): New function.
15871
158722006-05-09 Nathan Sidwell <nathan@codesourcery.com>
15873
15874 * configure.srv (m68k*-*-uclinux*): New target.
15875 * linux-low.c (linux_create_inferior): Use vfork on mmuless systems.
15876 (linux_resume_one_process): Remove extraneous cast.
15877 (linux_read_offsets): New.
15878 (linux_target_op): Add linux_read_offsets on mmuless systems.
15879 * server.c (handle_query): Add qOffsets logic.
15880 * target.h (struct target_ops): Add read_offsets.
15881
158822006-03-15 Daniel Jacobowitz <dan@codesourcery.com>
15883
15884 * linux-mips-low.c: Include <sys/ptrace.h> and "gdb_proc_service.h".
15885 (PTRACE_GET_THREAD_AREA): Define.
15886 (ps_get_thread_area): New function.
15887 * Makefile.in (linux-i386-low.o, linux-mips-low.o)
15888 (linux-x86-64-low.o): Update.
15889
158902006-03-15 Daniel Jacobowitz <dan@codesourcery.com>
15891
15892 * configure.ac: Remove checks for prfpregset_t.
15893 * gdb_proc_service.h: New file.
15894 * linux-i386-low.c, linux-x86-64-low.c, thread-db.c: Use the
15895 new "gdb_proc_service.h".
15896 * proc-service.c: Likewise.
15897 (ps_pglobal_lookup, ps_pdread, ps_pdwrite): Use psaddr_t.
15898 (ps_lgetfpregs, ps_lsetfpregs): Use a void* argument.
15899 * Makefile.in (gdb_proc_service_h): Updated.
15900 * configure, config.in: Regenerated.
15901
159022006-03-03 Daniel Jacobowitz <dan@codesourcery.com>
15903
15904 * remote-utils.c (prepare_resume_reply): Move declaration
15905 of gdb_id_from_wait to the top of the block.
15906
159072006-02-15 Daniel Jacobowitz <dan@codesourcery.com>
15908
15909 * linux-low.c (regsets_store_inferior_registers): Read the regset
15910 from the target before filling it.
15911
159122006-02-08 Daniel Jacobowitz <dan@codesourcery.com>
15913
15914 * server.c (attach_inferior): Return SIGTRAP for a successful
15915 attach.
15916
159172006-02-01 Daniel Jacobowitz <dan@codesourcery.com>
15918
15919 * Makefile.in (OBS): Add version.o.
15920 (STAGESTUFF): Delete.
15921 (version.o): Add dependencies.
15922 (version.c): Replace rule.
15923 (clean): Remove version.c.
15924 * server.c (gdbserver_version): New.
15925 (gdbserver_usage): Use printf.
15926 (main): Handle --version and --help.
15927 * server.h (version, host_name): Add declarations.
15928
159292005-12-23 Eli Zaretskii <eliz@gnu.org>
15930
15931 * linux-arm-low.c:
15932 * linux-arm-low.c:
15933 * inferiors.c:
15934 * i387-fp.h:
15935 * i387-fp.c:
15936 * gdbreplay.c:
15937 * regcache.c:
15938 * proc-service.c:
15939 * mem-break.h:
15940 * mem-break.c:
15941 * linux-x86-64-low.c:
15942 * linux-sh-low.c:
15943 * linux-s390-low.c:
15944 * linux-ppc64-low.c:
15945 * linux-ppc-low.c:
15946 * linux-mips-low.c:
15947 * linux-m68k-low.c:
15948 * linux-m32r-low.c:
15949 * linux-low.h:
15950 * linux-low.c:
15951 * linux-ia64-low.c:
15952 * linux-i386-low.c:
15953 * linux-crisv32-low.c:
15954 * thread-db.c:
15955 * terminal.h:
15956 * target.h:
15957 * target.c:
15958 * server.h:
15959 * server.c:
15960 * remote-utils.c:
15961 * regcache.h:
15962 * utils.c:
15963 * Makefile.in:
15964 * configure.ac:
15965 * gdbserver.1: Add (C) after Copyright. Update the FSF
15966 address.
15967
159682005-11-13 Daniel Jacobowitz <dan@codesourcery.com>
15969
15970 * linux-arm-low.c (arm_eabi_breakpoint): New variable.
15971 (arm_breakpoint_at): Recognize both breakpoints.
15972 (the_low_target): Use the correct breakpoint instruction.
15973
159742005-11-02 Daniel Jacobowitz <dan@codesourcery.com>
15975
15976 * configure.srv (x86_64-*-linux*): Turn on thread_db support.
15977 * linux-x86-64-low.c (x86_64_breakpoint, x86_64_breakpoint_len)
15978 (x86_64_get_pc, x86_64_set_pc, x86_64_breakpoint_at): New.
15979 (the_low_target): Update.
15980
159812005-10-25 Andreas Schwab <schwab@suse.de>
15982
15983 * server.c (main): Allocate mem_buf with PBUFSIZ bytes.
15984
15985 * linux-ia64-low.c (ia64_regmap): Remove NAT registers.
15986 (ia64_num_regs): Reduce to 462.
15987
159882005-09-17 Daniel Jacobowitz <dan@codesourcery.com>
15989
15990 * acinclude.m4: Correct quoting.
15991 * aclocal.m4: Regenerated.
15992
15993 Suggested by SZOKOVACS Robert <szo@ies.hu>:
15994 * thread-db.c (thread_db_err_str): Handle TD_VERSION.
15995 (thread_db_init): Call thread_db_err_str.
15996 * configure.ac: Check for TD_VERSION.
15997 * config.in, configure: Regenerated.
15998
159992005-07-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
16000
16001 * server.h (error, fatal, warning): Add ATTR_FORMAT.
16002
160032005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
16004
16005 * configure.ac: Define HAVE_LINUX_REGSETS even if PTRACE_GETREGS
16006 is not available. Define HAVE_PTRACE_GETREGS if it is.
16007 * config.in, configure: Regenerated.
16008 * configure.srv: Set srv_linux_regsets for PowerPC and PowerPC64.
16009 * linux-i386-low.c, linux-m68k-low.c: Update to use
16010 HAVE_PTRACE_GETREGS.
16011 * linux-low.c (regsets_fetch_inferior_registers)
16012 (regsets_store_inferior_registers): Only return 0 if we processed
16013 GENERAL_REGS.
16014 * linux-ppc-low.c (ppc_fill_gregset, target_regsets): New.
16015 * linux-ppc64-low.c (ppc_fill_gregset, target_regsets): New.
16016
160172005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
16018
16019 * inferiors.c (struct thread_info): Add gdb_id.
16020 (add_thread): Add gdb_id argument.
16021 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id): New.
16022 * linux-low.c (linux_create_inferior, linux_attach_lwp): Update
16023 calls to add_thread.
16024 * remote-utils.c (prepare_resume_reply: Use thread_to_gdb_id.
16025 * server.c (handle_query): Use thread_to_gdb_id.
16026 (handle_v_cont, main): Use gdb_id_to_thread_id.
16027 * server.h (add_thread): Update prototype.
16028 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id): New
16029 prototypes.
16030
160312005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
16032
16033 * linux-low.c (fetch_register, usr_store_inferior_registers): Handle
16034 left-padded registers.
16035 * linux-low.h (struct linux_target_ops): Add left_pad_xfer.
16036 * linux-ppc64-low.c (the_low_target): Set left_pad_xfer.
16037
160382005-07-01 Steve Ellcey <sje@cup.hp.com>
16039
16040 * configure.ac (BFD_NEED_DECLARATION): Replace with AC_CHECK_DECLS.
16041 * configure: Regenerate.
16042 * config.in: Regenerate.
16043 * server.h (NEED_DECLARATION_STRERROR):
16044 Replace with !HAVE_DECL_STRERROR.
16045
160462005-06-16 Daniel Jacobowitz <dan@codesourcery.com>
16047
16048 * linux-low.c (linux_wait, linux_send_signal): Don't test
16049 an unsigned long variable for > 0 if it could be MAX_ULONG.
16050 * server.c (myresume): Likewise.
16051 * target.c (set_desired_inferior): Likewise.
16052
160532005-06-13 Mark Kettenis <kettenis@gnu.org>
16054
16055 * configure.ac: Simplify and improve check for socklen_t.
16056 * configure, config.in: Regenerate.
16057
160582005-06-12 Daniel Jacobowitz <dan@codesourcery.com>
16059
16060 * acconfig.h: Remove.
16061 * configure.ac: Add a test for socklen_t. Use three-argument
16062 AC_DEFINE throughout.
16063 * config.in: Regenerated using autoheader 2.59.
16064 * configure: Regenerated.
16065
16066 * gdbreplay.c (socklen_t): Provide a default.
16067 (remote_open): Use socklen_t.
16068 * remote-utils.c (socklen_t): Provide a default.
16069 (remote_open): Use socklen_t.
16070 (convert_int_to_ascii, convert_ascii_to_int, decode_M_packet): Use
16071 unsigned char.
16072
16073 * i387-fp.c (struct i387_fsave, struct i387_fxsave): Use unsigned
16074 char for buffers.
16075 * linux-low.c (linux_read_memory, linux_write_memory)
16076 (linux_read_auxv): Likewise.
16077 * mem-break.c (breakpoint_data, set_breakpoint_data, check_mem_read)
16078 (check_mem_write): Likewise.
16079 * mem-break.h (set_breakpoint_data, check_mem_read, check_mem_write):
16080 Likewise.
16081 * regcache.c (struct inferior_rgcache_data, registers_to_string)
16082 (registers_from_string, register_data): Likewise.
16083 * server.c (handle_query, main): Likewise.
16084 * server.h (convert_ascii_to_int, convert_int_to_ascii)
16085 (decode_M_packet): Likewise.
16086 * target.c (read_inferior_memory, write_inferior_memory): Likewise.
16087 * target.h (struct target_ops): Update read_memory, write_memory,
16088 and read_auxv.
16089 (read_inferior_memory, write_inferior_memory): Update.
16090 * linux-low.h (struct linux_target_ops): Change type of breakpoint
16091 to unsigned char *.
16092 * linux-arm-low.c, linux-cris-low.c, linux-crisv32-low.c,
16093 linux-i386-low.c, linux-m32r-low.c, linux-m68k-low.c,
16094 linux-mips-low.c, linux-ppc-low.c, linux-ppc64-low.c,
16095 linux-s390-low.c, linux-sh-low.c: Update for changes in
16096 read_inferior_memory and the_low_target->breakpoint.
16097
160982005-05-28 Daniel Jacobowitz <dan@codesourcery.com>
16099
16100 * Makefile.in (SFILES): Add linux-ppc64-low.c.
16101 (linux-ppc64-low.o, reg-ppc64.c, reg-ppc64.o): New targets.
16102 * configure.srv: Add powerpc64-*-linux*.
16103 * linux-ppc64-low.c: New file.
16104
161052005-05-23 Orjan Friberg <orjanf@axis.com>
16106
16107 * linux-cris-low.c: New file with support for CRIS.
16108 * linux-crisv32-low.c: Ditto for CRISv32.
16109 * Makefile.in (SFILES): Add linux-cris-low.c, linux-crisv32-low.c.
16110 (clean): Add reg-cris.c and reg-crisv32.c.
16111 Add linux-cris-low.o, linux-crisv32-low.o, reg-cris.o, reg-cris.c,
16112 reg-crisv32.o, and reg-crisv32.c to make rules.
16113 * configure.srv: Add cris-*-linux* and crisv32-*-linux* to list of
16114 recognized targets.
16115
161162005-05-16 Ulrich Weigand <uweigand@de.ibm.com>
16117
16118 * linux-low.c (fetch_register): Ensure buffer size is a multiple
16119 of sizeof (PTRACE_XFER_TYPE).
16120 (usr_store_inferior_registers): Likewise. Zero out excess bytes.
16121
161222005-05-12 Orjan Friberg <orjanf@axis.com>
16123
16124 * target.h (struct target_ops): Add insert_watchpoint,
16125 remove_watchpoint, stopped_by_watchpoint, stopped_data_address function
16126 pointers for hardware watchpoint support.
16127 * linux-low.h (struct linux_target_ops): Ditto.
16128 * linux-low.c (linux_insert_watchpoint, linux_remove_watchpoint)
16129 (linux_stopped_by_watchpoint, linux_stopped_data_address): New. Add
16130 to linux_target_ops.
16131 * remote-utils.c (prepare_resume_reply): Add watchpoint information to
16132 reply packet.
16133 * server.c (main): Recognize 'Z' and 'z' packets.
16134
161352005-05-10 Ulrich Weigand <uweigand@de.ibm.com>
16136
16137 * linux-s390-low.c (s390_breakpoint, s390_breakpoint_len): Define.
16138 (s390_get_pc, s390_set_pc, s390_breakpoint_at): New functions.
16139 (the_low_target): Add new members.
16140
161412005-05-04 Daniel Jacobowitz <dan@codesourcery.com>
16142
16143 * proc-service.c (ps_lgetregs): Search all_processes instead of
16144 all_threads.
16145
161462005-05-04 Daniel Jacobowitz <dan@codesourcery.com>
16147
16148 * server.c (start_inferior): Change return type to int.
16149 (attach_inferior): Change sigptr to int *.
16150 (handle_v_cont, handle_v_requests): Change signal to int *.
16151 (main): Change signal to int.
16152
161532005-04-15 Kei Sakamoto <sakamoto.kei@renesas.com>
16154
16155 * Makefile.in: Add linux-m32r-low.o, reg-m32r.c and reg-m32r.o.
16156 * configure.srv: Add m32r*-*-linux*.
16157 * linux-m32r-low.c: New file.
16158
161592005-03-04 Daniel Jacobowitz <dan@codesourcery.com>
16160
16161 * Makefile.in (stamp-h): Set CONFIG_HEADERS explicitly.
16162
161632005-03-03 Daniel Jacobowitz <dan@codesourcery.com>
16164
16165 * inferiors.c (change_inferior_id, add_thread, find_inferior_id):
16166 Take unsigned long arguments for PIDs.
16167 * linux-low.c (add_process, linux_attach_lwp, linux_attach)
16168 (linux_thread_alive, linux_wait_for_event, kill_lwp, send_sigstop)
16169 (wait_for_sigstop, linux_resume_one_process)
16170 (regsets_fetch_inferior_registers, linux_send_signal)
16171 (linux_read_auxv): Likewise. Update the types of variables holding
16172 PIDs. Update format string specifiers.
16173 * linux-low.h (struct process_info, linux_attach_lwp): Likewise.
16174 * remote-utils.c (prepare_resume_reply): Likewise.
16175 * server.c (cont_thread, general_thread, step_thread)
16176 (thread_from_wait, old_thread_from_wait, signal_pid): Change type to
16177 unsigned long.
16178 (handle_query): Update format specifiers.
16179 (handle_v_cont, main): Use strtoul for thread IDs.
16180 * server.h (struct inferior_list_entry): Use unsigned long for ID.
16181 (add_thread, find_inferior_id, change_inferior_id, cont_thread)
16182 (general_thread, step_thread, thread_from_wait)
16183 (old_thread_from_wait): Update.
16184 * target.h (struct thread_resume): Use unsigned long for THREAD.
16185 (struct target_ops): Use unsigned long for arguments to attach and
16186 thread_alive.
16187
161882005-02-24 Daniel Jacobowitz <dan@codesourcery.com>
16189
16190 * acinclude.m4: Include bfd/bfd.m4 directly.
16191 * configure.ac: Use AC_ARG_PROGRAM. Suggested by Aron Griffis
16192 <agriffis@toolchain.org>.
16193 * aclocal.m4, configure: Regenerated.
16194
161952005-01-07 Andrew Cagney <cagney@gnu.org>
16196
16197 * configure.ac: Rename configure.in, require autoconf 2.59.
16198 * configure: Re-generate.
16199
162002004-12-08 Daniel Jacobowitz <dan@debian.org>
16201
16202 * acinclude.m4 (SRV_CHECK_THREAD_DB): Add ps_get_thread_area. Reset
16203 LIBS when finished.
16204 * aclocal.m4: Regenerated.
16205 * configure: Regenerated.
16206
162072004-11-21 Andreas Schwab <schwab@suse.de>
16208
16209 * linux-m68k-low.c (m68k_num_gregs): Define.
16210 (m68k_fill_gregset, m68k_store_gregset, m68k_fill_fpregset)
16211 (m68k_store_fpregset, target_regsets) [HAVE_LINUX_REGSETS]: New.
16212 (m68k_breakpoint, m68k_breakpoint_len, m68k_get_pc, m68k_set_pc)
16213 (m68k_breakpoint_at): New. Add to the_low_target.
16214
16215 * configure.srv (m68*-*-linux*): Set srv_linux_regsets and
16216 srv_linux_thread_db to yes.
16217
162182004-10-20 Joel Brobecker <brobecker@gnat.com>
16219
16220 * linux-x86-64-low.c (ARCH_SET_GS): Add definition if missing.
16221 (ARCH_SET_FS): Likewise.
16222 (ARCH_GET_FS): Likewise.
16223 (ARCH_GET_GS): Likewise.
16224
162252004-10-16 Daniel Jacobowitz <dan@debian.org>
16226
16227 * linux-i386-low.c (ps_get_thread_area): New.
16228 * linux-x86-64-low.c (ps_get_thread_area): New.
16229 * linux-low.c: Include <sys/syscall.h>.
16230 (linux_kill_one_process): Don't kill the first thread here.
16231 (linux_kill): Kill the first thread here.
16232 (kill_lwp): New function.
16233 (send_sigstop, linux_send_signal): Use it.
16234 * proc-service.c: Clean up #ifdefs.
16235 (fpregset_info): Delete.
16236 (ps_lgetregs): Update and enable implementation.
16237 (ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs): Remove disabled
16238 implementations.
16239 * remote-utils.c (struct sym_cache, symbol_cache): New.
16240 (input_interrupt): Print a clearer message.
16241 (async_io_enabled): New variable.
16242 (enable_async_io, disable_async_io): Use it. Update comments.
16243 (look_up_one_symbol): Use the symbol cache.
16244 * thread-db.c (thread_db_look_up_symbols): New function.
16245 (thread_db_init): Update comments. Call thread_db_look_up_symbols.
16246
162472004-10-16 Daniel Jacobowitz <dan@debian.org>
16248
16249 * configure.in: Test for -rdynamic.
16250 * configure: Regenerated.
16251 * Makefile (INTERNAL_LDFLAGS): New.
16252 (gdbserver, gdbreplay): Use it.
16253
162542004-09-02 Andrew Cagney <cagney@gnu.org>
16255
16256 * Makefile.in (TAGS): Replace TM_FILE with DEPRECATED_TM_FILE.
16257
162582004-03-23 Daniel Jacobowitz <drow@mvista.com>
16259
16260 * linux-low.c (linux_wait): Clear all_processes list also.
16261
162622004-03-12 Daniel Jacobowitz <drow@mvista.com>
16263
16264 * linux-low.c: Include <errno.h>. Remove extern declaration of
16265 errno.
16266
162672004-03-12 Daniel Jacobowitz <drow@mvista.com>
16268
16269 * gdbreplay.c, server.h, utils.c: Update copyright years.
16270
162712004-03-04 Nathan J. Williams <nathanw@wasabisystems.com>
16272
16273 * server.c (main): Print child status or termination signal from
16274 variable 'signal', not 'sig'.
16275
162762004-03-04 Nathan J. Williams <nathanw@wasabisystems.com>
16277
16278 * linux-low.c (linux_read_memory): Change return type to
16279 int. Check for and return error from ptrace().
16280 * target.c (read_inferior_memory): Change return type to int. Pass
16281 back return status from the_target->read_memory().
16282 * target.h (struct target_ops): Adapt *read_memory() prototype.
16283 Update comment.
16284 (read_inferior_memory): Adapt prototype.
16285 * server.c (main): Return an error packet if
16286 read_inferior_memory() returns an error.
16287
162882004-03-04 Daniel Jacobowitz <drow@mvista.com>
16289
16290 * Makefile.in (distclean): Remove config.h, stamp-h, and config.log.
16291 Unify with other clean targets.
16292
162932004-02-29 Daniel Jacobowitz <drow@mvista.com>
16294
16295 * server.c (handle_v_cont): Call set_desired_inferior.
16296
162972004-02-29 Daniel Jacobowitz <drow@mvista.com>
16298
16299 * remote-utils.c (prepare_resume_reply): Always supply "thread:".
16300
163012004-02-29 Daniel Jacobowitz <drow@mvista.com>
16302
16303 * linux-low.c (linux_wait): Unblock async I/O.
16304 (linux_resume): Block and enable async I/O.
16305 * remote-utils.c (block_async_io, unblock_async_io): New functions.
16306 * server.h (block_async_io, unblock_async_io): Add prototypes.
16307
163082004-02-29 Daniel Jacobowitz <drow@mvista.com>
16309
16310 * remote-utils.c (remote_open): Print a status notice after
16311 opening a TCP port.
16312 * server.c (attach_inferior): Print a status notice after
16313 attaching.
16314
163152004-02-29 Daniel Jacobowitz <drow@mvista.com>
16316
16317 * linux-arm-low.c (arm_get_pc): Print out stop PC in debug mode.
16318
163192004-02-26 Daniel Jacobowitz <drow@mvista.com>
16320
16321 * remote-utils.c (write_enn): Use "E01" instead of "ENN" for the
16322 error packet.
16323 * server.c, target.h: Update copyright years.
16324
163252004-02-25 Roland McGrath <roland@redhat.com>
16326
16327 * target.h (struct target_ops): New member `read_auxv'.
16328 * server.c (handle_query): Handle qPart:auxv:read: query using that.
16329 * linux-low.c (linux_read_auxv): New function.
16330 (linux_target_ops): Initialize `read_auxv' member to that.
16331
163322004-02-17 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
16333
16334 Committed by Jim Blandy <jimb@redhat.com>.
16335
16336 * linux-s390-low.c (s390_num_regs): Update.
16337 (s390_regmap): Remove control registers. Use __s390x__ predefine
16338 instead of GPR_SIZE to distiguish s390 and s390x targets.
16339
163402004-01-31 Daniel Jacobowitz <drow@mvista.com>
16341
16342 * linux-low.c: Update copyright year.
16343 (check_removed_breakpoint): Clear pending_is_breakpoint.
16344 (linux_set_resume_request, linux_queue_one_thread)
16345 (resume_status_pending_p): New functions.
16346 (linux_continue_one_thread): Use process->resume.
16347 (linux_resume): Only resume threads if there are no pending events.
16348 * linux-low.h (struct process_info): Add resume request
16349 pointer.
16350
163512004-01-30 Daniel Jacobowitz <drow@mvista.com>
16352
16353 * regcache.c (new_register_cache): Clear the allocated register
16354 buffer. Suggested by Atsushi Nemoto <anemo@mba.ocn.ne.jp>.
16355
163562003-10-13 Daniel Jacobowitz <drow@mvista.com>
16357
16358 * linux-low.c (linux_resume): Take a struct thread_resume *
16359 argument.
16360 (linux_wait): Update call.
16361 (resume_ptr): New static variable.
16362 (linux_continue_one_thread): Renamed from
16363 linux_continue_one_process. Use resume_ptr.
16364 (linux_resume): Use linux_continue_one_thread.
16365 * server.c (handle_v_cont, handle_v_requests): New functions.
16366 (myresume): New function.
16367 (main): Handle 'v' case.
16368 * target.h (struct thread_resume): New type.
16369 (struct target_ops): Change argument of "resume" to struct
16370 thread_resume *.
16371 (myresume): Delete macro.
16372
163732003-08-08 H.J. Lu <hongjiu.lu@intel.com>
16374
16375 * Makefile.in (install-only): Create dest dir. Support DESTDIR.
16376 (uninstall): Support DESTDIR.
16377
16378Mon Jul 21 20:09:34 UTC 2003 Brendan Conoboy <blc@redhat.com>
16379
16380 * configure.srv: Add xscale*linux copy of arm*linux entry.
16381
163822003-07-24 Daniel Jacobowitz <drow@mvista.com>
16383
16384 * linux-arm-low.c (arm_reinsert_addr): New function.
16385 (the_low_target): Add arm_reinsert_addr.
16386
163872003-07-08 Mark Kettenis <kettenis@gnu.org>
16388
16389 * mem-break.c: Remove whitespace at end of file.
16390
163912003-06-28 Daniel Jacobowitz <drow@mvista.com>
16392
16393 * configure.in: Check whether we need to prototype strerror.
16394 * server.h: Optionally prototype strerror.
16395 * gdbreplay.c (perror_with_name): Use strerror.
16396 * linux-low.c (linux_attach_lwp): Use strerror.
16397 * utils.c (perror_with_name): Use strerror.
16398 * config.in, configure: Regenerated.
16399
164002003-06-28 Daniel Jacobowitz <drow@mvista.com>
16401
16402 * linux-sh-low.c (sh_regmap): Fix FP register offsets, reported by
16403 SUGIOKA Toshinobu <sugioka@itonet.co.jp>.
16404
164052003-06-20 Daniel Jacobowitz <drow@mvista.com>
16406
16407 * Makefile.in (SFILES): Update.
16408 * low-hppabsd.c, low-lynx.c, low-nbsd.c, low-sim.c, low-sparc.c,
16409 low-sun3.c: Remove files.
16410
164112003-06-17 Daniel Jacobowitz <drow@mvista.com>
16412
16413 * linux-low.c: Move comment to linux_thread_alive where it belonged.
16414 (linux_detach_one_process, linux_detach): New functions.
16415 (linux_target_ops): Add linux_detach.
16416 * server.c (main): Handle 'D' packet.
16417 * target.h (struct target_ops): Add "detach" member.
16418 (detach_inferior): Define.
16419
164202003-06-13 Mark Kettenis <kettenis@gnu.org>
16421
16422 From Kelley Cook <kelleycook@wideopenwest.com>:
16423 * configure.srv: Accept i[34567]86 variants.
16424
164252003-06-05 Daniel Jacobowitz <drow@mvista.com>
16426
16427 * linux-low.c (linux_wait_for_event): Correct comment typos.
16428 (linux_resume_one_process): Call check_removed_breakpoint.
16429 (linux_send_signal): New function.
16430 (linux_target_ops): Add linux_send_signal.
16431 * remote-utils.c (putpkt, input_interrupt): Use send_signal instead
16432 of kill.
16433 * target.h (struct target_ops): Add send_signal.
16434
164352003-05-29 Jim Blandy <jimb@redhat.com>
16436
16437 * linux-low.c (usr_store_inferior_registers): Transfer buf in
16438 PTRACE_XFER_TYPE-sized chunks, not int-sized chunks. Otherwise,
16439 if 'int' is smaller than PTRACE_XFER_TYPE, you end up throwing
16440 away part of the register's value.
16441
164422003-03-26 Daniel Jacobowitz <drow@mvista.com>
16443
16444 * linux-low.c (linux_create_inferior): Use __SIGRTMIN.
16445 (linux_wait_for_event, linux_init_signals): Likewise.
16446
164472003-03-17 Daniel Jacobowitz <drow@mvista.com>
16448
16449 * configure.in: Check for stdlib.h.
16450 * configure: Regenerated.
16451 * config.in: Regenerated.
16452
164532003-01-04 Andreas Schwab <schwab@suse.de>
16454
16455 * linux-m68k-low.c (m68k_num_regs): Define to 29 instead of 31.
16456
164572003-01-02 Andrew Cagney <ac131313@redhat.com>
16458
16459 * Makefile.in: Remove obsolete code.
16460
164612002-11-20 Daniel Jacobowitz <drow@mvista.com>
16462
16463 * linux-s390-low.c (s390_regmap): Check GPR_SIZE instead of
16464 defined(PT_FPR0_HI).
16465
164662002-11-17 Stuart Hughes <seh@zee2.com>
16467
16468 * linux-arm-low.c (arm_num_regs): Increase.
16469 (arm_regmap): Include status register.
16470
164712002-11-17 Daniel Jacobowitz <drow@mvista.com>
16472
16473 * linux-low.c (register_addr): Remove incorrect -1 check.
16474
164752002-08-29 Daniel Jacobowitz <drow@mvista.com>
16476
16477 * linux-low.c (linux_create_inferior): Call setpgid. Return
16478 the new PID.
16479 (unstopped_p, linux_signal_pid): Remove.
16480 (linux_target_ops): Remove linux_signal_pid.
16481 * remote-utils.c (putpkt, input_interrupt): Use signal_pid
16482 global instead of target method.
16483 * target.h (struct target_ops): Remove signal_pid. Update comment
16484 for create_inferior.
16485 * server.c (signal_pid): New variable.
16486 (create_inferior): Set signal_pid. Block SIGTTOU and SIGTTIN in
16487 gdbserver. Set the child to be the foreground process group.
16488 (attach_inferior): Set signal_pid.
16489
164902002-08-23 Daniel Jacobowitz <drow@mvista.com>
16491
16492 * ChangeLog: New file, with entries from gdb/ChangeLog after GDB 5.2.
16493
164942002-08-20 Jim Blandy <jimb@redhat.com>
16495
16496 * Makefile.in (LDFLAGS): Allow the configure script to establish a
16497 default for this.
16498
164992002-08-01 Andrew Cagney <cagney@redhat.com>
16500
16501 * Makefile.in: Make chill references obsolete.
16502
165032002-07-24 Kevin Buettner <kevinb@redhat.com>
16504
16505 * configure.in (unistd.h): Add to AC_CHECK_HEADERS list.
16506 * configure: Regenerate.
16507 * config.in: Regenerate.
16508
165092002-07-09 David O'Brien <obrien@FreeBSD.org>
16510
16511 * gdbreplay.c (stdlib.h, unistd.h): Conditionaly include.
16512 (perror_with_name, remote_close, remote_open, expect, play): Static.
16513
165142002-07-04 Michal Ludvig <mludvig@suse.cz>
16515
16516 * linux-x86-64-low.c (x86_64_regmap): Make it an array of
16517 byte offsets instead of an array of indexes.
16518 (x86_64_store_gregset, x86_64_store_fpregset): Parameter made const.
16519
165202002-06-13 Daniel Jacobowitz <drow@mvista.com>
16521
16522 * regcache.c: Add comment.
16523
165242002-06-11 Daniel Jacobowitz <drow@mvista.com>
16525
16526 * thread-db.c: New file.
16527 * proc-service.c: New file.
16528 * acinclude.m4: New file.
16529 * Makefile.in: Add GDBSERVER_LIBS, gdb_proc_service_h,
16530 proc-service.o, and thread-db.o.
16531 (linux-low.o): Add USE_THREAD_DB.
16532 * acconfig.h: Add HAVE_PRGREGSET_T, HAVE_PRFPREGSET_T,
16533 HAVE_LWPID_T, HAVE_PSADDR_T, and PRFPREGSET_T_BROKEN.
16534 * aclocal.m4: Regenerated.
16535 * config.in: Regenerated.
16536 * configure: Regenerated.
16537 * configure.in: Check for proc_service.h, sys/procfs.h,
16538 thread_db.h, and linux/elf.h headrs.
16539 Check for lwpid_t, psaddr_t, prgregset_t, prfpregset_t, and
16540 PRFPREGSET_T_BROKEN. Introduce srv_thread_depfiles and USE_THREAD_DB.
16541 Check for -lthread_db and thread support.
16542 * configure.srv: Enable thread_db support for ARM, i386, MIPS,
16543 PowerPC, and SuperH.
16544 * i387-fp.c: Constify arguments.
16545 * i387-fp.h: Likewise.
16546 * inferiors.c: (struct thread_info): Renamed from
16547 `struct inferior_info'. Remove PID member. Use generic inferior
16548 list header. All uses updated.
16549 (inferiors, signal_pid): Removed.
16550 (all_threads): New variable.
16551 (get_thread): Define.
16552 (add_inferior_to_list): New function.
16553 (for_each_inferior): New function.
16554 (change_inferior_id): New function.
16555 (add_inferior): Removed.
16556 (remove_inferior): New function.
16557 (add_thread): New function.
16558 (free_one_thread): New function.
16559 (remove_thread): New function.
16560 (clear_inferiors): Use for_each_inferior and free_one_thread.
16561 (find_inferior): New function.
16562 (find_inferior_id): New function.
16563 (inferior_target_data): Update argument type.
16564 (set_inferior_target_data): Likewise.
16565 (inferior_regcache_data): Likewise.
16566 (set_inferior_regcache_data): Likewise.
16567 * linux-low.c (linux_bp_reinsert): Remove.
16568 (all_processes, stopping_threads, using_thrads)
16569 (struct pending_signals, debug_threads, pid_of): New.
16570 (inferior_pid): Replace with macro.
16571 (struct inferior_linux_data): Remove.
16572 (get_stop_pc, add_process): New functions.
16573 (linux_create_inferior): Restore SIGRTMIN+1 before calling exec.
16574 Use add_process and add_thread.
16575 (linux_attach_lwp): New function, based on old linux_attach. Use
16576 add_process and add_thread. Set stop_expected for new threads.
16577 (linux_attach): New function.
16578 (linux_kill_one_process): New function.
16579 (linux_kill): Kill all LWPs.
16580 (linux_thread_alive): Use find_inferior_id.
16581 (check_removed_breakpoints, status_pending_p): New functions.
16582 (linux_wait_for_process): Renamed from linux_wait_for_one_inferior.
16583 Update. Use WNOHANG. Wait for cloned processes also. Update process
16584 struct for the found process.
16585 (linux_wait_for_event): New function.
16586 (linux_wait): Use it. Support LWPs.
16587 (send_sigstop, wait_for_sigstop, stop_all_processes)
16588 (linux_resume_one_process, linux_continue_one_process): New functions.
16589 (linux_resume): Support LWPs.
16590 (REGISTER_RAW_SIZE): Remove.
16591 (fetch_register): Use register_size instead. Call supply_register.
16592 (usr_store_inferior_registers): Likewise. Call collect_register.
16593 Fix recursive case.
16594 (regsets_fetch_inferior_registers): Improve error message.
16595 (regsets_store_inferior_registers): Add debugging.
16596 (linux_look_up_symbols): Call thread_db_init if USE_THREAD_DB.
16597 (unstopped_p, linux_signal_pid): New functions.
16598 (linux_target_ops): Add linux_signal_pid.
16599 (linux_init_signals): New function.
16600 (initialize_low): Call it. Initialize using_threads.
16601 * regcache.c (inferior_regcache_data): Add valid
16602 flag.
16603 (get_regcache): Fetch registers lazily. Add fetch argument
16604 and update all callers.
16605 (regcache_invalidate_one, regcache_invalidate): New
16606 functions.
16607 (new_register_cache): Renamed from create_register_cache.
16608 Return the new regcache.
16609 (free_register_cache): Change argument to a void *.
16610 (registers_to_string, registers_from_string): Call get_regcache
16611 with fetch flag set.
16612 (register_data): Make static. Pass fetch flag to get_regcache.
16613 (supply_register): Call get_regcache with fetch flag clear.
16614 (collect_register): Call get_regcache with fetch flag set.
16615 (collect_register_as_string): New function.
16616 * regcache.h: Update.
16617 * remote-utils.c (putpkt): Flush after debug output and use
16618 stderr.
16619 Handle input interrupts while waiting for an ACK.
16620 (input_interrupt): Use signal_pid method.
16621 (getpkt): Flush after debug output and use stderr.
16622 (outreg): Use collect_register_as_string.
16623 (new_thread_notify, dead_thread_notify): New functions.
16624 (prepare_resume_reply): Check using_threads. Set thread_from_wait
16625 and general_thread.
16626 (look_up_one_symbol): Flush after debug output.
16627 * server.c (step_thread, server_waiting): New variables.
16628 (start_inferior): Don't use signal_pid. Update call to mywait.
16629 (attach_inferior): Update call to mywait.
16630 (handle_query): Handle qfThreadInfo and qsThreadInfo.
16631 (main): Don't fetch/store registers explicitly. Use
16632 set_desired_inferior. Support proposed ``Hs'' packet. Update
16633 calls to mywait.
16634 * server.h: Update.
16635 (struct inferior_list, struct_inferior_list_entry): New.
16636 * target.c (set_desired_inferior): New.
16637 (write_inferior_memory): Constify.
16638 (mywait): New function.
16639 * target.h: Update.
16640 (struct target_ops): New signal_pid method.
16641 (mywait): Removed macro, added prototype.
16642
16643 * linux-low.h (regset_func): Removed.
16644 (regset_fill_func, regset_store_func): New.
16645 (enum regset_type): New.
16646 (struct regset_info): Add type field. Use new operation types.
16647 (struct linux_target_ops): stop_pc renamed to get_pc.
16648 Add decr_pc_after_break and breakpoint_at.
16649 (get_process, get_thread_proess, get_process_thread)
16650 (strut process_info, all_processes, linux_attach_lwp)
16651 (thread_db_init): New.
16652
16653 * linux-arm-low.c (arm_get_pc, arm_set_pc,
16654 arm_breakpoint, arm_breakpoint_len, arm_breakpoint_at): New.
16655 (the_low_target): Add new members.
16656 * linux-i386-low.c (i386_store_gregset, i386_store_fpregset)
16657 (i386_store_fpxregset): Constify.
16658 (target_regsets): Add new kind identifier.
16659 (i386_get_pc): Renamed from i386_stop_pc. Simplify.
16660 (i386_set_pc): Add debugging.
16661 (i386_breakpoint_at): New function.
16662 (the_low_target): Add new members.
16663 * linux-mips-low.c (mips_get_pc, mips_set_pc)
16664 (mips_breakpoint, mips_breakpoint_len, mips_reinsert_addr)
16665 (mips_breakpoint_at): New.
16666 (the_low_target): Add new members.
16667 * linux-ppc-low.c (ppc_get_pc, ppc_set_pc)
16668 (ppc_breakpoint, ppc_breakpoint_len, ppc_breakpoint_at): New.
16669 (the_low_target): Add new members.
16670 * linux-sh-low.c (sh_get_pc, sh_set_pc)
16671 (sh_breakpoint, sh_breakpoint_len, sh_breakpoint_at): New.
16672 (the_low_target): Add new members.
16673 * linux-x86-64-low.c (target_regsets): Add new kind
16674 identifier.
16675
166762002-05-15 Daniel Jacobowitz <drow@mvista.com>
16677
16678 From Martin Pool <mbp@samba.org>:
16679 * server.c (gdbserver_usage): New function.
16680 (main): Call it.
16681
166822002-05-14 Daniel Jacobowitz <drow@mvista.com>
16683
16684 * mem-break.c (reinsert_breakpoint_by_bp): Correct typo
16685 stop_at -> stop_pc.
16686
166872002-05-04 Andrew Cagney <ac131313@redhat.com>
16688
16689 * Makefile.in: Remove obsolete code.
16690
166912002-04-24 Michal Ludvig <mludvig@suse.cz>
16692
16693 * linux-low.c (regsets_fetch_inferior_registers),
16694 (regsets_store_inferior_registers): Removed cast to int from
16695 ptrace() calls.
16696 * regcache.h: Added declaration of struct inferior_info.
16697
166982002-04-20 Daniel Jacobowitz <drow@mvista.com>
16699
16700 * inferiors.c (struct inferior_info): Add regcache_data.
16701 (add_inferior): Call create_register_cache.
16702 (clear_inferiors): Call free_register_cache.
16703 (inferior_regcache_data, set_inferior_regcache_data): New functions.
16704 * regcache.c (struct inferior_regcache_data): New.
16705 (registers): Remove.
16706 (get_regcache): New function.
16707 (create_register_cache, free_register_cache): New functions.
16708 (set_register_cache): Don't initialize the register cache here.
16709 (registers_to_string, registers_from_string, register_data): Call
16710 get_regcache.
16711 * regcache.h: Add prototypes.
16712 * server.h: Likewise.
16713
167142002-04-20 Daniel Jacobowitz <drow@mvista.com>
16715
16716 * mem-break.c: New file.
16717 * mem-break.h: New file.
16718 * Makefile.in: Add mem-break.o rule; update server.h
16719 dependencies.
16720 * inferiors.c (struct inferior_info): Add target_data
16721 member.
16722 (clear_inferiors): Free target_data member if set.
16723 (inferior_target_data, set_inferior_target_data): New functions.
16724 * linux-i386-low.c (i386_breakpoint, i386_breakpoint_len)
16725 (i386_stop_pc, i386_set_pc): New. Add to the_low_target.
16726 * linux-low.c (linux_bp_reinsert): New variable.
16727 (struct inferior_linux_data): New.
16728 (linux_create_inferior): Use set_inferior_target_data.
16729 (linux_attach): Likewise. Call add_inferior.
16730 (linux_wait_for_one_inferior): New function.
16731 (linux_wait): Call it.
16732 (linux_write_memory): Add const.
16733 (initialize_low): Call set_breakpoint_data.
16734 * linux-low.h (struct linux_target_ops): Add breakpoint
16735 handling members.
16736 * server.c (attach_inferior): Remove extra add_inferior
16737 call.
16738 * server.h: Include mem-break.h. Update inferior.c
16739 prototypes.
16740 * target.c (read_inferior_memory)
16741 (write_inferior_memory): New functions.
16742 * target.h (read_inferior_memory)
16743 (write_inferior_memory): Change macros to prototypes.
16744 (struct target_ops): Update comments. Add const to write_memory
16745 definition.
16746
167472002-04-11 Daniel Jacobowitz <drow@mvista.com>
16748
16749 * linux-low.c (usr_store_inferior_registers): Support
16750 registers which are allowed to fail to store.
16751 * linux-low.h (linux_target_ops): Likewise.
16752 * linux-ppc-low.c (ppc_regmap): Support FPSCR.
16753 (ppc_cannot_store_register): FPSCR may not be storable.
16754
167552002-04-09 Daniel Jacobowitz <drow@mvista.com>
16756
16757 * server.h: Include <string.h> if HAVE_STRING_H.
16758 * ChangeLog: Correct paths in last ChangeLog entry.
16759
167602002-04-09 Daniel Jacobowitz <drow@mvista.com>
16761
16762 * linux-low.h: Remove obsolete prototypes.
16763 (struct linux_target_ops): New.
16764 (extern the_low_target): New.
16765 * linux-low.c (num_regs, regmap): Remove declarations.
16766 (register_addr): Use the_low_target explicitly.
16767 (fetch_register): Likewise.
16768 (usr_fetch_inferior_registers): Likewise.
16769 (usr_store_inferior_registers): Likewise.
16770 * linux-arm-low.c (num_regs): Remove.
16771 (arm_num_regs): Define.
16772 (arm_regmap): Renamed from regmap, made static.
16773 (arm_cannot_fetch_register): Renamed from cannot_fetch_register,
16774 made static.
16775 (arm_cannot_store_register): Renamed from cannot_store_register,
16776 made static.
16777 (the_low_target): New.
16778 * linux-i386-low.c (num_regs): Remove.
16779 (i386_num_regs): Define.
16780 (i386_regmap): Renamed from regmap, made static.
16781 (i386_cannot_fetch_register): Renamed from cannot_fetch_register,
16782 made static.
16783 (i386_cannot_store_register): Renamed from cannot_store_register,
16784 made static.
16785 (the_low_target): New.
16786 * linux-ia64-low.c (num_regs): Remove.
16787 (ia64_num_regs): Define.
16788 (ia64_regmap): Renamed from regmap, made static.
16789 (ia64_cannot_fetch_register): Renamed from cannot_fetch_register,
16790 made static.
16791 (ia64_cannot_store_register): Renamed from cannot_store_register,
16792 made static.
16793 (the_low_target): New.
16794 * linux-m68k-low.c (num_regs): Remove.
16795 (m68k_num_regs): Define.
16796 (m68k_regmap): Renamed from regmap, made static.
16797 (m68k_cannot_fetch_register): Renamed from cannot_fetch_register,
16798 made static.
16799 (m68k_cannot_store_register): Renamed from cannot_store_register,
16800 made static.
16801 (the_low_target): New.
16802 * linux-mips-low.c (num_regs): Remove.
16803 (mips_num_regs): Define.
16804 (mips_regmap): Renamed from regmap, made static.
16805 (mips_cannot_fetch_register): Renamed from cannot_fetch_register,
16806 made static.
16807 (mips_cannot_store_register): Renamed from cannot_store_register,
16808 made static.
16809 (the_low_target): New.
16810 * linux-ppc-low.c (num_regs): Remove.
16811 (ppc_num_regs): Define.
16812 (ppc_regmap): Renamed from regmap, made static.
16813 (ppc_cannot_fetch_register): Renamed from cannot_fetch_register,
16814 made static.
16815 (ppc_cannot_store_register): Renamed from cannot_store_register,
16816 made static.
16817 (the_low_target): New.
16818 * linux-s390-low.c (num_regs): Remove.
16819 (s390_num_regs): Define.
16820 (s390_regmap): Renamed from regmap, made static.
16821 (s390_cannot_fetch_register): Renamed from cannot_fetch_register,
16822 made static.
16823 (s390_cannot_store_register): Renamed from cannot_store_register,
16824 made static.
16825 (the_low_target): New.
16826 * linux-sh-low.c (num_regs): Remove.
16827 (sh_num_regs): Define.
16828 (sh_regmap): Renamed from regmap, made static.
16829 (sh_cannot_fetch_register): Renamed from cannot_fetch_register,
16830 made static.
16831 (sh_cannot_store_register): Renamed from cannot_store_register,
16832 made static.
16833 (the_low_target): New.
16834 * linux-x86-64-low.c (x86_64_regmap): Renamed from regmap.
16835 (the_low_target): New.
16836
168372002-04-09 Daniel Jacobowitz <drow@mvista.com>
16838
16839 * Makefile.in: Add stamp-h target.
16840 * configure.in: Create stamp-h.
16841 * configure: Regenerated.
16842
168432002-04-09 Daniel Jacobowitz <drow@mvista.com>
16844
16845 * inferiors.c: New file.
16846 * target.c: New file.
16847 * target.h: New file.
16848 * Makefile.in: Add target.o and inferiors.o. Update
16849 dependencies.
16850 * linux-low.c (inferior_pid): New static variable,
16851 moved from server.c.
16852 (linux_create_inferior): Renamed from create_inferior.
16853 Call add_inferior. Return 0 on success instead of a PID.
16854 (linux_attach): Renamed from myattach.
16855 (linux_kill): Renamed from kill_inferior. Call clear_inferiors ().
16856 (linux_thread_alive): Renamed from mythread_alive.
16857 (linux_wait): Renamed from mywait. Call clear_inferiors () if the
16858 child dies.
16859 (linux_resume): Renamed from myresume. Add missing ``return 0''.
16860 (regsets_store_inferior_registers): Correct error message.
16861 Add missing ``return 0''.
16862 (linux_fetch_registers): Renamed from fetch_inferior_registers.
16863 (linux_store_registers): Renamed from store_inferior_registers.
16864 (linux_read_memory): Renamed from read_inferior_memory.
16865 (linux_write_memory): Renamed from write_inferior_memory.
16866 (linux_target_ops): New structure.
16867 (initialize_low): Call set_target_ops ().
16868 * remote-utils.c (unhexify): New function.
16869 (hexify): New function.
16870 (input_interrupt): Send signals to ``signal_pid''.
16871 * server.c (inferior_pid): Remove.
16872 (start_inferior): Update create_inferior call.
16873 (attach_inferior): Call add_inferior.
16874 (handle_query): New function.
16875 (main): Call handle_query for `q' packets.
16876 * server.h: Include "target.h". Remove obsolete prototypes.
16877 Add prototypes for "inferiors.c", "target.c", hexify, and unhexify.
16878
168792002-04-09 Daniel Jacobowitz <drow@mvista.com>
16880
16881 * Makefile.in: Add WARN_CFLAGS. Update configury
16882 dependencies.
16883 * configure.in: Check for <string.h>
16884 * configure: Regenerate.
16885 * config.in: Regenerate.
16886 * gdbreplay.c: Include needed system headers.
16887 (remote_open): Remove strchr prototype.
16888 * linux-low.h: Correct #ifdef to HAVE_LINUX_USRREGS.
16889 * regcache.c (supply_register): Change buf argument to const void *.
16890 (supply_register_by_name): Likewise.
16891 (collect_register): Change buf argument to void *.
16892 (collect_register_by_name): Likewise.
16893 * regcache.h: Add missing prototypes.
16894 * remote-utils.c: Include <arpa/inet.h> for inet_ntoa.
16895 * server.c (handle_query): New function.
16896 (attached): New static variable, moved out of main.
16897 (main): Quiet longjmp clobber warnings.
16898 * server.h: Add ATTR_NORETURN and ATTR_FORMAT. Update prototypes.
16899 * utils.c (error): Remove NORETURN.
16900 (fatal): Likewise.