]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gdb/gdbserver/ChangeLog
Extract convert_load_reloc from x86 convert_load
[thirdparty/binutils-gdb.git] / gdb / gdbserver / ChangeLog
CommitLineData
9e784964
YQ
12016-05-05 Yao Qi <yao.qi@linaro.org>
2
3 * linux-arm-low.c (get_next_pcs_read_memory_unsigned_integer):
4 Initialize res to zero.
5
cf2ebb6e
YQ
62016-05-05 Yao Qi <yao.qi@linaro.org>
7
8 * linux-arm-low.c (arm_sigreturn_next_pc): Change type of cpsr
9 to uint32_t.
10
c1aebf87
UW
112016-05-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
12
13 * spu-low.c (fetch_ppc_register): Cast PowerPC-Linux-specific value
14 used as first ptrace argument to PTRACE_TYPE_ARG1 for C++.
15 (fetch_ppc_memory_1, store_ppc_memory_1): Likewise.
16
35fd2deb
PO
172016-04-28 Par Olsson <par.olsson@windriver.com>
182016-04-28 Simon Marchi <simon.marchi@ericsson.com>
19
20 * tracepoint.c (write_inferior_int8): New function.
21 (cmd_qtenable_disable): Write enable flag using
22 write_inferior_int8.
23
484b3c32
YQ
242016-04-25 Yao Qi <yao.qi@linaro.org>
25
26 * linux-low.c (lwp_signal_can_be_delivered): Adjust.
27 (need_step_over_p): Return zero if the LWP has pending signals
28 can be delivered on software single step target.
29
85ba7d86
YQ
302016-04-25 Yao Qi <yao.qi@linaro.org>
31
32 * linux-low.c (reinsert_raw_breakpoint): If bp->inserted is true
33 return instead of error.
34
3539aa13
YQ
352016-04-22 Yao Qi <yao.qi@linaro.org>
36
37 * linux-aarch32-low.c (arm_store_gregset): Clear CPSR bits 20
38 to 23.
39
5b061e98
YQ
402016-04-22 Yao Qi <yao.qi@linaro.org>
41
42 * linux-low.c (lwp_signal_can_be_delivered): Don't deliver
43 signal when stepping over breakpoint with software single
44 step.
45
3451269c
PA
462016-04-21 Pedro Alves <palves@redhat.com>
47
48 * linux-s390-low.c (s390_collect_ptrace_register)
49 (s390_supply_ptrace_register, s390_get_hwcap): Use gdb_byte * and
50 add casts.
51 (s390_check_regset): Use void * instead of gdb_byte *.
52
a2358508
PA
532016-04-20 Pedro Alves <palves@redhat.com>
54
55 * configure: Renegerate.
56
6885166d
YQ
572016-04-20 Yao Qi <yao.qi@linaro.org>
58
59 * linux-aarch32-low.c: Include "arch/arm-linux.h".
60 (arm_fill_gregset): Use ARM_CPSR_GREGNUM rather than magic
61 number 16.
62 (arm_store_gregset): Likewise.
63
2b863f51
WT
642016-04-16 Walfred Tedeschi <walfred.tedeschi@intel.com>
65
66 * Makefile.in (clean): Add removal for i386-avx-mpx.c,
67 i386-avx-mpx-linux.c, amd64-avx-mpx.c and amd64-avx-mpx-linux.c.
68 (i386-avx-mpx.c, i386-avx-mpx-linux.c, amd64-avx-mpx.c)
69 (amd64-avx-mpx-linux.c): New rules.
70 (amd64-avx-mpx-linux-ipa.o, i386-avx-mpx-linux-ipa.o): New rule.
71 * configure.srv (srv_i386_regobj): Add i386-avx-mpx.o.
72 (srv_i386_linux_regobj): Add i386-avx-mpx-linux.o.
73 (srv_amd64_regobj): Add amd64-avx-mpx.o.
74 (srv_amd64_linux_regobj): Add amd64-avx-mpx-linux.o.
75 (srv_i386_xmlfiles): Add i386/i386-avx-mpx.xml.
76 (srv_amd64_xmlfiles): Add i386/amd64-avx-mpx.xml.
77 (srv_i386_linux_xmlfiles): Add i386/i386-avx-mpx-linux.xml.
78 (srv_amd64_linux_xmlfiles): Add i386/amd64-avx-mpx-linux.xml.
79 (ipa_i386_linux_regobj): Add i386-avx-mpx-linux-ipa.o.
80 (ipa_amd64_linux_regobj): Add amd64-avx-mpx-linux-ipa.o.
81 * linux-x86-low.c (x86_linux_read_description): Add case for
82 X86_XSTATE_AVX_MPX_MASK.
83 (x86_get_ipa_tdesc_idx): Add cases for avx_mpx.
84 (initialize_low_arch): Call init_registers_amd64_avx_mpx_linux and
85 init_registers_i386_avx_mpx_linux.
86 * linux-i386-ipa.c (get_ipa_tdesc): Add case for avx_mpx.
87 (initialize_low_tracepoint): Call
88 init_registers_i386_avx_mpx_linux.
89 * linux-amd64-ipa.c (get_ipa_tdesc): Add case for avx_mpx.
90 (initialize_low_tracepoint): Call
91 init_registers_amd64_avx_mpx_linux.
92 * linux-x86-tdesc.h (X86_TDESC_AVX_MPX): New enum value.
93 (init_registers_amd64_avx_mpx_linux, tdesc_amd64_avx_mpx_linux)
94 (init_registers_i386_avx_mpx_linux, tdesc_i386_avx_mpx_linux): New
95 declarations.
96
9b30624b
PA
972016-04-18 Pedro Alves <palves@redhat.com>
98
99 * configure: Regenerate.
100
45e3745e
AT
1012016-04-13 Antoine Tremblay <antoine.tremblay@ericsson.com>
102
103 * linux-aarch64-low.c (aarch64_emit_add): Switch x1 and x0.
104 (aarch64_emit_sub): Likewise.
105
2afc13ff
PA
1062016-04-12 Pedro Alves <palves@redhat.com>
107
108 * utils.c (prepare_to_throw_exception): Delete.
109
6e774b13
SM
1102016-04-05 Simon Marchi <simon.marchi@ericsson.com>
111
112 * Makefile.in ($(IPA_LIB)): Set SONAME of the IPA lib.
113
4dca19f8
MK
1142016-04-05 Marcin Kościelnicki <koriakin@0x04.net>
115
116 * tracepoint.c (getauxval): Move to #ifdef IN_PROCESS_AGENT.
117
d0a9981f
MK
1182016-04-03 Marcin Kościelnicki <koriakin@0x04.net>
119
120 * linux-aarch64-ipa.c: Add <elf.h> include.
121 * linux-ppc-ipa.c: Add <elf.h> include.
122 * linux-s390-ipa.c: Add <elf.h> include.
123
252db07e
MK
1242016-03-31 Marcin Kościelnicki <koriakin@0x04.net>
125
126 * tracepoint.c (gdb_collect_ptr): Remove const qualifier.
127 (get_raw_reg_ptr): Likewise.
128 (get_trace_state_variable_value_ptr): Likewise.
129 (set_trace_state_variable_value_ptr): Likewise.
130 (initialize_tracepoint): Cast alloc_jump_pad_buffer result to
131 char *.
132
14e2b6d9
MK
1332016-03-31 Wei-cheng Wang <cole945@gmail.com>
134 Marcin Kościelnicki <koriakin@0x04.net>
135
136 PR/17221
137 * linux-ppc-low.c (emit_insns): New function.
138 (__EMIT_ASM, _EMIT_ASM, EMIT_ASM): New macros.
139 (ppc_emit_prologue): New function.
140 (ppc_emit_epilogue): New function.
141 (ppc_emit_add): New function.
142 (ppc_emit_sub): New function.
143 (ppc_emit_mul): New function.
144 (ppc_emit_lsh): New function.
145 (ppc_emit_rsh_signed): New function.
146 (ppc_emit_rsh_unsigned): New function.
147 (ppc_emit_ext): New function.
148 (ppc_emit_zero_ext): New function.
149 (ppc_emit_log_not): New function.
150 (ppc_emit_bit_and): New function.
151 (ppc_emit_bit_or): New function.
152 (ppc_emit_bit_xor): New function.
153 (ppc_emit_bit_not): New function.
154 (ppc_emit_equal): New function.
155 (ppc_emit_less_signed): New function.
156 (ppc_emit_less_unsigned): New function.
157 (ppc_emit_ref): New function.
158 (ppc_emit_const): New function.
159 (ppc_emit_reg): New function.
160 (ppc_emit_pop): New function.
161 (ppc_emit_stack_flush): New function.
162 (ppc_emit_swap): New function.
163 (ppc_emit_stack_adjust): New function.
164 (ppc_emit_call): New function.
165 (ppc_emit_int_call_1): New function.
166 (ppc_emit_void_call_2): New function.
167 (ppc_emit_if_goto): New function.
168 (ppc_emit_goto): New function.
169 (ppc_emit_eq_goto): New function.
170 (ppc_emit_ne_goto): New function.
171 (ppc_emit_lt_goto): New function.
172 (ppc_emit_le_goto): New function.
173 (ppc_emit_gt_goto): New function.
174 (ppc_emit_ge_goto): New function.
175 (ppc_write_goto_address): New function.
176 (ppc_emit_ops_impl): New static variable.
177 (ppc64v1_emit_prologue): New function.
178 (ppc64v2_emit_prologue): New function.
179 (ppc64_emit_epilogue): New function.
180 (ppc64_emit_add): New function.
181 (ppc64_emit_sub): New function.
182 (ppc64_emit_mul): New function.
183 (ppc64_emit_lsh): New function.
184 (ppc64_emit_rsh_signed): New function.
185 (ppc64_emit_rsh_unsigned): New function.
186 (ppc64_emit_ext): New function.
187 (ppc64_emit_zero_ext): New function.
188 (ppc64_emit_log_not): New function.
189 (ppc64_emit_bit_and): New function.
190 (ppc64_emit_bit_or): New function.
191 (ppc64_emit_bit_xor): New function.
192 (ppc64_emit_bit_not): New function.
193 (ppc64_emit_equal): New function.
194 (ppc64_emit_less_signed): New function.
195 (ppc64_emit_less_unsigned): New function.
196 (ppc64_emit_ref): New function.
197 (ppc64_emit_const): New function.
198 (ppc64v1_emit_reg): New function.
199 (ppc64v2_emit_reg): New function.
200 (ppc64_emit_pop): New function.
201 (ppc64_emit_stack_flush): New function.
202 (ppc64_emit_swap): New function.
203 (ppc64v1_emit_call): New function.
204 (ppc64v2_emit_call): New function.
205 (ppc64v1_emit_int_call_1): New function.
206 (ppc64v2_emit_int_call_1): New function.
207 (ppc64v1_emit_void_call_2): New function.
208 (ppc64v2_emit_void_call_2): New function.
209 (ppc64_emit_if_goto): New function.
210 (ppc64_emit_eq_goto): New function.
211 (ppc64_emit_ne_goto): New function.
212 (ppc64_emit_lt_goto): New function.
213 (ppc64_emit_le_goto): New function.
214 (ppc64_emit_gt_goto): New function.
215 (ppc64_emit_ge_goto): New function.
216 (ppc64v1_emit_ops_impl): New static variable.
217 (ppc64v2_emit_ops_impl): New static variable.
218 (ppc_emit_ops): New function.
219 (linux_low_target): Wire in ppc_emit_ops.
220
a2174ba4
MK
2212016-03-31 Wei-cheng Wang <cole945@gmail.com>
222 Marcin Kościelnicki <koriakin@0x04.net>
223
224 PR/17221
225 * Makefile.in: Add powerpc-*-ipa.o
226 * configure.srv: Add ipa_obj for powerpc*-linux.
227 * linux-ppc-ipa.c: New file.
228 * linux-ppc-low.c: Added linux-ppc-tdesc.h, ax.h, tracepoint.h
229 includes.
230 (PPC_FIELD): New macro.
231 (PPC_SEXT): New macro.
232 (PPC_OP6): New macro.
233 (PPC_BO): New macro.
234 (PPC_LI): New macro.
235 (PPC_BD): New macro.
236 (init_registers_*): Move prototype to linux-ppc-tdesc.h.
237 (tdesc_*): Move declaration to linux-ppc-tdesc.h.
238 (ppc_get_hwcap): Rename to ppc_get_auxv and add type parameter.
239 (ppc_get_thread_area): New function.
240 (is_elfv2_inferior): New function.
241 (gen_ds_form): New function.
242 (GEN_STD): New macro.
243 (GEN_STDU): New macro.
244 (GEN_LD): New macro.
245 (GEN_LDU): New macro.
246 (gen_d_form): New function.
247 (GEN_ADDI): New macro.
248 (GEN_ADDIS): New macro.
249 (GEN_LI): New macro.
250 (GEN_LIS): New macro.
251 (GEN_ORI): New macro.
252 (GEN_ORIS): New macro.
253 (GEN_LWZ): New macro.
254 (GEN_STW): New macro.
255 (GEN_STWU): New macro.
256 (gen_xfx_form): New function.
257 (GEN_MFSPR): New macro.
258 (GEN_MTSPR): New macro.
259 (GEN_MFCR): New macro.
260 (GEN_MTCR): New macro.
261 (GEN_SYNC): New macro.
262 (GEN_LWSYNC): New macro.
263 (gen_x_form): New function.
264 (GEN_OR): New macro.
265 (GEN_MR): New macro.
266 (GEN_LWARX): New macro.
267 (GEN_STWCX): New macro.
268 (GEN_CMPW): New macro.
269 (gen_md_form): New function.
270 (GEN_RLDICL): New macro.
271 (GEN_RLDICR): New macro.
272 (gen_i_form): New function.
273 (GEN_B): New macro.
274 (GEN_BL): New macro.
275 (gen_b_form): New function.
276 (GEN_BNE): New macro.
277 (GEN_LOAD): New macro.
278 (GEN_STORE): New macro.
279 (gen_limm): New function.
280 (gen_atomic_xchg): New function.
281 (gen_call): New function.
282 (ppc_relocate_instruction): New function.
283 (ppc_install_fast_tracepoint_jump_pad): New function.
284 (ppc_get_min_fast_tracepoint_insn_len): New function.
285 (ppc_get_ipa_tdesc_idx): New function.
286 (the_low_target): Wire in the new functions.
287 (initialize_low_arch) [!__powerpc64__]: Don'it initialize 64-bit
288 tdescs.
289 * linux-ppc-tdesc.h: New file.
290
a13c4696
MK
2912016-03-31 Marcin Kościelnicki <koriakin@0x04.net>
292
293 * linux-aarch64-ipa.c: Add <sys/mman.h> and <sys/auxv.h> includes.
294 (alloc_jump_pad_buffer): New function.
295 * linux-amd64-ipa.c: Add <sys/mman.h> include.
296 (alloc_jump_pad_buffer): New function.
297 * linux-i386-ipa.c (alloc_jump_pad_buffer): New function.
298 * linux-s390-ipa.c: Add <sys/mman.h> and <sys/auxv.h> includes.
299 (alloc_jump_pad_buffer): New function.
300 * tracepoint.c (getauxval) [!HAVE_GETAUXVAL]: New function.
301 (initialize_tracepoint): Delegate to alloc_jump_pad_buffer.
302 * tracepoint.h (alloc_jump_pad_buffer): New prototype.
303 (getauxval) [!HAVE_GETAUXVAL]: New prototype.
304
1cda1512
MK
3052016-03-30 Marcin Kościelnicki <koriakin@0x04.net>
306
307 * linux-aarch64-ipa.c: Rename gdb_agent_get_raw_reg to get_raw_reg.
308 * linux-amd64-ipa.c: Likewise.
309 * linux-i386-ipa.c: Likewise.
310 * linux-s390-ipa.c: Likewise.
311 * tracepoint.c: IPA-export gdb_collect_ptr instead of gdb_collect,
312 ditto for get_raw_reg_ptr, get_trace_state_variable_value_ptr,
313 set_trace_state_variable_value_ptr.
314 (struct ipa_sym_addresses): Likewise.
315 (symbol_list): Likewise.
316 (install_fast_tracepoint): Dereference gdb_collect_ptr instead of
317 accessing gdb_collect directly.
318 (gdb_collect_ptr_type): New typedef.
319 (get_raw_reg_ptr_type): New typedef.
320 (get_trace_state_variable_value_ptr_type): New typedef.
321 (set_trace_state_variable_value_ptr_type): New typedef.
322 (gdb_collect_ptr): New global.
323 (get_raw_reg_ptr): New global.
324 (get_trace_state_variable_value_ptr): New global.
325 (set_trace_state_variable_value_ptr): New global.
326 (get_raw_reg_func_addr): Dereference get_raw_reg_ptr instead of
327 accessing get_raw_reg directly.
328 (get_get_tsv_func_addr): Likewise for
329 get_trace_state_variable_value_ptr.
330 (get_set_tsv_func_addr): Likewise for
331 set_trace_state_variable_value_ptr.
332 * tracepoint.h: Rename gdb_agent_get_raw_reg to get_raw_reg.
333
72fb5488
SM
3342016-03-30 Simon Marchi <simon.marchi@ericsson.com>
335
336 * tracepoint.c (cmd_qtenable_disable): Remove whitespace.
337
28170b88
MK
3382016-03-30 Marcin Kościelnicki <koriakin@0x04.net>
339
340 * remote-utils.c (look_up_one_symbol): Remove own_buf, handle 'v'
341 packets.
342 (relocate_instruction): Remove own_buf.
343 * server.c (own_buf): Make global.
344 (handle_v_requests): Make global.
345 * server.h (own_buf): New declaration.
346 (handle_v_requests): New prototype.
347
f39e8743
MK
3482016-03-29 Marcin Kościelnicki <koriakin@0x04.net>
349
350 PR 18377
351 * linux-s390-low.c (add_insns): New function.
352 (s390_emit_prologue): New function.
353 (s390_emit_epilogue): New function.
354 (s390_emit_add): New function.
355 (s390_emit_sub): New function.
356 (s390_emit_mul): New function.
357 (s390_emit_lsh): New function.
358 (s390_emit_rsh_signed): New function.
359 (s390_emit_rsh_unsigned): New function.
360 (s390_emit_ext): New function.
361 (s390_emit_log_not): New function.
362 (s390_emit_bit_and): New function.
363 (s390_emit_bit_or): New function.
364 (s390_emit_bit_xor): New function.
365 (s390_emit_bit_not): New function.
366 (s390_emit_equal): New function.
367 (s390_emit_less_signed): New function.
368 (s390_emit_less_unsigned): New function.
369 (s390_emit_ref): New function.
370 (s390_emit_if_goto): New function.
371 (s390_emit_goto): New function.
372 (s390_write_goto_address): New function.
373 (s390_emit_litpool): New function.
374 (s390_emit_const): New function.
375 (s390_emit_call): New function.
376 (s390_emit_reg): New function.
377 (s390_emit_pop): New function.
378 (s390_emit_stack_flush): New function.
379 (s390_emit_zero_ext): New function.
380 (s390_emit_swap): New function.
381 (s390_emit_stack_adjust): New function.
382 (s390_emit_set_r2): New function.
383 (s390_emit_int_call_1): New function.
384 (s390_emit_void_call_2): New function.
385 (s390_emit_eq_goto): New function.
386 (s390_emit_ne_goto): New function.
387 (s390_emit_lt_goto): New function.
388 (s390_emit_le_goto): New function.
389 (s390_emit_gt_goto): New function.
390 (s390_emit_ge_goto): New function.
391 (s390x_emit_prologue): New function.
392 (s390x_emit_epilogue): New function.
393 (s390x_emit_add): New function.
394 (s390x_emit_sub): New function.
395 (s390x_emit_mul): New function.
396 (s390x_emit_lsh): New function.
397 (s390x_emit_rsh_signed): New function.
398 (s390x_emit_rsh_unsigned): New function.
399 (s390x_emit_ext): New function.
400 (s390x_emit_log_not): New function.
401 (s390x_emit_bit_and): New function.
402 (s390x_emit_bit_or): New function.
403 (s390x_emit_bit_xor): New function.
404 (s390x_emit_bit_not): New function.
405 (s390x_emit_equal): New function.
406 (s390x_emit_less_signed): New function.
407 (s390x_emit_less_unsigned): New function.
408 (s390x_emit_ref): New function.
409 (s390x_emit_if_goto): New function.
410 (s390x_emit_const): New function.
411 (s390x_emit_call): New function.
412 (s390x_emit_reg): New function.
413 (s390x_emit_pop): New function.
414 (s390x_emit_stack_flush): New function.
415 (s390x_emit_zero_ext): New function.
416 (s390x_emit_swap): New function.
417 (s390x_emit_stack_adjust): New function.
418 (s390x_emit_int_call_1): New function.
419 (s390x_emit_void_call_2): New function.
420 (s390x_emit_eq_goto): New function.
421 (s390x_emit_ne_goto): New function.
422 (s390x_emit_lt_goto): New function.
423 (s390x_emit_le_goto): New function.
424 (s390x_emit_gt_goto): New function.
425 (s390x_emit_ge_goto): New function.
426 (s390_emit_ops): New function.
427 (struct linux_target_ops): Fill in emit_ops hook.
428
abd9baf9
MK
4292016-03-29 Marcin Kościelnicki <koriakin@0x04.net>
430
431 PR 18377
432 * Makefile.in: Add s390 IPA files.
433 * configure.srv: Build IPA for s390.
434 * linux-s390-ipa.c: New file.
435 * linux-s390-low.c: New includes - inttypes.h and linux-s390-tdesc.h.
436 (init_registers_s390_linux32): Move declaration to linux-s390-tdesc.h.
437 (tdesc_s390_linux32): Likewise.
438 (init_registers_s390_linux32v1): Likewise.
439 (tdesc_s390_linux32v1): Likewise.
440 (init_registers_s390_linux32v2): Likewise.
441 (tdesc_s390_linux32v2): Likewise.
442 (init_registers_s390_linux64): Likewise.
443 (tdesc_s390_linux64): Likewise.
444 (init_registers_s390_linux64v1): Likewise.
445 (tdesc_s390_linux64v1): Likewise.
446 (init_registers_s390_linux64v2): Likewise.
447 (tdesc_s390_linux64v2): Likewise.
448 (init_registers_s390_te_linux64): Likewise.
449 (tdesc_s390_te_linux64): Likewise.
450 (init_registers_s390_vx_linux64): Likewise.
451 (tdesc_s390_vx_linux64): Likewise.
452 (init_registers_s390_tevx_linux64): Likewise.
453 (tdesc_s390_tevx_linux64): Likewise.
454 (init_registers_s390x_linux64): Likewise.
455 (tdesc_s390x_linux64): Likewise.
456 (init_registers_s390x_linux64v1): Likewise.
457 (tdesc_s390x_linux64v1): Likewise.
458 (init_registers_s390x_linux64v2): Likewise.
459 (tdesc_s390x_linux64v2): Likewise.
460 (init_registers_s390x_te_linux64): Likewise.
461 (tdesc_s390x_te_linux64): Likewise.
462 (init_registers_s390x_vx_linux64): Likewise.
463 (tdesc_s390x_vx_linux64): Likewise.
464 (init_registers_s390x_tevx_linux64): Likewise.
465 (tdesc_s390x_tevx_linux64): Likewise.
466 (have_hwcap_s390_vx): New static variable.
467 (s390_arch_setup): Fill have_hwcap_s390_vx.
468 (s390_get_thread_area): New function.
469 (s390_ft_entry_gpr_esa): New const.
470 (s390_ft_entry_gpr_zarch): New const.
471 (s390_ft_entry_misc): New const.
472 (s390_ft_entry_fr): New const.
473 (s390_ft_entry_vr): New const.
474 (s390_ft_main_31): New const.
475 (s390_ft_main_64): New const.
476 (s390_ft_exit_fr): New const.
477 (s390_ft_exit_vr): New const.
478 (s390_ft_exit_misc): New const.
479 (s390_ft_exit_gpr_esa): New const.
480 (s390_ft_exit_gpr_zarch): New const.
481 (append_insns): New function.
482 (s390_relocate_instruction): New function.
483 (s390_install_fast_tracepoint_jump_pad): New function.
484 (s390_get_min_fast_tracepoint_insn_len): New function.
485 (s390_get_ipa_tdesc_idx): New function.
486 (struct linux_target_ops): Wire in the above functions.
487 (initialize_low_arch) [!__s390x__]: Don't initialize s390x tdescs.
488 * linux-s390-tdesc.h: New file.
489
a4105d04
MK
4902016-03-29 Marcin Kościelnicki <koriakin@0x04.net>
491
492 * linux-s390-low.c (s390_supports_tracepoints): New function.
493 (struct linux_target_ops): Fill supports_tracepoints hook.
494
35ac8b3e
YQ
4952016-03-18 Yao Qi <yao.qi@linaro.org>
496
497 * linux-low.c (lwp_signal_can_be_delivered): New function.
498 (linux_resume_one_lwp_throw): Use lwp_signal_can_be_delivered.
499
94610ec4
YQ
5002016-03-18 Yao Qi <yao.qi@linaro.org>
501
502 * linux-low.c (linux_resume_one_lwp_throw): Set 'signal' to
503 0 if signal is enqueued. Remove 'signal' from one debugging
504 message. Move one debugging message to some lines below.
505 Remove code setting 'signal' to 0.
506
80aea927
YQ
5072016-03-18 Yao Qi <yao.qi@linaro.org>
508
509 * linux-low.c (linux_low_filter_event): Remove redundant
510 WIFSTOPPED check together with linux_wstatus_maybe_breakpoint.
511
b04fd3be
MK
5122016-03-09 Marcin Kościelnicki <koriakin@0x04.net>
513
514 * linux-ppc-low.c (ppc_supports_tracepoints): New function.
515 (struct linux_target_ops): Wire in the above.
516
c40c8d4b
YQ
5172016-03-03 Yao Qi <yao.qi@linaro.org>
518
519 * linux-low.c: Update comments to start_step_over.
520
0f8288ae
YQ
5212016-03-03 Yao Qi <yao.qi@linaro.org>
522
523 PR server/19736
524 * linux-low.c (handle_extended_wait): Set child suspended
525 if event_lwp->bp_reinsert isn't zero.
526
fdbd04a8
YQ
5272016-03-02 Yao Qi <yao.qi@linaro.org>
528
529 * linux-low.c (linux_resume_one_lwp_throw): Replace code with
530 enqueue_pending_signal.
531
6896a8fa
MK
5322016-03-02 Marcin Kościelnicki <koriakin@0x04.net>
533
534 * tracepoint.c (cmd_qtstart): Only set ipa_tdesc_idx if agent
535 is actually loaded.
536
ab503087
MK
5372016-02-25 Marcin Kościelnicki <koriakin@0x04.net>
538
539 * linux-s390-low.c (s390_num_regs_3264): Define on 31-bit too.
540 (s390_regmap_3264) [!__s390x__]: New global.
541 (s390_collect_ptrace_register): Skip map entries containing -1.
542 (s390_supply_ptrace_register): Ditto.
543 (s390_fill_gprs_high): New function.
544 (s390_store_gprs_high): New function.
545 (s390_regsets): Add NT_S390_HIGH_GPRS.
546 (s390_get_hwcap): Enable on 31-bit.
547 (have_hwcap_s390_high_gprs): Enable on 31-bit.
548 (s390_arch_setup): Enable detection of high GPRs, TDB, VX on 31-bit.
549 Detect NT_S390_HIGH_GPRS.
550 (s390_usrregs_info_3264): Enable on 31-bit.
551 (s390_regs_info): Enable regs_info_3264 on 31-bit.
552 (initialize_low_arch): Initialize s390_regsets_info_3264 on 31-bit.
553
ae91f625
MK
5542016-02-25 Marcin Kościelnicki <koriakin@0x04.net>
555
556 PR gdb/13808
557 * Makefile.in: Add i386-*-linux-ipa.o and amd64-*-linux-ipa.o.
558 * configure.srv: Ditto.
559 * linux-aarch64-ipa.c (get_ipa_tdesc): New function.
560 (initialize_low_tracepoint): Remove ipa_tdesc assignment.
561 * linux-amd64-ipa.c: Add "linux-x86-tdesc.h" include.
562 (init_registers_amd64_linux): Remove prototype.
563 (tdesc_amd64_linux): Remove declaration.
564 (get_ipa_tdesc): New function.
565 (initialize_low_tracepoint): Remove ipa_tdesc assignment,
566 initialize remaining tdescs.
567 * linux-i386-ipa.c: Add "linux-x86-tdesc.h" include.
568 (init_registers_i386_linux): Remove prototype.
569 (tdesc_i386_linux): Remove declaration.
570 (get_ipa_tdesc): New function.
571 (initialize_low_tracepoint): Remove ipa_tdesc assignment,
572 initialize remaining tdescs.
573 * linux-low.c (linux_get_ipa_tdesc_idx): New function.
574 (linux_target_ops): wire in linux_get_ipa_tdesc_idx.
575 * linux-low.h (struct linux_target_ops): Add get_ipa_tdesc_idx.
576 * linux-x86-low.c: Move tdesc declarations to linux-x86-tdesc.h.
577 (x86_get_ipa_tdesc_idx): New function.
578 (the_low_target): Wire in x86_get_ipa_tdesc_idx.
579 * linux-x86-tdesc.h: New file.
580 * target.h (struct target_ops): Add get_ipa_tdesc_idx.
581 (target_get_ipa_tdesc_idx): New macro.
582 * tracepoint.c (ipa_tdesc_idx): New macro.
583 (struct ipa_sym_addresses): Add addr_ipa_tdesc_idx.
584 (symbol_list): Add ipa_tdesc_idx.
585 (cmd_qtstart): Write ipa_tdesc_idx in the target.
586 (ipa_tdesc): Remove.
587 (ipa_tdesc_idx): New variable.
588 (get_context_regcache): Use get_ipa_tdesc.
589 (gdb_collect): Ditto.
590 (gdb_probe): Ditto.
591 * tracepoint.h (get_ipa_tdesc): New prototype.
592 (ipa_tdesc): Remove.
593
e7ad2f14
PA
5942016-02-24 Pedro Alves <palves@redhat.com>
595
596 * linux-low.c (check_stopped_by_breakpoint): Rename to ...
597 (save_stop_reason): ... this. Use GDB_ARCH_IS_TRAP_HWBKPT and
598 handle ambiguous GDB_ARCH_IS_TRAP_BRKPT / GDB_ARCH_IS_TRAP_HWBKPT.
599 Factor out common code between the USE_SIGTRAP_SIGINFO and
600 !USE_SIGTRAP_SIGINFO blocks.
601 (linux_low_filter_event): Call save_stop_reason instead of
602 check_stopped_by_breakpoint and check_stopped_by_watchpoint.
603 Update comments.
604 (linux_wait_1): Update comments.
605
657f9cde
WW
6062016-02-24 Wei-cheng Wang <cole945@gmail.com>
607
608 * linux-ppc-low.c (ppc_supports_z_point_type): New function:
609 (ppc_insert_point, ppc_remove_point): Insert/remove z-packet breakpoints.
610 (ppc64_emit_ops_vector): Add target ops - ppc_supports_z_point_type,
611 ppc_insert_point, ppc_remove_point.
612
b00b61e1
MK
6132016-02-17 Marcin Kościelnicki <koriakin@0x04.net>
614
615 * linux-s390-low.c (s390_supports_z_point_type): New function.
616 (struct linux_target_ops): Wire s390_supports_z_point_type in.
617
553cb527
YQ
6182016-02-16 Yao Qi <yao.qi@linaro.org>
619
620 * linux-arm-low.c (get_next_pcs_syscall_next_pc): Remove argument
621 PC. Get pc from regcache_read_pc.
622
a5652c21
YQ
6232016-02-12 Yao Qi <yao.qi@linaro.org>
624
625 * linux-aarch64-low.c (aarch64_get_pc): Call linux_get_pc_64bit
626 or linux_get_pc_32bit.
627 (aarch64_set_pc): Call linux_set_pc_64bit or linux_set_pc_32bit.
628
ed443b61
YQ
6292016-02-12 Yao Qi <yao.qi@linaro.org>
630
631 * linux-arm-low.c (get_next_pcs_ops): Initialize it with
632 arm_linux_get_next_pcs_fixup.
633
020ecd38
MK
6342016-02-12 Marcin Kościelnicki <koriakin@0x04.net>
635
636 * tracepoint.c (x_tracepoint_action_download): Change
637 write_inferior_data_ptr to write_inferior_data_pointer.
638 (cmd_qtstart): Likewise.
639 (write_inferior_data_ptr): Remove.
640 (download_agent_expr): Change write_inferior_data_ptr to
641 write_inferior_data_pointer.
642 (download_tracepoint_1): Likewise.
643 (download_tracepoint): Likewise.
644 (download_trace_state_variables): Likewise.
645
7cae9051
WW
6462016-02-11 Wei-cheng Wang <cole945@gmail.com>
647 Marcin Kościelnicki <koriakin@0x04.net>
648
649 * tracepoint.c (struct tracepoint_action_ops): Remove.
650 (struct tracepoint_action): Remove ops.
651 (m_tracepoint_action_download, r_tracepoint_action_download)
652 (x_tracepoint_action_download, l_tracepoint_action_download): Adjust
653 size and offset accordingly.
654 (m_tracepoint_action_ops, r_tracepoint_action_ops)
655 (x_tracepoint_action_ops, l_tracepoint_action_ops): Remove.
656 (tracepoint_action_send, tracepoint_action_download): New functions.
657 Helpers for trace action handlers.
658 (add_tracepoint_action): Remove setup actions ops.
659 (download_tracepoint_1, tracepoint_send_agent): Call helper functions.
660
9f6a71b4
YQ
6612016-02-10 Yao Qi <yao.qi@linaro.org>
662
663 * regcache.c (regcache_raw_read_unsigned): Clear *VAL.
664
1e94266c
SM
6652016-02-09 Simon Marchi <simon.marchi@ericsson.com>
666
667 * configure.ac: Use AC_CONFIG_FILES instead of passing arguments
668 to AC_OUTPUT.
669 * configure: Regenerate.
670
8adce034
SM
6712016-02-09 Simon Marchi <simon.marchi@ericsson.com>
672
673 * linux-aarch64-low.c (aarch64_linux_siginfo_fixup): Change
674 void * to gdb_byte *.
675 * linux-low.c (siginfo_fixup): Likewise.
676 (linux_xfer_siginfo): Likewise.
677 * linux-low.h (struct linux_target_ops) <siginfo_fixup>:
678 Likewise.
679 * linux-x86-low.c (x86_siginfo_fixup): Likewise.
680
93813b37
WT
6812016-02-02 Walfred Tedeschi <walfred.tedeschi@intel.com>
682
683 * configure.srv (x86_64-*-linux*): Add amd64-linux-siginfo.o
684 to srv_tgtobj.
685 (i[34567]86-*-linux*): Add amd64-linux-siginfo.o
686 to srv_tgtobj.
687 * linux-x86-low.c [__x86_64__]: Include
688 "nat/amd64-linux-siginfo.h".
689 (compat_siginfo_from_siginfo, siginfo_from_compat_siginfo)
690 (compat_x32_siginfo_from_siginfo, siginfo_from_compat_x32_siginfo)
691 (compat_timeval, compat_sigval, compat_x32_clock, cpt_si_pid)
692 (cpt_si_uid, cpt_si_timerid, cpt_si_overrun, cpt_si_status)
693 (cpt_si_utime, cpt_si_stime, cpt_si_ptr, cpt_si_addr, cpt_si_band)
694 (cpt_si_fd, si_timerid, si_overrun): Move from
695 nat/amd64-linux-siginfo.c.
696 * Makefile.in (amd64-linux-siginfo.o:): New rule.
697
8424cc97
SM
6982016-01-28 Simon Marchi <simon.marchi@ericsson.com>
699
700 * server.c (skip_to_semicolon): Remove.
701 (process_point_options): Use strchrnul instead of
702 skip_to_semicolon.
703
4d18591b
YQ
7042016-01-26 Yao Qi <yao.qi@linaro.org>
705
706 * linux-arm-low.c (arm_gdbserver_get_next_pcs): Remove argument pc.
707 * linux-low.c (install_software_single_step_breakpoints): Don't
708 call regcache_read_pc.
709 * linux-low.h (struct linux_target_ops) <get_next_pcs>: Remove
710 argument pc.
711
d8020970
YQ
7122016-01-26 Yao Qi <yao.qi@linaro.org>
713
714 * linux-low.c (install_software_single_step_breakpoints): Call
715 regcache_read_pc instead of get_pc.
716
8b207339
YQ
7172016-01-26 Yao Qi <yao.qi@linaro.org>
718
719 * remote-utils.c (remote_close) [!USE_WIN32API]: Ignore SIGIO.
720 (unblock_async_io): Rename to ...
721 (block_unblock_async_io): ... it. New function.
722 (enable_async_io): Don't install SIGIO handler. Unblock it
723 instead.
724 (disable_async_io): Don't ignore SIGIO. Block it instead.
725 (initialize_async_io): Install SIGIO handler. Don't call
726 unblock_async_io.
727
18879fef
YQ
7282016-01-26 Yao Qi <yao.qi@linaro.org>
729
730 * remote-utils.c (getpkt): If the buffer isn't empty, and the
731 first character is '\003', call *the_target->request_interrupt.
732
a0f8e08a
YQ
7332016-01-25 Yao Qi <yao.qi@linaro.org>
734
735 * remote-utils.c (new_thread_notify): Remove.
736 (dead_thread_notify): Likewise.
737 * remote-utils.h (new_thread_notify): Remove declaration.
738 (dead_thread_notify): Likewise.
739
cc5fd9ab
MK
7402016-01-23 Marcin Kościelnicki <koriakin@0x04.net>
741
742 * gdb.trace/pending.exp: Fix expected message on continue.
743
99e8eb11
MK
7442016-01-22 Marcin Kościelnicki <koriakin@0x04.net>
745
746 * tracepoint.c (write_inferior_data_ptr): Cast to uintptr_t, so that
747 it works properly on big-endian machines where sizeof (CORE_ADDR)
748 != sizeof (void *).
749
a994041d
PA
7502016-01-21 Pedro Alves <palves@redhat.com>
751
752 * Makefile.in (COMPILER_CFLAGS, CXXFLAGS): New.
753 (INTERNAL_CFLAGS_BASE): Use COMPILER_CFLAGS instead of CFLAGS.
754 * configure: Regenerate.
755
f7a6a40d
YQ
7562016-01-21 Yao Qi <yao.qi@linaro.org>
757
758 * linux-arm-low.c (arm_sigreturn_next_pc): Add parameter
759 is_thumb and set it according to CPSR saved on the stack.
760 (get_next_pcs_syscall_next_pc): Pass is_thumb to
761 arm_sigreturn_next_pc.
762
6f69e520
YQ
7632016-01-18 Yao Qi <yao.qi@linaro.org>
764
765 * linux-low.c (linux_set_pc_64bit): New function.
766 (linux_get_pc_64bit): New function.
767 * linux-low.h (linux_set_pc_64bit, linux_get_pc_64bit):
768 Declare.
769 * linux-sparc-low.c (debug_threads): Remove declaration.
770 (sparc_get_pc): Remove.
771 (the_low_target): Use linux_get_pc_64bit instead of
772 sparc_get_pc.
773 * linux-tile-low.c (tile_get_pc, tile_set_pc): Remove.
774 (the_low_target): Use linux_get_pc_64bit and
775 linux_set_pc_64bit.
776
276d4552
YQ
7772016-01-18 Yao Qi <yao.qi@linaro.org>
778
779 * linux-arm-low.c (debug_threads): Remove declaration.
780 (arm_get_pc, arm_set_pc): Remove.
781 (the_low_target): Use linux_get_pc_32bit and
782 linux_set_pc_32bit.
783 * linux-bfin-low.c (bfin_get_pc, bfin_set_pc): Remove.
784 (the_low_target): Use linux_get_pc_32bit and
785 linux_set_pc_32bit.
786 * linux-cris-low.c (debug_threads): Remove declaration.
787 (cris_get_pc, cris_set_pc,): Remove.
788 (the_low_target): Use linux_get_pc_32bit and
789 linux_set_pc_32bit.
790 * linux-crisv32-low.c (debug_threads): Remove declaration.
791 (cris_get_pc, cris_set_pc): Remove.
792 (the_low_target): Use linux_get_pc_32bit and
793 linux_set_pc_32bit.
794 * linux-low.c: Include inttypes.h.
795 (linux_get_pc_32bit, linux_set_pc_32bit): New functions.
796 * linux-low.h (linux_get_pc_32bit, linux_set_pc_32bit): Declare.
797 * linux-m32r-low.c (m32r_get_pc, m32r_set_pc): Remove.
798 (the_low_target): Use linux_get_pc_32bit and
799 linux_set_pc_32bit.
800 * linux-m68k-low.c (m68k_get_pc, m68k_set_pc): Remove.
801 (the_low_target): Use linux_get_pc_32bit and
802 linux_set_pc_32bit.
803 * linux-nios2-low.c (nios2_get_pc, nios2_set_pc): Remove.
804 (the_low_target): Use linux_get_pc_32bit and
805 linux_set_pc_32bit.
806 * linux-sh-low.c (sh_get_pc, sh_set_pc): Remove.
807 (the_low_target): Use linux_get_pc_32bit and
808 linux_set_pc_32bit.
809 * linux-xtensa-low.c (xtensa_get_pc, xtensa_set_pc): Remove.
810 (the_low_target): Use linux_get_pc_32bit and
811 linux_set_pc_32bit.
812
eb0edac8
GB
8132016-01-18 Gary Benson <gbenson@redhat.com>
814
815 * configure.ac (AC_FUNC_FORK): New check.
816 * config.in: Regenerate.
817 * configure: Likewise.
818
1b451dda
YQ
8192016-01-14 Yao Qi <yao.qi@linaro.org>
820
821 * linux-aarch32-low.c (thumb2_breakpoint): Make it static.
822 * linux-aarch32-low.h (thumb2_breakpoint): Remove declaration.
823 * linux-arm-low.c (arm_gdbserver_get_next_pcs): Pass 1 to
824 arm_get_next_pcs_ctor.
825
82075af2
JS
8262016-01-12 Josh Stone <jistone@redhat.com>
827 Philippe Waroquiers <philippe.waroquiers@skynet.be>
828
829 * inferiors.h: Include "gdb_vecs.h".
830 (struct process_info): Add syscalls_to_catch.
831 * inferiors.c (remove_process): Free syscalls_to_catch.
832 * remote-utils.c (prepare_resume_reply): Report syscall_entry and
833 syscall_return stops.
834 * server.h (UNKNOWN_SYSCALL, ANY_SYSCALL): Define.
835 * server.c (handle_general_set): Handle QCatchSyscalls.
836 (handle_query): Report support for QCatchSyscalls.
837 * target.h (struct target_ops): Add supports_catch_syscall.
838 (target_supports_catch_syscall): New macro.
839 * linux-low.h (struct linux_target_ops): Add get_syscall_trapinfo.
840 (struct lwp_info): Add syscall_state.
841 * linux-low.c (handle_extended_wait): Mark syscall_state as an entry.
842 Maintain syscall_state and syscalls_to_catch across exec.
843 (get_syscall_trapinfo): New function, proxy to the_low_target.
844 (linux_low_ptrace_options): Enable PTRACE_O_TRACESYSGOOD.
845 (linux_low_filter_event): Toggle syscall_state entry/return for
846 syscall traps, and set it ignored for all others.
847 (gdb_catching_syscalls_p): New function.
848 (gdb_catch_this_syscall_p): New function.
849 (linux_wait_1): Handle SYSCALL_SIGTRAP.
850 (linux_resume_one_lwp_throw): Add PTRACE_SYSCALL possibility.
851 (linux_supports_catch_syscall): New function.
852 (linux_target_ops): Install it.
853 * linux-x86-low.c (x86_get_syscall_trapinfo): New function.
854 (the_low_target): Install it.
855
8f13a3ce
MF
8562016-01-12 Mike Frysinger <vapier@gentoo.org>
857
858 * acinclude.m4: Include new ../warning.m4 file.
859 * configure: Regenerated.
860 * configure.ac: Replace all warning logic with AM_GDB_WARNINGS.
861
5b3da067
MF
8622016-01-12 Mike Frysinger <vapier@gentoo.org>
863
864 * ax.c (is_goto_target): Mark static.
865 * linux-low.c (register_addr): Likewise.
866 (linux_fetch_registers, linux_store_registers): Likewise.
867 * mem-break.c (any_persistent_commands): Fix old prototype.
868 (add_commands_to_breakpoint): Mark static.
869 * regcache.c (find_register_by_name): Delete unused func.
870 * remote-utils.c (hex_or_minus_one): Mark static.
871 * server.c (monitor_show_help): Mark static.
872 (handle_query, handle_v_cont, handle_v_attach, handle_v_kill,
873 handle_v_requests): Likewise.
874
bc504a31
PA
8752016-01-12 Pedro Alves <palves@redhat.com>
876
877 Remove use of the registered trademark symbol throughout.
878
5a0dd67a
YQ
8792016-01-08 Yao Qi <yao.qi@linaro.org>
880
881 * remote-utils.c (getpkt): If c is '\003', call target hook
882 request_interrupt.
883
b2ca446f
YQ
8842016-01-06 Yao Qi <yao.qi@linaro.org>
885
886 * linux-aarch32-low.h (arm_abi_breakpoint): Move to
887 linux-aarch32-low.c.
888 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
889 (arm_breakpoint_len, thumb_breakpoint_len): Likewise.
890 (thumb2_breakpoint, thumb2_breakpoint_len): Likewise.
891 (thumb2_breakpoint): Declare.
892 * linux-aarch32-low.c (arm_abi_breakpoint): Moved from
893 linux-aarch32-low.h.
894 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
895 (arm_breakpoint_len, thumb_breakpoint_len): Likewise.
896 (thumb2_breakpoint, thumb2_breakpoint_len): Likewise.
897
edd88788
JB
8982016-01-01 Joel Brobecker <brobecker@adacore.com>
899
900 * gdbreplay.c (gdbreplay_version): Change copyright year in
901 version message.
902 * server.c (gdbserver_version): Likewise.
903
65da7f14
PP
9042015-12-28 Patrick Palka <patrick@parcs.ath.cx>
905
906 * server.c (crc32_table): Delete.
907 (crc32): Use libiberty's xcrc32 function.
908
4abd5ed2
JB
9092015-12-22 Joel Brobecker <brobecker@adacore.com>
910
911 * lynx-low.c (lynx_delete_thread_callback): New function.
912 (lynx_mourn): Properly delete our process and all of its
913 threads. Remove call to clear_inferiors.
914
0e50fe5c
JB
9152015-12-22 Joel Brobecker <brobecker@adacore.com>
916
917 * target.c (thread_search_callback): Add check that
918 the thread_stopped target callback is not NULL before
919 calling it.
920
35adc03f
YQ
9212015-12-21 Yao Qi <yao.qi@linaro.org>
922
923 * linux-aarch32-low.h [__aarch64__]: Use arm_abi_breakpoint
924 arm breakpoint.
925
bd2b2909
AT
9262015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
927
928 * server.c (handle_query): Call target_supports_software_single_step.
929
7fe5e27e
AT
9302015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
931
932 * linux-low.c (single_step): New function.
933 (linux_resume_one_lwp_throw): Call single_step.
934 (start_step_over): Likewise.
935
d9311bfa
AT
9362015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
937
938 * Makefile.in (SFILES): Append arch/arm-linux.c,
939 arch/arm-get-next-pcs.c.
940 (arm-linux.o): New rule.
941 (arm-get-next-pcs.o): New rule.
942 * configure.srv (arm*-*-linux*): Add arm-get-next-pcs.o,
943 arm-linux.o.
944 * linux-aarch32-low.c (arm_abi_breakpoint): Remove macro. Moved
945 to linux-aarch32-low.c.
946 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
947 (arm_breakpoint_len, thumb_breakpoint): Likewise.
948 (thumb_breakpoint_len, thumb2_breakpoint): Likewise.
949 (thumb2_breakpoint_len): Likewise.
950 (arm_is_thumb_mode): Make non-static.
951 * linux-aarch32-low.h (arm_abi_breakpoint): New macro. Moved
952 from linux-aarch32-low.c.
953 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
954 (arm_breakpoint_len, thumb_breakpoint): Likewise.
955 (thumb_breakpoint_len, thumb2_breakpoint): Likewise.
956 (thumb2_breakpoint_len): Likewise.
957 (arm_is_thumb_mode): New declaration.
958 * linux-arm-low.c: Include arch/arm-linux.h
959 aarch/arm-get-next-pcs.h, sys/syscall.h.
960 (get_next_pcs_ops): New struct.
961 (get_next_pcs_addr_bits_remove): New function.
962 (get_next_pcs_is_thumb): New function.
963 (get_next_pcs_read_memory_unsigned_integer): Likewise.
964 (arm_sigreturn_next_pc): Likewise.
965 (get_next_pcs_syscall_next_pc): Likewise.
966 (arm_gdbserver_get_next_pcs): Likewise.
967 (struct linux_target_ops) <arm_gdbserver_get_next_pcs>:
968 Initialize.
969 * linux-low.h: Move CORE_ADDR vector definition to gdb_vecs.h.
970 * server.h: Include gdb_vecs.h.
971
68ce2059
AT
9722015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
973
974 * Makefile.in (SFILES): Append common/common-regcache.c.
975 (OBS): Append common-regcache.o.
976 (common-regcache.o): New rule.
977 * regcache.c (init_register_cache): Initialize cache to
978 REG_UNAVAILABLE.
979 (regcache_raw_read_unsigned): New function.
980 * regcache.h (REG_UNAVAILABLE, REG_VALID): Replaced by shared
981 register_status enum.
982
fa5308bd
AT
9832015-12-18 Antoine Tremblay <antoine.tremblay@ericsson.com>
984
985 * linux-aarch64-low.c (the_low_targets): Rename
986 breakpoint_reinsert_addr to get_next_pcs.
987 * linux-arm-low.c (the_low_targets): Likewise.
988 * linux-bfin-low.c (the_low_targets): Likewise.
989 * linux-cris-low.c (the_low_targets): Likewise.
990 * linux-crisv32-low.c (the_low_targets): Likewise.
991 * linux-low.c (can_software_single_step): Likewise.
992 (install_software_single_step_breakpoints): New function.
993 (start_step_over): Use install_software_single_step_breakpoints.
994 * linux-low.h: New CORE_ADDR vector.
995 (struct linux_target_ops) Rename breakpoint_reinsert_addr to
996 get_next_pcs.
997 * linux-mips-low.c (the_low_targets): Likewise.
998 * linux-nios2-low.c (the_low_targets): Likewise.
999 * linux-sparc-low.c (the_low_targets): Likewise.
1000
4a6ed09b
PA
10012015-12-17 Pedro Alves <palves@redhat.com>
1002
1003 * linux-low.c (linux_kill_one_lwp): Remove references to
1004 LinuxThreads.
1005 (kill_lwp): Remove HAVE_TKILL_SYSCALL check. No longer fall back
1006 to 'kill'.
1007 (linux_init_signals): Delete.
1008 (initialize_low): Adjust.
1009 * thread-db.c (thread_db_init): Remove LinuxThreads reference.
1010
7544db95
PA
10112015-12-16 Pedro Alves <palves@redhat.com>
1012
1013 * configure.ac (compiler warning flags): When testing a
1014 -Wno-foo option, check whether -Wfoo works instead.
1015 * configure: Regenerate.
1016
8020350c
DB
10172015-12-11 Don Breazeal <donb@codesourcery.com>
1018
1019 * server.c (process_serial_event): Don't exit from gdbserver
1020 in remote mode if there are still active inferiors.
1021
db91f502
YQ
10222015-12-11 Yao Qi <yao.qi@linaro.org>
1023
1024 * linux-aarch64-low.c (aarch64_breakpoint_at): Call
1025 arm_breakpoint_at if the process is 32-bit.
1026
b37a6290
YQ
10272015-12-11 Yao Qi <yao.qi@linaro.org>
1028
1029 * linux-aarch32-low.c [__aarch64__]: Use arm_abi_breakpoint
1030 arm breakpoint.
1031
17b1509a
YQ
10322015-12-07 Yao Qi <yao.qi@linaro.org>
1033
1034 * configure.srv: Append arm.o to srv_tgtobj for
1035 aarch64*-*-linux* target.
1036 * linux-aarch32-low.c (arm_abi_breakpoint): New macro. Moved
1037 from linux-arm-low.c.
1038 (arm_eabi_breakpoint, arm_breakpoint): Likewise.
1039 (arm_breakpoint_len, thumb_breakpoint): Likewise.
1040 (thumb_breakpoint_len, thumb2_breakpoint): Likewise.
1041 (thumb2_breakpoint_len): Likewise.
1042 (arm_is_thumb_mode, arm_breakpoint_at): Likewise.
1043 (arm_breakpoint_kinds): Likewise.
1044 (arm_breakpoint_kind_from_pc): Likewise.
1045 (arm_sw_breakpoint_from_kind): Likewise.
1046 (arm_breakpoint_kind_from_current_state): Likewise.
1047 * linux-aarch32-low.h (arm_breakpoint_kind_from_pc): Declare.
1048 (arm_sw_breakpoint_from_kind): Declare.
1049 (arm_breakpoint_kind_from_current_state): Declare.
1050 (arm_breakpoint_at): Declare.
1051 * linux-aarch64-low.c (aarch64_sw_breakpoint_from_kind): Call
1052 arm_sw_breakpoint_from_kind if process is 32-bit.
1053 (aarch64_breakpoint_kind_from_pc): New function.
1054 (aarch64_breakpoint_kind_from_current_state): New function.
1055 (the_low_target): Initialize fields breakpoint_kind_from_pc
1056 and breakpoint_kind_from_current_state.
1057 * linux-arm-low.c (arm_breakpoint_kinds): Move to
1058 linux-aarch32-low.c.
1059 (arm_abi_breakpoint, arm_eabi_breakpoint): Likewise.
1060 (arm_breakpoint, arm_breakpoint_len): Likewise.
1061 (thumb_breakpoint, thumb_breakpoint_len): Likewise.
1062 (thumb2_breakpoint, thumb2_breakpoint_len): Likewise.
1063 (arm_is_thumb_mode): Likewise.
1064 (arm_breakpoint_at): Likewise.
1065 (arm_breakpoint_kind_from_pc): Likewise.
1066 (arm_sw_breakpoint_from_kind): Likewise.
1067 (arm_breakpoint_kind_from_current_state): Likewise.
1068
1069 Revert:
1070 2015-08-04 Yao Qi <yao.qi@linaro.org>
1071
1072 * linux-aarch64-low.c (aarch64_supports_z_point_type): Return
1073 0 for Z_PACKET_SW_BP if it may be used in multi-arch debugging.
1074 * server.c (extended_protocol): Remove "static".
1075 * server.h (extended_protocol): Declare it.
1076
ece66d65
JS
10772015-12-04 Josh Stone <jistone@redhat.com>
1078
1079 * target.h (struct target_ops) <arch_setup>: Rename to ...
1080 (struct target_ops) <post_create_inferior>: ... this.
1081 (target_arch_setup): Rename to ...
1082 (target_post_create_inferior): ... this, calling post_create_inferior.
1083 * server.c (start_inferior): Update target_arch_setup calls to
1084 target_post_create_inferior.
1085 * linux-low.c (linux_low_ptrace_options): Forward declare.
1086 (linux_arch_setup): Update its comment for general use.
1087 (linux_post_create_inferior): New, run arch_setup and setup ptrace.
1088 (struct linux_target_ops): Use linux_post_create_inferior.
1089 * lynx-low.c (struct lynx_target_ops): Update arch_setup stub comment
1090 to post_create_inferior.
1091 * nto-low.c (struct nto_target_ops): Likewise.
1092 * spu-low.c (struct spu_target_ops): Likewise.
1093 * win32-low.c (struct win32_target_ops): Likewise.
1094
e58c48b4
AT
10952015-12-03 Antoine Tremblay <antoine.tremblay@ericsson.com>
1096
1097 * linux-arm-low.c: Remove duplicate arch/arm.h include.
1098
fbec8956
AT
10992015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
1100
1101 * linux-arm-low.c (arm_reinsert_addr): Remove function.
1102 (struct linux_target_ops <breakpoint_reinsert_addr>: Set to NULL.
1103 * linux-cris-low.c (cris_reinsert_addr> Remove function.
1104 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
1105 * linux-crisv32-low.c (cris_reinsert_addr): Remove function.
1106 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
1107 * linux-mips-low.c (mips_reinsert_addr): Remove function.
1108 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
1109 * linux-nios2-low.c (nios2_reinsert_addr): Remove function.
1110 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
1111 * linux-sparc-low.c (sparc_reinsert_addr): Remove function.
1112 (struct linux_target_ops) <breakpoint_reinsert_addr>: Set to NULL.
1113
9b4c5f87
AT
11142015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
1115
1116 * linux-low.c (linux_look_up_symbols): Don't call
1117 linux_supports_traceclone.
1118 * linux-low.h (thread_db_init): Remove use_events argument.
1119 * thread-db.c (thread_db_use_event): Remove global variable.
1120 (struct thread_db) <td_thr_event_enable_p>: Remove field.
1121 (struct thread_db) <td_create_bp>: Remove field.
1122 (thread_db_create_event): Remove function.
1123 (thread_db_enable_reporting): Likewise.
1124 (find_one_thread): Don't check for thread_db_use_events.
1125 (attach_thread): Likewise.
1126 (thread_db_load_search): Remove td_thr_event_enable_p initialization.
1127 (try_thread_db_load_1): Don't check for thread_db_use_events.
1128 (thread_db_init): Remove use_events argument and thread events
1129 handling.
1130 (remove_thread_event_breakpoints): Remove function.
1131 (thread_db_detach): Remove call to remove_thred_event_breakpoints.
1132
7d00775e
AT
11332015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
1134
1135 * linux-aarch64-low.c (aarch64_supports_hardware_single_step):
1136 New function.
1137 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
1138 * linux-arm-low.c (arm_supports_hardware_single_step): New function.
1139 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
1140 * linux-bfin-low.c (bfin_supports_hardware_single_step): New function.
1141 (struct linux_target_ops) <bfin_supports_hardware_single_step>:
1142 Initialize.
1143 * linux-crisv32-low.c (cris_supports_hardware_single_step):
1144 New function.
1145 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
1146 * linux-low.c (can_hardware_single_step): Use
1147 supports_hardware_single_step.
1148 (can_software_single_step): New function.
1149 (start_step_over): Call can_software_single_step.
1150 (linux_supports_hardware_single_step): New function.
1151 (struct target_ops) <supports_software_single_step>: Initialize.
1152 * linux-low.h (struct linux_target_ops)
1153 <supports_hardware_single_step>: Initialize.
1154 * linux-m32r-low.c (m32r_supports_hardware_single_step): New function.
1155 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
1156 * linux-ppc-low.c (ppc_supports_hardware_single_step): New function.
1157 (struct linux_target_ops) <supports_hardware_single_step> Initialize.
1158 * linux-s390-low.c (s390_supports_hardware_single_step): New function.
1159 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
1160 * linux-sh-low.c (sh_supports_hardware_single_step): New function.
1161 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
1162 * linux-tic6x-low.c (tic6x_supports_hardware_single_step): New function.
1163 (struct linux_target_ops) <tic6x_supports_hardware_single_step>:
1164 Initialize.
1165 * linux-tile-low.c (tile_supports_hardware_single_step): New function.
1166 (struct linux_target_ops) <tile_supports_hardware_single_step>:
1167 Initialize.
1168 * linux-x86-low.c (x86_supports_hardware_single_step) New function.
1169 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
1170 * linux-xtensa-low.c (xtensa_supports_hardware_single_step):
1171 New function.
1172 (struct linux_target_ops) <supports_hardware_single_step>: Initialize.
1173 * target.h (struct target_ops): <supports_software_single_step>:
1174 New field.
1175 (target_supports_software_single_step): New macro.
1176
2d97cd35
AT
11772015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
1178
1179 * linux-low.c (linux_wait_1): Fix pc advance condition.
1180 * mem-break.c (reinsert_breakpoint_inserted_here): New function.
1181 * mem-break.h (reinsert_breakpoint_inserted_here): New declaration.
1182
769ef81f
AT
11832015-11-30 Antoine Tremblay <antoine.tremblay@ericsson.com>
1184
1185 * linux-arm-low.c (arm_is_thumb_mode): New function.
1186 (arm_breakpoint_at): Use arm_is_thumb_mode.
1187 (arm_breakpoint_kind_from_current_state): New function.
1188 (struct linux_target_ops) <breakpoint_kind_from_current_state>:
1189 Initialize.
1190 * linux-low.c (linux_wait_1): Call breakpoint_kind_from_current_state.
1191 (linux_breakpoint_kind_from_current_state): New function.
1192 (struct target_ops <breakpoint_kind_from_current_state>: Initialize.
1193 * linux-low.h (struct linux_target_ops)
1194 <breakpoint_kind_from_current_state>: New field.
1195 * target.h (struct target_ops): Likewise.
1196 (target_breakpoint_kind_from_current_state): New macro.
1197
1bebeeca
PA
11982015-11-30 Pedro Alves <palves@redhat.com>
1199
1200 * linux-low.c (linux_resume): Wake up the event loop before
1201 returning.
1202
a67a9fae
PA
12032015-11-30 Pedro Alves <palves@redhat.com>
1204
1205 * mem-break.c (check_gdb_bp_preconditions): Remove current_thread
1206 check.
1207 (set_gdb_breakpoint): If prepare_to_access_memory fails, set *ERR
1208 to -1.
1209 * target.c (struct thread_search): New structure.
1210 (thread_search_callback): New function.
1211 (prev_general_thread): New global.
1212 (prepare_to_access_memory, done_accessing_memory): New functions.
1213 * target.h (prepare_to_access_memory, done_accessing_memory):
1214 Replace macros with function declarations.
1215
f2faf941
PA
12162015-11-30 Pedro Alves <palves@redhat.com>
1217
1218 PR 14618
1219 * linux-low.c (linux_wait_1): If the last resumed thread is gone,
1220 report TARGET_WAITKIND_NO_RESUMED.
1221 * remote-utils.c (prepare_resume_reply): Handle
1222 TARGET_WAITKIND_NO_RESUMED.
1223 * server.c (report_no_resumed): New global.
1224 (handle_query) <qSupported>: Handle "no-resumed+". Report
1225 "no-resumed+" support.
1226 (resume): When the target reports TARGET_WAITKIND_NO_RESUMED, only
1227 return error if the client doesn't support no-resumed events.
1228 (push_stop_notification): New function.
1229 (handle_target_event): Use it. Report TARGET_WAITKIND_NO_RESUMED
1230 events if the client supports them.
1231
a681f9c9
PA
12322015-11-30 Pedro Alves <palves@redhat.com>
1233
1234 * linux-low.c (thread_still_has_status_pending_p): Don't check
1235 vCont;t here.
1236 (lwp_resumed): New function.
1237 (status_pending_p_callback): Return early if the LWP is not
1238 supposed to be resumed.
1239
65706a29
PA
12402015-11-30 Pedro Alves <palves@redhat.com>
1241
1242 * linux-low.c (handle_extended_wait): Assert that the LWP's
1243 waitstatus is TARGET_WAITKIND_IGNORE. If GDB wants to hear about
1244 thread create events, leave the new child's status pending.
1245 (linux_low_filter_event): If GDB wants to hear about thread exit
1246 events, leave the LWP marked dead and don't delete it.
1247 (linux_wait_for_event_filtered): Don't check for thread exit.
1248 (filter_exit_event): New function.
1249 (linux_wait_1): Use it, when returning an exit event.
1250 (linux_resume_one_lwp_throw): Assert that the LWP's
1251 waitstatus is TARGET_WAITKIND_IGNORE.
1252 * remote-utils.c (prepare_resume_reply): Handle
1253 TARGET_WAITKIND_THREAD_CREATED and TARGET_WAITKIND_THREAD_EXITED.
1254 * server.c (report_thread_events): New global.
1255 (handle_general_set): Handle QThreadEvents.
1256 (handle_query) <qSupported>: Handle and report QThreadEvents+;
1257 (handle_target_event): Handle TARGET_WAITKIND_THREAD_CREATED and
1258 TARGET_WAITKIND_THREAD_EXITED.
1259 * server.h (report_thread_events): Declare.
1260
56cf4bed
PA
12612015-11-30 Pedro Alves <palves@redhat.com>
1262
1263 * linux-low.c (resume_stopped_resumed_lwps): Don't check whether
1264 the thread's last_resume_kind was resume_stop.
1265
500c1d85
PA
12662015-11-30 Pedro Alves <palves@redhat.com>
1267
1268 * linux-low.c (linux_attach): In non-stop mode, wait for one stop
1269 before returning.
1270
de979965
PA
12712015-11-30 Pedro Alves <palves@redhat.com>
1272
1273 * server.c (handle_v_requests): Handle vCtrlC.
1274
34c65914
PA
12752015-11-30 Pedro Alves <palves@redhat.com>
1276
1277 * gdbthread.h (find_any_thread_of_pid): Declare.
1278 * inferiors.c (thread_of_pid, find_any_thread_of_pid): New
1279 functions.
1280 * server.c (handle_query): If current_thread is NULL, look for
1281 another thread of the selected process.
1282
79efa585 12832015-11-26 Daniel Colascione <dancol@dancol.org>
01a49af8 1284 Simon Marchi <simon.marchi@ericsson.com>
79efa585
SM
1285
1286 * linux-low.c (linux_target_ops): Use linux_proc_tid_get_name.
1287 * server.c (handle_qxfer_threads_worker): Refactor to include thread
1288 name in reply.
1289 * target.h (struct target_ops) <thread_name>: New field.
1290 (target_thread_name): New macro.
1291
80d82c19
JB
12922015-11-23 Joel Brobecker <brobecker@adacore.com>
1293
1294 * regcache.h (regcache_invalidate_pid): Add declaration.
1295 * regcache.c (regcache_invalidate_pid): New function, extracted
1296 from regcache_invalidate.
1297 (regcache_invalidate): Reimplement using regcache_invalidate_pid.
1298 Add trivial documentation comment.
1299 * lynx-low.c: Use regcache_invalidate_pid instead of
1300 regcache_invalidate.
1301
64da5dd5
JB
13022015-11-23 Joel Brobecker <brobecker@adacore.com>
1303
1304 * configure.ac: Do not call AC_CHECK_TYPES for Elf32_auxv_t
1305 and Elf64_auxv_t if the target is Android.
1306
37ce4055
DE
13072015-11-22 Doug Evans <xdje42@gmail.com>
1308
1309 * target.h: #include <sys/types.h>.
1310
06e03fff
PA
13112015-11-19 Pedro Alves <palves@redhat.com>
1312
1313 * linux-low.c (linux_process_qsupported): Change prototype.
1314 Adjust.
1315 * linux-low.h (struct linux_target_ops) <process_qsupported>:
1316 Change prototype.
1317 * linux-x86-low.c (x86_linux_process_qsupported): Change prototype
1318 and adjust to loop over all features.
1319 * server.c (handle_query) <qSupported>: Adjust to call
1320 target_process_qsupported once, passing it a vector of unprocessed
1321 features.
1322 * target.h (struct target_ops) <process_qsupported>: Change
1323 prototype.
1324 (target_process_qsupported): Adjust.
1325
9a084706
PA
13262015-11-19 Pedro Alves <palves@redhat.com>
1327
1328 * configure.ac (ERROR_ON_WARNING): Don't check whether in C++
1329 mode.
1330 * configure: Regenerate.
1331
dad44a1f
PA
13322015-11-19 Pedro Alves <palves@redhat.com>
1333
1334 * configure: Regenerate.
1335
231c0592
YQ
13362015-11-19 Yao Qi <yao.qi@linaro.org>
1337
1338 * linux-aarch64-low.c (emit_data_processing_reg): Change opcode
1339 type to uint32_t.
1340
6c1c9a8b
YQ
13412015-11-19 Yao Qi <yao.qi@linaro.org>
1342
1343 * linux-aarch64-low.c (enum aarch64_operand_type): New.
1344 (struct aarch64_operand): Move enum out.
1345
9caa3311
YQ
13462015-11-19 Yao Qi <yao.qi@linaro.org>
1347
1348 * linux-aarch64-low.c (aarch64_fill_fpregset): Cast buf to
1349 struct user_fpsimd_state *.
1350 (aarch64_store_fpregset): Likewise.
1351
6a69a054
YQ
13522015-11-19 Yao Qi <yao.qi@linaro.org>
1353
1354 * linux-aarch64-low.c (aarch64_fill_gregset): Cast buf to
1355 struct user_pt_regs *.
1356 (aarch64_store_gregset): Likewise.
1357
1798301e
PA
13582015-11-18 Pedro Alves <palves@redhat.com>
1359
1360 * Makefile.in (all_object_files): Add $IPA_OBJS.
1361
ce7715e2
PA
13622015-11-17 Pedro Alves <palves@redhat.com>
1363
1364 * win32-low.c (win32_resume): Use gdb_signal_from_host,
1365 GDB_SIGNAL_0 and gdb_signal_to_string.
1366
c0879059
PA
13672015-11-17 Pedro Alves <palves@redhat.com>
1368
1369 * win32-low.c (handle_output_debug_string): Remove parameter.
1370 (win32_kill): Remove our_status local and adjust call to
1371 handle_output_debug_string.
1372 (get_child_debug_event): Adjust call to
1373 handle_output_debug_string.
1374
1996e237
SM
13752015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
1376
1377 * linux-mips-low.c (mips_fill_gregset): Add cast.
1378 (mips_store_gregset): Likewise.
1379 (mips_fill_fpregset): Likewise.
1380 (mips_store_fpregset): Likewise.
1381
cbec665b
SM
13822015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
1383
1384 * linux-mips-low.c (mips_add_watchpoint): Rename private to
1385 priv.
1386
eb3e3c67
SM
13872015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
1388
1389 * linux-mips-low.c (mips_linux_new_thread): Change type of
1390 watch_type to enum target_hw_bp_type.
1391
171de4b8
SM
13922015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
1393
1394 * linux-arm-low.c (raw_bkpt_type_to_arm_hwbp_type):
1395 Change return type to arm_hwbp_type.
1396
04248ead
SM
13972015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
1398
1399 * linux-aarch32-low.c (arm_fill_gregset): Add cast.
1400 (arm_store_gregset): Likewise.
1401 * linux-arm-low.c (arm_get_hwcap): Likewise.
1402 (arm_read_description): Likewise.
1403
04b3479c
SM
14042015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
1405
1406 * linux-aarch32-low.c (aarch32_regsets): Use NULL_REGSET.
1407
2bc84e8a
SM
14082015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
1409
1410 * linux-ppc-low.c (ppc_get_hwcap): Add cast.
1411 (ppc_fill_vsxregset): Likewise.
1412 (ppc_store_vsxregset): Likewise.
1413 (ppc_fill_vrregset): Likewise.
1414 (ppc_store_vrregset): Likewise.
1415 (ppc_fill_evrregset): Likewise.
1416 (ppc_store_evrregset): Likewise.
1417
e6c5bb05
SM
14182015-11-03 Simon Marchi <simon.marchi@polymtl.ca>
1419
1420 * linux-ppc-low.c (ppc_usrregs_info): Remove
1421 forward-declaration.
1422 (ppc_arch_setup): Move lower in file.
1423
7ea45d72
SM
14242015-10-30 Simon Marchi <simon.marchi@ericsson.com>
1425
1426 * proc-service.c (ps_pdread): Change CORE_ADDR cast to uintptr_t.
1427 (ps_pdwrite): Likewise.
1428
69291610
HW
14292015-10-29 Henrik Wallin <henrik.wallin@windriver.com>
1430
1431 * linux-arm-low.c (arm_new_thread): Move pointer dereference
1432 to after assert checks.
1433
b42945fd
SM
14342015-10-29 Simon Marchi <simon.marchi@ericsson.com>
1435
1436 * proc-service.c (ps_pdread): Add/adjust casts.
1437 (ps_pdwrite): Add/adjust casts.
1438
d6f85c84
SM
14392015-10-29 Simon Marchi <simon.marchi@polymtl.ca>
1440
1441 * server.c (handle_search_memory_1): Cast return value of
1442 memmem.
1443
f98cd059
SM
14442015-10-29 Simon Marchi <simon.marchi@polymtl.ca>
1445
1446 * server.c (write_qxfer_response): Change type of data to
1447 gdb_byte *.
1448
d2412fa5
PA
14492015-10-29 Pedro Alves <palves@redhat.com>
1450
1451 * mem-break.c (Z_packet_to_bkpt_type): Add cast.
1452
c17414a2
PA
14532015-10-29 Pedro Alves <palves@redhat.com>
1454
1455 * tracepoint.c (clear_installed_tracepoints): Add casts.
1456
e053fbc4
PA
14572015-10-29 Pedro Alves <palves@redhat.com>
1458
1459 * server.c (handle_v_cont, process_serial_event): Add enum
1460 gdb_signal casts to signal parsing code.
1461
add67df8
PA
14622015-10-29 Pedro Alves <palves@redhat.com>
1463
1464 * linux-low.h (NULL_REGSET): Define.
1465 * linux-aarch64-low.c (aarch64_regsets): Use NULL_REGSET.
1466 * linux-arm-low.c (arm_regsets): Likewise.
1467 * linux-crisv32-low.c (cris_regsets): Likewise.
1468 * linux-m68k-low.c (m68k_regsets): Likewise.
1469 * linux-mips-low.c (mips_regsets): Likewise.
1470 * linux-nios2-low.c (nios2_regsets): Likewise.
1471 * linux-ppc-low.c (ppc_regsets): Likewise.
1472 * linux-s390-low.c (s390_regsets): Likewise.
1473 * linux-sh-low.c (sh_regsets): Likewise.
1474 * linux-sparc-low.c (sparc_regsets): Likewise.
1475 * linux-tic6x-low.c (tic6x_regsets): Likewise.
1476 * linux-tile-low.c (tile_regsets): Likewise.
1477 * linux-x86-low.c (x86_regsets): Likewise.
1478 * linux-xtensa-low.c (xtensa_regsets): Likewise.
1479
50bc912a
PA
14802015-10-29 Pedro Alves <palves@redhat.com>
1481
1482 * linux-low.h (NULL_REGSET): Define.
1483 * linux-aarch64-low.c (aarch64_regsets): Use NULL_REGSET.
1484 * linux-arm-low.c (arm_regsets): Likewise.
1485 * linux-crisv32-low.c (cris_regsets): Likewise.
1486 * linux-m68k-low.c (m68k_regsets): Likewise.
1487 * linux-mips-low.c (mips_regsets): Likewise.
1488 * linux-nios2-low.c (nios2_regsets): Likewise.
1489 * linux-ppc-low.c (ppc_regsets): Likewise.
1490 * linux-s390-low.c (s390_regsets): Likewise.
1491 * linux-sh-low.c (sh_regsets): Likewise.
1492 * linux-sparc-low.c (sparc_regsets): Likewise.
1493 * linux-tic6x-low.c (tic6x_regsets): Likewise.
1494 * linux-tile-low.c (tile_regsets): Likewise.
1495 * linux-x86-low.c (x86_regsets): Likewise.
1496 * linux-xtensa-low.c (xtensa_regsets): Likewise.
1497
682b2546
DE
14982015-10-26 Doug Evans <dje@google.com>
1499
1500 * linux-low.c (__SIGRTMIN): Move to nat/linux-nat.h.
1501
963843d4
DE
15022015-10-26 Doug Evans <dje@google.com>
1503
1504 * linux-low.c (W_STOPCODE): Moved to common/gdb_wait.h.
1505
d41401ac
DE
15062015-10-26 Doug Evans <dje@google.com>
1507
1508 * thread-db.c (find_one_thread): Cast ti.ti_tid to unsigned long
1509 for debug_printf.
1510 (attach_thread, find_new_threads_callback): Ditto.
1511
3db28855
AT
15122015-10-23 Antoine Tremblay <antoine.tremblay@ericsson.com>
1513
1514 * mem-break.h (set_breakpoint_data): Remove.
1515
fb78e89c
AT
15162015-10-23 Antoine Tremblay <antoine.tremblay@ericsson.com>
1517
1518 * nto-low.c (nto_sw_breakpoint_from_kind): New function.
1519 (struct target_ops) <sw_breakpoint_from_kind>: Initialize.
1520 (initialize_low): Remove set_breakpoint_data call.
1521 * spu-low.c (spu_sw_breakpoint_from_kind): New function.
1522 (struct target_ops) <sw_breakpoint_from_kind>: Iniitalize.
1523 (initialize_low): Remove set_breakpoint_data call.
1524 * win32-low.c (win32_sw_breakpoint_from_kind): New function.
1525 (struct target_ops) <sw_breakpoint_from_kind>: Initialize.
1526 (initialize_low): Remove set_breakpoint_data call.
1527
2e6ee069
AT
15282015-10-23 Antoine Tremblay <antoine.tremblay@ericsson.com>
1529
1530 * linux-low.c (default_breakpoint_kind_from_pc): Move to target.c.
1531 * mem-break.c (set_breakpoint_at): Use target_breakpoint_kind_from_pc.
1532 * target.c (default_breakpoint_kind_from_pc): Moved from linux-low.c
1533 * target.h (target_breakpoint_kind_from_pc): New macro.
1534
1652a986
AT
15352015-10-22 Antoine Tremblay <antoine.tremblay@ericsson.com>
1536
1537 * linux-low.c (default_breakpoint_kind_from_pc): New function.
1538 (linux_breakpoint_kind_from_pc): Use default_breakpoint_kind_from_pc for
1539 the default breakpoint kind.
1540
abeead09
AT
15412015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
1542
1543 * linux-arm-low.c (arm_supports_z_point_type): Add software
1544 breakpoint support.
1545
b0b4b501
AT
15462015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
1547
1548 * linux-arm-low.c: Refactor breakpoint definitions.
1549 (arm_breakpoint_at): Adjust for arm_abi_breakpoint.
1550 (arm_sw_breakpoint_from_kind): Adjust for arm_breakpoint.
1551
8689682c
AT
15522015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
1553
1554 * Makefile.in: Add arm.c/o.
1555 * configure.srv: Likewise.
1556 * linux-arm-low.c (arm_breakpoint_kinds): New enum.
1557 (arm_breakpoint_kind_from_pc): New function.
1558 (arm_sw_breakpoint_from_kind): Return proper kind.
1559 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize.
1560
27165294
AT
15612015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
1562
1563 * linux-low.c (initialize_low): Ajdust for breakpoint global variables
1564 removal.
1565 * mem-break.c : Remove breakpoint_data/breakpoint_len global variables.
1566 (struct raw_breakpoint) <size>: Remove.
1567 (struct raw_breakpoint) <kind>: Add.
1568 (bp_size): New function.
1569 (bp_opcode): Likewise.
1570 (find_raw_breakpoint_at): Adjust for kind.
1571 (insert_memory_breakpoint): Adjust for kind call bp_size,bp_opcode.
1572 (remove_memory_breakpoint): Adjust for kind call bp_size.
1573 (set_raw_breakpoint_at): Adjust for kind.
1574 (set_breakpoint): Likewise.
1575 (set_breakpoint_at): Call breakpoint_kind_from_pc.
1576 (delete_raw_breakpoint): Adjust for kind.
1577 (delete_breakpoint): Likewise.
1578 (find_gdb_breakpoint): Likewise.
1579 (set_gdb_breakpoint_1): Likewise.
1580 (set_gdb_breakpoint): Likewise.
1581 (delete_gdb_breakpoint_1): Likewise.
1582 (delete_gdb_breakpoint): Likewise.
1583 (uninsert_raw_breakpoint): Likewise.
1584 (reinsert_raw_breakpoint): Likewise.
1585 (set_breakpoint_data): Remove.
1586 (validate_inserted_breakpoint): Adjust for kind call bp_size,bp_opcode.
1587 (check_mem_read): Adjust for kind call bp_size.
1588 (check_mem_write): Adjust for kind call bp_size,bp_opcode.
1589 (clone_one_breakpoint): Adjust for kind.
1590 * mem-break.h (set_gdb_breakpoint): Likewise.
1591 (delete_gdb_breakpoint): Likewise.
1592 * server.c (process_serial_event): Likewise.
1593
dd373349
AT
15942015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
1595
1596 * linux-aarch64-low.c (aarch64_sw_breakpoint_from_kind): New function.
1597 (struct linux_target_ops) <breakpoint>: Remove.
1598 (struct linux_target_ops) <breakpoint_len>: Remove.
1599 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
1600 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
1601 * linux-arm-low.c (arm_breakpoint_kind_from_pc): New function.
1602 (arm_sw_breakpoint_from_kind): New function.
1603 * linux-bfin-low.c (bfin_sw_breakpoint_from_kind): New function.
1604 (struct linux_target_ops) <breakpoint>: Remove.
1605 (struct linux_target_ops) <breakpoint_len>: Remove.
1606 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
1607 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
1608 * linux-cris-low.c (cris_sw_breakpoint_from_kind): New function.
1609 (struct linux_target_ops) <breakpoint>: Remove.
1610 (struct linux_target_ops) <breakpoint_len>: Remove.
1611 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
1612 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
1613 * linux-crisv32-low.c (cris_sw_breakpoint_from_kind): New function.
1614 (struct linux_target_ops) <breakpoint>: Remove.
1615 (struct linux_target_ops) <breakpoint_len>: Remove.
1616 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
1617 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
1618 * linux-low.c (linux_wait_1): Call breakpoint_kind_from_pc
1619 and sw_breakpoint_from_kind to increment the pc.
1620 (linux_breakpoint_kind_from_pc): New function.
1621 (linux_sw_breakpoint_from_kind): New function.
1622 (struct target_ops) <sw_breakpoint_from_kind>: Initialize field.
1623 (initialize_low): Call breakpoint_kind_from_pc and
1624 sw_breakpoint_from_kind to replace breakpoint_data/len.
1625 * linux-low.h (struct linux_target_ops) <breakpoint_kind_from_pc>:
1626 New field.
1627 (struct linux_target_ops) <sw_breakpoint_from_kind>: Likewise.
1628 * linux-m32r-low.c (m32r_sw_breakpoint_from_kind): New function.
1629 (struct linux_target_ops) <breakpoint>: Remove.
1630 (struct linux_target_ops) <breakpoint_len>: Remove.
1631 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
1632 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
1633 * linux-m68k-low.c (m68k_sw_breakpoint_from_kind): New function.
1634 (struct linux_target_ops) <breakpoint>: Remove.
1635 (struct linux_target_ops) <breakpoint_len>: Remove.
1636 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
1637 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
1638 * linux-mips-low.c (mips_sw_breakpoint_from_kind): New function.
1639 (struct linux_target_ops) <breakpoint>: Remove.
1640 (struct linux_target_ops) <breakpoint_len>: Remove.
1641 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
1642 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
1643 * linux-nios2-low.c (nios2_sw_breakpoint_from_kind): New function.
1644 (struct linux_target_ops) <breakpoint>: Remove.
1645 (struct linux_target_ops) <breakpoint_len>: Remove.
1646 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
1647 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
1648 * linux-ppc-low.c (ppc_sw_breakpoint_from_kind): New function.
1649 (struct linux_target_ops) <breakpoint>: Remove.
1650 (struct linux_target_ops) <breakpoint_len>: Remove.
1651 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
1652 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
1653 * linux-s390-low.c (s390_sw_breakpoint_from_kind): New function.
1654 (struct linux_target_ops) <breakpoint>: Remove.
1655 (struct linux_target_ops) <breakpoint_len>: Remove.
1656 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
1657 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
1658 * linux-sh-low.c (sh_sw_breakpoint_from_kind): New function.
1659 (struct linux_target_ops) <breakpoint>: Remove.
1660 (struct linux_target_ops) <breakpoint_len>: Remove.
1661 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
1662 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
1663 * linux-sparc-low.c (sparc_sw_breakpoint_from_kind): New function.
1664 (struct linux_target_ops) <breakpoint>: Remove.
1665 (struct linux_target_ops) <breakpoint_len>: Remove.
1666 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
1667 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
1668 * linux-tic6x-low.c (tic6x_sw_breakpoint_from_kind): New function.
1669 (struct linux_target_ops) <breakpoint>: Remove.
1670 (struct linux_target_ops) <breakpoint_len>: Remove.
1671 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
1672 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
1673 * linux-tile-low.c (tile_sw_breakpoint_from_kind): New function.
1674 * linux-x86-low.c (x86_sw_breakpoint_from_kind): New function.
1675 (struct linux_target_ops) <breakpoint>: Remove.
1676 (struct linux_target_ops) <breakpoint_len>: Remove.
1677 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
1678 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
1679 * linux-xtensa-low.c (xtensa_sw_breakpoint_from_kind) New function.
1680 (struct linux_target_ops) <breakpoint>: Remove.
1681 (struct linux_target_ops) <breakpoint_len>: Remove.
1682 (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize field.
1683 (struct linux_target_ops) <sw_breakpoint_from_kind>: Initialize field.
1684
4cd98a19
AT
16852015-10-21 Antoine Tremblay <antoine.tremblay@ericsson.com>
1686
1687 * linux-cris-low.c (cris_get_pc): Remove void arg.
1688
774ee6d2
AR
16892015-10-16 Aleksandar Ristovski <aristovski@qnx.com>
1690
1691 * gdbserver/nto-low.c (nto_insert_point, nto_remove_point): Fix
1692 variable name.
1693
833dcd29
AR
16942015-10-16 Aleksandar Ristovski <aristovski@qnx.com>
1695
1696 * inferiors.c (thread_pid_matches_callback): New function.
1697 (find_thread_process): New function.
1698 (remove_thread): Reset current_thread.
1699 (remove_process): Assert threads have been removed first.
1700
8d689ee5
YQ
17012015-10-15 Yao Qi <yao.qi@linaro.org>
1702
1703 * linux-aarch64-low.c (aarch64_insert_point): Set len to 2
1704 if it is 3.
1705 (aarch64_remove_point): Likewise.
1706 * regcache.c (regcache_register_size): New function.
1707
1c2e1515
YQ
17082015-10-12 Yao Qi <yao.qi@linaro.org>
1709
1710 * linux-aarch64-low.c: Update all callers as emit_load_store
1711 is renamed to aarch64_emit_load_store.
1712
e1c587c3
YQ
17132015-10-12 Yao Qi <yao.qi@linaro.org>
1714
1715 * linux-aarch64-low.c: Update all callers of function renaming
1716 from emit_insn to aarch64_emit_insn.
1717
b6542f81
YQ
17182015-10-12 Yao Qi <yao.qi@linaro.org>
1719
1720 * linux-aarch64-low.c (enum aarch64_opcodes): Move to
1721 arch/aarch64-insn.h.
1722 (struct aarch64_memory_operand): Likewise.
1723 (ENCODE): Likewise.
1724 (emit_insn): Move to arch/aarch64-insn.c.
1725 (emit_b, emit_bcond, emit_cb, emit_tb): Remove.
1726 (emit_load_store): Move to arch/aarch64-insn.c.
1727 (emit_ldr, emit_ldrb, emit_ldrsw, emit_nop): Remove.
1728 (can_encode_int32): Remove.
1729
246994ce
YQ
17302015-10-12 Yao Qi <yao.qi@linaro.org>
1731
1732 * linux-aarch64-low.c (extract_signed_bitfield): Remove.
1733 (aarch64_decode_ldr_literal): Move to gdb/arch/aarch64-insn.c.
1734 (aarch64_relocate_instruction): Likewise.
1735 (struct aarch64_insn_data): Move to gdb/arch/aarch64-insn.h.
1736 (struct aarch64_insn_visitor): Likewise.
1737
0badd99f
YQ
17382015-10-12 Yao Qi <yao.qi@linaro.org>
1739
1740 * linux-aarch64-low.c (struct aarch64_insn_data): New.
1741 (struct aarch64_insn_visitor): New.
1742 (struct aarch64_insn_relocation_data): New.
1743 (aarch64_ftrace_insn_reloc_b): New function.
1744 (aarch64_ftrace_insn_reloc_b_cond): Likewise.
1745 (aarch64_ftrace_insn_reloc_cb): Likewise.
1746 (aarch64_ftrace_insn_reloc_tb): Likewise.
1747 (aarch64_ftrace_insn_reloc_adr): Likewise.
1748 (aarch64_ftrace_insn_reloc_ldr_literal): Likewise.
1749 (aarch64_ftrace_insn_reloc_others): Likewise.
1750 (visitor): New.
1751 (aarch64_relocate_instruction): Use visitor.
1752
dfaffe9d
YQ
17532015-10-12 Yao Qi <yao.qi@linaro.org>
1754
1755 * linux-aarch64-low.c (aarch64_relocate_instruction): Return
1756 int. Add argument buf.
1757 (aarch64_install_fast_tracepoint_jump_pad): Pass buf to
1758 aarch64_relocate_instruction.
1759
70b439f0
YQ
17602015-10-12 Yao Qi <yao.qi@linaro.org>
1761
1762 * linux-aarch64-low.c (aarch64_relocate_instruction): Add
1763 argument insn. Remove local variable insn. Don't call
1764 target_read_uint32.
1765 (aarch64_install_fast_tracepoint_jump_pad): Call
1766 target_read_uint32.
1767
7781c06f
YQ
17682015-09-30 Yao Qi <yao.qi@linaro.org>
1769
1770 * linux-aarch64-low.c (emit_movk): Shorten a long line.
1771 (emit_load_store_pair): Likewise.
1772
9a3c8263
SM
17732015-09-25 Simon Marchi <simon.marchi@ericsson.com>
1774
1775 * dll.c (match_dll): Add cast(s).
1776 (unloaded_dll): Likewise.
1777 * linux-low.c (second_thread_of_pid_p): Likewise.
1778 (delete_lwp_callback): Likewise.
1779 (count_events_callback): Likewise.
1780 (select_event_lwp_callback): Likewise.
1781 (linux_set_resume_request): Likewise.
1782 * server.c (accumulate_file_name_length): Likewise.
1783 (emit_dll_description): Likewise.
1784 (handle_qxfer_threads_worker): Likewise.
1785 (visit_actioned_threads): Likewise.
1786 * thread-db.c (any_thread_of): Likewise.
1787 * tracepoint.c (same_process_p): Likewise.
1788 (match_blocktype): Likewise.
1789 (build_traceframe_info_xml): Likewise.
1790
224c3ddb
SM
17912015-09-25 Simon Marchi <simon.marchi@ericsson.com>
1792
1793 * ax.c (gdb_parse_agent_expr): Add cast to allocation result
1794 assignment.
1795 (gdb_unparse_agent_expr): Likewise.
1796 * hostio.c (require_data): Likewise.
1797 (handle_pread): Likewise.
1798 * linux-low.c (disable_regset): Likewise.
1799 (fetch_register): Likewise.
1800 (store_register): Likewise.
1801 (get_dynamic): Likewise.
1802 (linux_qxfer_libraries_svr4): Likewise.
1803 * mem-break.c (delete_fast_tracepoint_jump): Likewise.
1804 (set_fast_tracepoint_jump): Likewise.
1805 (uninsert_fast_tracepoint_jumps_at): Likewise.
1806 (reinsert_fast_tracepoint_jumps_at): Likewise.
1807 (validate_inserted_breakpoint): Likewise.
1808 (clone_agent_expr): Likewise.
1809 * regcache.c (init_register_cache): Likewise.
1810 * remote-utils.c (putpkt_binary_1): Likewise.
1811 (decode_M_packet): Likewise.
1812 (decode_X_packet): Likewise.
1813 (look_up_one_symbol): Likewise.
1814 (relocate_instruction): Likewise.
1815 (monitor_output): Likewise.
1816 * server.c (handle_search_memory): Likewise.
1817 (handle_qxfer_exec_file): Likewise.
1818 (handle_qxfer_libraries): Likewise.
1819 (handle_qxfer): Likewise.
1820 (handle_query): Likewise.
1821 (handle_v_cont): Likewise.
1822 (handle_v_run): Likewise.
1823 (captured_main): Likewise.
1824 * target.c (write_inferior_memory): Likewise.
1825 * thread-db.c (try_thread_db_load_from_dir): Likewise.
1826 * tracepoint.c (init_trace_buffer): Likewise.
1827 (add_tracepoint_action): Likewise.
1828 (add_traceframe): Likewise.
1829 (add_traceframe_block): Likewise.
1830 (cmd_qtdpsrc): Likewise.
1831 (cmd_qtdv): Likewise.
1832 (cmd_qtstatus): Likewise.
1833 (response_source): Likewise.
1834 (response_tsv): Likewise.
1835 (cmd_qtnotes): Likewise.
1836 (gdb_collect): Likewise.
1837 (initialize_tracepoint): Likewise.
1838
afbe19f8
PL
18392015-09-21 Pierre Langlois <pierre.langlois@arm.com>
1840
1841 * linux-aarch64-low-.c: Include ax.h and tracepoint.h.
1842 (enum aarch64_opcodes) <RET>, <SUBS>, <AND>, <ORR>, <ORN>,
1843 <EOR>, <LSLV>, <LSRV>, <ASRV>, <SBFM>, <UBFM>, <CSINC>, <MUL>,
1844 <NOP>: New.
1845 (enum aarch64_condition_codes): New enum.
1846 (w0): New static global.
1847 (fp): Likewise.
1848 (lr): Likewise.
1849 (struct aarch64_memory_operand) <type>: New
1850 MEMORY_OPERAND_POSTINDEX type.
1851 (postindex_memory_operand): New helper function.
1852 (emit_ret): New function.
1853 (emit_load_store_pair): New function, factored out of emit_stp
1854 with support for MEMORY_OPERAND_POSTINDEX.
1855 (emit_stp): Rewrite using emit_load_store_pair.
1856 (emit_ldp): New function.
1857 (emit_load_store): Likewise.
1858 (emit_ldr): Mention post-index instruction in comment.
1859 (emit_ldrh): New function.
1860 (emit_ldrb): New function.
1861 (emit_ldrsw): Mention post-index instruction in comment.
1862 (emit_str): Likewise.
1863 (emit_subs): New function.
1864 (emit_cmp): Likewise.
1865 (emit_and): Likewise.
1866 (emit_orr): Likewise.
1867 (emit_orn): Likewise.
1868 (emit_eor): Likewise.
1869 (emit_mvn): Likewise.
1870 (emit_lslv): Likewise.
1871 (emit_lsrv): Likewise.
1872 (emit_asrv): Likewise.
1873 (emit_mul): Likewise.
1874 (emit_sbfm): Likewise.
1875 (emit_sbfx): Likewise.
1876 (emit_ubfm): Likewise.
1877 (emit_ubfx): Likewise.
1878 (emit_csinc): Likewise.
1879 (emit_cset): Likewise.
1880 (emit_nop): Likewise.
1881 (emit_ops_insns): New helper function.
1882 (emit_pop): Likewise.
1883 (emit_push): Likewise.
1884 (aarch64_emit_prologue): New function.
1885 (aarch64_emit_epilogue): Likewise.
1886 (aarch64_emit_add): Likewise.
1887 (aarch64_emit_sub): Likewise.
1888 (aarch64_emit_mul): Likewise.
1889 (aarch64_emit_lsh): Likewise.
1890 (aarch64_emit_rsh_signed): Likewise.
1891 (aarch64_emit_rsh_unsigned): Likewise.
1892 (aarch64_emit_ext): Likewise.
1893 (aarch64_emit_log_not): Likewise.
1894 (aarch64_emit_bit_and): Likewise.
1895 (aarch64_emit_bit_or): Likewise.
1896 (aarch64_emit_bit_xor): Likewise.
1897 (aarch64_emit_bit_not): Likewise.
1898 (aarch64_emit_equal): Likewise.
1899 (aarch64_emit_less_signed): Likewise.
1900 (aarch64_emit_less_unsigned): Likewise.
1901 (aarch64_emit_ref): Likewise.
1902 (aarch64_emit_if_goto): Likewise.
1903 (aarch64_emit_goto): Likewise.
1904 (aarch64_write_goto_address): Likewise.
1905 (aarch64_emit_const): Likewise.
1906 (aarch64_emit_call): Likewise.
1907 (aarch64_emit_reg): Likewise.
1908 (aarch64_emit_pop): Likewise.
1909 (aarch64_emit_stack_flush): Likewise.
1910 (aarch64_emit_zero_ext): Likewise.
1911 (aarch64_emit_swap): Likewise.
1912 (aarch64_emit_stack_adjust): Likewise.
1913 (aarch64_emit_int_call_1): Likewise.
1914 (aarch64_emit_void_call_2): Likewise.
1915 (aarch64_emit_eq_goto): Likewise.
1916 (aarch64_emit_ne_goto): Likewise.
1917 (aarch64_emit_lt_goto): Likewise.
1918 (aarch64_emit_le_goto): Likewise.
1919 (aarch64_emit_gt_goto): Likewise.
1920 (aarch64_emit_ge_got): Likewise.
1921 (aarch64_emit_ops_impl): New static global variable.
1922 (aarch64_emit_ops): New target function, return
1923 &aarch64_emit_ops_impl.
1924 (struct linux_target_ops): Install it.
1925
bb903df0
PL
19262015-09-21 Pierre Langlois <pierre.langlois@arm.com>
1927
1928 * Makefile.in (linux-aarch64-ipa.o, aarch64-ipa.o): New rules.
1929 * configure.srv (aarch64*-*-linux*): Add linux-aarch64-ipa.o and
1930 aarch64-ipa.o.
1931 * linux-aarch64-ipa.c: New file.
1932 * linux-aarch64-low.c: Include arch/aarch64-insn.h, inttypes.h
1933 and endian.h.
1934 (aarch64_get_thread_area): New target method.
1935 (extract_signed_bitfield): New helper function.
1936 (aarch64_decode_ldr_literal): New function.
1937 (enum aarch64_opcodes): New enum.
1938 (struct aarch64_register): New struct.
1939 (struct aarch64_operand): New struct.
1940 (x0): New static global.
1941 (x1): Likewise.
1942 (x2): Likewise.
1943 (x3): Likewise.
1944 (x4): Likewise.
1945 (w2): Likewise.
1946 (ip0): Likewise.
1947 (sp): Likewise.
1948 (xzr): Likewise.
1949 (aarch64_register): New helper function.
1950 (register_operand): Likewise.
1951 (immediate_operand): Likewise.
1952 (struct aarch64_memory_operand): New struct.
1953 (offset_memory_operand): New helper function.
1954 (preindex_memory_operand): Likewise.
1955 (enum aarch64_system_control_registers): New enum.
1956 (ENCODE): New macro.
1957 (emit_insn): New helper function.
1958 (emit_b): New function.
1959 (emit_bcond): Likewise.
1960 (emit_cb): Likewise.
1961 (emit_tb): Likewise.
1962 (emit_blr): Likewise.
1963 (emit_stp): Likewise.
1964 (emit_ldp_q_offset): Likewise.
1965 (emit_stp_q_offset): Likewise.
1966 (emit_load_store): Likewise.
1967 (emit_ldr): Likewise.
1968 (emit_ldrsw): Likewise.
1969 (emit_str): Likewise.
1970 (emit_ldaxr): Likewise.
1971 (emit_stxr): Likewise.
1972 (emit_stlr): Likewise.
1973 (emit_data_processing_reg): Likewise.
1974 (emit_data_processing): Likewise.
1975 (emit_add): Likewise.
1976 (emit_sub): Likewise.
1977 (emit_mov): Likewise.
1978 (emit_movk): Likewise.
1979 (emit_mov_addr): Likewise.
1980 (emit_mrs): Likewise.
1981 (emit_msr): Likewise.
1982 (emit_sevl): Likewise.
1983 (emit_wfe): Likewise.
1984 (append_insns): Likewise.
1985 (can_encode_int32_in): New helper function.
1986 (aarch64_relocate_instruction): New function.
1987 (aarch64_install_fast_tracepoint_jump_pad): Likewise.
1988 (aarch64_get_min_fast_tracepoint_insn_len): Likewise.
1989 (struct linux_target_ops): Install aarch64_get_thread_area,
1990 aarch64_install_fast_tracepoint_jump_pad and
1991 aarch64_get_min_fast_tracepoint_insn_len.
1992
787749ea
PL
19932015-09-21 Pierre Langlois <pierre.langlois@arm.com>
1994
1995 * Makefile.in (aarch64-insn.o): New rule.
1996 * configure.srv (aarch64*-*-linux*): Add aarch64-insn.o.
1997
9812b2e6
YQ
19982015-09-21 Yao Qi <yao.qi@linaro.org>
1999
2000 * ax.c [!IN_PROCESS_AGENT] (gdb_agent_op_sizes): Define it.
2001
18fe412b
YQ
20022015-09-21 Yao Qi <yao.qi@linaro.org>
2003
2004 * tracepoint.c (max_jump_pad_size): Remove.
2005
a0cc84cd
YQ
20062015-09-18 Yao Qi <yao.qi@linaro.org>
2007
2008 * linux-aarch64-low.c: Don't include sys/uio.h.
2009 (ps_get_thread_area): Call aarch64_ps_get_thread_area.
2010
d78908cf
WW
20112015-09-16 Wei-cheng Wang <cole945@gmail.com>
2012
2013 * tracepoint.c (eval_result_type): Change prototype.
2014 (condition_true_at_tracepoint): Fix argument to compiled_cond.
2015
d57e0d50
PA
20162015-09-15 Pedro Alves <palves@redhat.com>
2017
2018 * remote-utils.c (prepare_resume_reply) <TARGET_WAITKIND_EXECD>:
2019 Check whether to report exec events instead of checking whether
2020 multiprocess is enabled.
2021
5a676acc
PA
20222015-09-15 Pedro Alves <palves@redhat.com>
2023
2024 PR remote/18965
2025 * remote-utils.c (prepare_resume_reply): Merge
2026 TARGET_WAITKIND_VFORK_DONE switch case with the
2027 TARGET_WAITKIND_FORKED case.
2028
7c5d0fad
YQ
20292015-09-15 Yao Qi <yao.qi@linaro.org>
2030
2031 * server.c (handle_query): Check string comparison using
2032 "else if" instead of "if".
2033
750ce8d1
YQ
20342015-09-15 Yao Qi <yao.qi@linaro.org>
2035
2036 * server.c (vCont_supported): New global variable.
2037 (handle_query): Set vCont_supported to 1 if "vContSupported+"
2038 matches. Append ";vContSupported+" to own_buf.
2039 (handle_v_requests): Append ";s;S" to own_buf if target supports
2040 hardware single step or vCont_supported is false.
2041 (capture_main): Set vCont_supported to zero.
2042
70b90b91
YQ
20432015-09-15 Yao Qi <yao.qi@linaro.org>
2044
2045 * linux-low.c (linux_supports_conditional_breakpoints): Rename
2046 it to ...
2047 (linux_supports_hardware_single_step): ... New function.
2048 (linux_target_ops): Update.
2049 * lynx-low.c (lynx_target_ops): Set field
2050 supports_hardware_single_step to target_can_do_hardware_single_step.
2051 * nto-low.c (nto_target_ops): Likewise.
2052 * spu-low.c (spu_target_ops): Likewise.
2053 * win32-low.c (win32_target_ops): Likewise.
2054 * target.c (target_can_do_hardware_single_step): New function.
2055 * target.h (struct target_ops) <supports_conditional_breakpoints>:
2056 Remove. <supports_hardware_single_step>: New field.
2057 (target_supports_conditional_breakpoints): Remove.
2058 (target_supports_hardware_single_step): New macro.
2059 (target_can_do_hardware_single_step): Declare.
2060 * server.c (handle_query): Use target_supports_hardware_single_step
2061 instead of target_supports_conditional_breakpoints.
2062
ade90bde
YQ
20632015-09-15 Yao Qi <yao.qi@linaro.org>
2064
2065 * linux-aarch64-low.c (aarch64_linux_siginfo_fixup): New
2066 function.
2067 (struct linux_target_ops the_low_target): Install
2068 aarch64_linux_siginfo_fixup.
2069
94585166
DB
20702015-09-11 Don Breazeal <donb@codesourcery.com>
2071 Luis Machado <lgustavo@codesourcery.com>
2072
2073 * linux-low.c (linux_mourn): Static declaration.
2074 (linux_arch_setup): Move in front of
2075 handle_extended_wait.
2076 (linux_arch_setup_thread): New function.
2077 (handle_extended_wait): Handle exec events. Call
2078 linux_arch_setup_thread. Make event_lwp argument a
2079 pointer-to-a-pointer.
2080 (check_zombie_leaders): Do not check stopped threads.
2081 (linux_low_ptrace_options): Add PTRACE_O_TRACEEXEC.
2082 (linux_low_filter_event): Add lwp and thread for exec'ing
2083 non-leader thread if leader thread has been deleted.
2084 Refactor code into linux_arch_setup_thread and call it.
2085 Pass child lwp pointer by reference to handle_extended_wait.
2086 (linux_wait_for_event_filtered): Update comment.
2087 (linux_wait_1): Prevent clobbering exec event status.
2088 (linux_supports_exec_events): New function.
2089 (linux_target_ops) <supports_exec_events>: Initialize new member.
2090 * lynx-low.c (lynx_target_ops) <supports_exec_events>: Initialize
2091 new member.
2092 * remote-utils.c (prepare_resume_reply): New stop reason 'exec'.
2093 * server.c (report_exec_events): New global variable.
2094 (handle_query): Handle qSupported query for exec-events feature.
2095 (captured_main): Initialize report_exec_events.
2096 * server.h (report_exec_events): Declare new global variable.
2097 * target.h (struct target_ops) <supports_exec_events>: New
2098 member.
2099 (target_supports_exec_events): New macro.
2100 * win32-low.c (win32_target_ops) <supports_exec_events>:
2101 Initialize new member.
2102
0568462b
MM
21032015-09-09 Markus Metzger <markus.t.metzger@intel.com>
2104
2105 * linux-low.c (linux_low_enable_btrace): Remove.
2106 (linux_target_ops): Replace linux_low_enable_btrace with
2107 linux_enable_btrace.
2108
39edd165
YQ
21092015-09-03 Yao Qi <yao.qi@linaro.org>
2110
2111 * linux-aarch64-low.c (aarch64_insert_point): Call
2112 aarch64_handle_watchpoint if aarch64_linux_region_ok_for_watchpoint
2113 returns true.
2114
1db33b5a
UW
21152015-08-27 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2116
2117 * linux-low.c (check_stopped_by_breakpoint): Use
2118 GDB_ARCH_IS_TRAP_BRKPT instead of GDB_ARCH_TRAP_BRKPT.
2119
ab290430
PA
21202015-08-27 Pedro Alves <palves@redhat.com>
2121
2122 * proc-service.c (ps_pdwrite): Return PS_ERR/PS_OK explicily.
2123
8d749320
SM
21242015-08-26 Simon Marchi <simon.marchi@ericsson.com>
2125
6711b7f8
SM
2126 * ax.c (gdb_parse_agent_expr): Replace xmalloc-family function with
2127 the XNEW-family equivalent.
8d749320
SM
2128 (compile_bytecodes): Likewise.
2129 * dll.c (loaded_dll): Likewise.
2130 * event-loop.c (append_callback_event): Likewise.
2131 (create_file_handler): Likewise.
2132 (create_file_event): Likewise.
2133 * hostio.c (handle_open): Likewise.
2134 * inferiors.c (add_thread): Likewise.
2135 (add_process): Likewise.
2136 * linux-aarch64-low.c (aarch64_linux_new_process): Likewise.
2137 * linux-arm-low.c (arm_new_process): Likewise.
2138 (arm_new_thread): Likewise.
2139 * linux-low.c (add_to_pid_list): Likewise.
2140 (linux_add_process): Likewise.
2141 (handle_extended_wait): Likewise.
2142 (add_lwp): Likewise.
2143 (enqueue_one_deferred_signal): Likewise.
2144 (enqueue_pending_signal): Likewise.
2145 (linux_resume_one_lwp_throw): Likewise.
2146 (linux_resume_one_thread): Likewise.
2147 (linux_read_memory): Likewise.
2148 (linux_write_memory): Likewise.
2149 * linux-mips-low.c (mips_linux_new_process): Likewise.
2150 (mips_linux_new_thread): Likewise.
2151 (mips_add_watchpoint): Likewise.
2152 * linux-x86-low.c (initialize_low_arch): Likewise.
2153 * lynx-low.c (lynx_add_process): Likewise.
2154 * mem-break.c (set_raw_breakpoint_at): Likewise.
2155 (set_breakpoint): Likewise.
2156 (add_condition_to_breakpoint): Likewise.
2157 (add_commands_to_breakpoint): Likewise.
2158 (clone_agent_expr): Likewise.
2159 (clone_one_breakpoint): Likewise.
2160 * regcache.c (new_register_cache): Likewise.
2161 * remote-utils.c (look_up_one_symbol): Likewise.
2162 * server.c (queue_stop_reply): Likewise.
2163 (start_inferior): Likewise.
2164 (queue_stop_reply_callback): Likewise.
2165 (handle_target_event): Likewise.
2166 * spu-low.c (fetch_ppc_memory): Likewise.
2167 (store_ppc_memory): Likewise.
2168 * target.c (set_target_ops): Likewise.
2169 * thread-db.c (thread_db_load_search): Likewise.
2170 (try_thread_db_load_1): Likewise.
2171 * tracepoint.c (add_tracepoint): Likewise.
2172 (add_tracepoint_action): Likewise.
2173 (create_trace_state_variable): Likewise.
2174 (cmd_qtdpsrc): Likewise.
2175 (cmd_qtro): Likewise.
2176 (add_while_stepping_state): Likewise.
2177 * win32-low.c (child_add_thread): Likewise.
2178 (get_image_name): Likewise.
2179
ed8b7b42
YQ
21802015-08-25 Yao Qi <yao.qi@linaro.org>
2181
2182 * linux-aarch64-low.c (aarch64_linux_new_thread): Remove.
2183
db3cb7cb
YQ
21842015-08-25 Yao Qi <yao.qi@linaro.org>
2185
2186 * Makefile.in (aarch64-linux.o): New rule.
2187 * configure.srv (aarch64*-*-linux*): Append aarch64-linux.o to
2188 srv_tgtobj.
2189 * linux-aarch64-low.c: Include nat/aarch64-linux.h.
2190 (aarch64_init_debug_reg_state): Make it extern.
2191 (aarch64_linux_prepare_to_resume): Remove.
2192
f6011a1c
YQ
21932015-08-25 Yao Qi <yao.qi@linaro.org>
2194
2195 * linux-aarch64-low.c (aarch64_linux_prepare_to_resume): Use
2196 lwp_arch_private_info and ptid_of_lwp.
2197
88e2cf7e
YQ
21982015-08-25 Yao Qi <yao.qi@linaro.org>
2199
2200 * linux-aarch64-low.c (aarch64_get_debug_reg_state): Add argument pid.
2201 Find proc_info by find_process_pid. All callers updated.
2202
5e35436e
YQ
22032015-08-25 Yao Qi <yao.qi@linaro.org>
2204
2205 * linux-aarch64-low.c (struct arch64_dr_update_callback_param):
2206 Remove.
2207 (debug_reg_change_callback): Remove.
2208 (aarch64_notify_debug_reg_change): Remove.
2209
4a8a7965
YQ
22102015-08-25 Yao Qi <yao.qi@linaro.org>
2211
2212 * linux-aarch64-low.c (aarch64_notify_debug_reg_change):
2213 Call current_lwp_ptid.
2214
32a271ee
YQ
22152015-08-25 Yao Qi <yao.qi@linaro.org>
2216
2217 * linux-aarch64-low.c (debug_reg_change_callback): Use
2218 debug_printf.
2219
0d51c8d7
YQ
22202015-08-25 Yao Qi <yao.qi@linaro.org>
2221
2222 * linux-aarch64-low.c (debug_reg_change_callback): Use phex.
2223
31a43dd5
YQ
22242015-08-25 Yao Qi <yao.qi@linaro.org>
2225
2226 * linux-aarch64-low.c (debug_reg_change_callback): Remove comments.
2227
8ee52567
YQ
22282015-08-25 Yao Qi <yao.qi@linaro.org>
2229
2230 * linux-aarch64-low.c (debug_reg_change_callback): Re-indent
2231 the code.
2232
ff3f0f45
YQ
22332015-08-25 Yao Qi <yao.qi@linaro.org>
2234
2235 * linux-aarch64-low.c (aarch64_dr_update_callback_param) <pid>:
2236 Remove.
2237 (debug_reg_change_callback): Remove argument entry and add argument
2238 lwp. Remove local variable thread. Don't print thread id in the
2239 debugging output. Don't check whether pid of thread equals to pid.
2240 (aarch64_notify_debug_reg_change): Don't set param.pid. Call
2241 iterate_over_lwps instead find_inferior.
2242
3d40fbb5
PA
22432015-08-24 Pedro Alves <palves@redhat.com>
2244
2245 * inferiors.c (get_first_process): New function.
2246 * inferiors.h (get_first_process): New declaration.
2247 * remote-utils.c (read_ptid): Default to the first process in the
2248 list, instead of to the current thread's process.
2249
438e1e42
PA
22502015-08-24 Pedro Alves <palves@redhat.com>
2251
2252 * debug.c: Include gdb_sys_time.h instead of sys/time.h.
2253 * event-loop.c: Likewise.
2254 * remote-utils.c: Likewise.
2255 * tracepoint.c: Likewise.
2256
a8c6d4fc
PA
22572015-08-24 Pedro Alves <palves@redhat.com>
2258
2259 * spu-low.c (spu_request_interrupt): Use lwpid_of instead of
2260 ptid_get_lwp.
2261
99b0bb12
PA
22622015-08-21 Pedro Alves <palves@redhat.com>
2263
2264 * ax.c (gdb_eval_agent_expr): Return expr_eval_unhandled_opcode
2265 instead of literal 1.
2266
f8904751
PA
22672015-08-21 Pedro Alves <palves@redhat.com>
2268
2269 * tdesc.c (default_description): Explicitly zero-initialize.
2270
465a859e
PA
22712015-08-21 Pedro Alves <palves@redhat.com>
2272
2273 PR gdb/18749
2274 * inferiors.c (remove_thread): Discard any pending stop reply for
2275 this thread.
2276 * server.c (remove_all_on_match_pid): Rename to ...
2277 (remove_all_on_match_ptid): ... this. Work with a filter ptid
2278 instead of a pid.
2279 (discard_queued_stop_replies): Change parameter to a ptid. Now
2280 extern.
2281 (handle_v_kill, kill_inferior_callback, captured_main)
2282 (process_serial_event): Adjust.
2283 * server.h (discard_queued_stop_replies): Declare.
2284
f0db101d
PA
22852015-08-21 Pedro Alves <palves@redhat.com>
2286
2287 * linux-low.c (wait_for_sigstop): Always switch to no thread
2288 selected if the previously current thread dies.
2289 * lynx-low.c (lynx_request_interrupt): Use the first thread's
2290 process instead of the current thread's.
2291 * remote-utils.c (input_interrupt): Don't check if there's no
2292 current thread.
2293 * server.c (gdb_read_memory, gdb_write_memory): If setting the
2294 current thread to the general thread fails, error out.
2295 (handle_qxfer_auxv, handle_qxfer_libraries)
2296 (handle_qxfer_libraries_svr4, handle_qxfer_siginfo)
2297 (handle_qxfer_spu, handle_qxfer_statictrace, handle_qxfer_fdpic)
2298 (handle_query): Check if there's a thread selected instead of
2299 checking whether there's any thread in the thread list.
2300 (handle_qxfer_threads, handle_qxfer_btrace)
2301 (handle_qxfer_btrace_conf): Don't error out early if there's no
2302 thread in the thread list.
2303 (handle_v_cont, myresume): Don't set the current thread to the
2304 continue thread.
2305 (process_serial_event) <Hg handling>: Also set thread_id if the
2306 previous general thread is still alive.
2307 (process_serial_event) <g/G handling>: If setting the current
2308 thread to the general thread fails, error out.
2309 * spu-low.c (spu_resume, spu_request_interrupt): Use the first
2310 thread's lwp instead of the current thread's.
2311 * target.c (set_desired_thread): If the desired thread was not
2312 found, leave the current thread pointing to NULL. Return an int
2313 (boolean) indicating success.
2314 * target.h (set_desired_thread): Change return type to int.
2315
40045d91
MF
23162015-08-20 Max Filippov <jcmvbkbc@gmail.com>
2317
2318 * configure.srv (xtensa*-*-linux*): Add srv_linux_thread_db=yes.
2319 * linux-xtensa-low.c (arch/xtensa.h gdb_proc_service.h): New
2320 #includes.
2321 (ps_get_thread_area): New function.
2322
45face3b
GB
23232015-08-19 Gary Benson <gbenson@redhat.com>
2324
2325 * hostio.c (handle_pread): Do not attempt to read more data
2326 than hostio_reply_with_data can fit in a packet.
2327
16d5f642
JB
23282015-08-18 Joel Brobecker <brobecker@adacore.com>
2329
2330 * linux-aarch32-low.c (NT_ARM_VFP): Define if not already defined.
2331
a738da3a
MF
23322015-08-14 Matthew Fortune <matthew.fortune@imgtec.com>
2333
2334 * linux-low.c (get_r_debug): Handle DT_MIPS_RLD_MAP_REL.
2335
33ebda9d
PA
23362015-08-06 Pedro Alves <palves@redhat.com>
2337
2338 * tracepoint.c (expr_eval_result): Now an int.
2339
a44892be
PA
23402015-08-06 Pedro Alves <palves@redhat.com>
2341
2342 * gdbthread.h (struct regcache): Forward declare.
2343 (struct thread_info) <regcache_data>: Now a struct regcache
2344 pointer.
2345 * inferiors.c (inferior_regcache_data)
2346 (set_inferior_regcache_data): Now work with struct regcache
2347 pointers.
2348 * inferiors.h (struct regcache): Forward declare.
2349 (inferior_regcache_data, set_inferior_regcache_data): Now work
2350 with struct regcache pointers.
2351 * regcache.c (get_thread_regcache, regcache_invalidate_thread)
2352 (free_register_cache_thread): Remove struct regcache pointer
2353 casts.
2354
608a1e46
PA
23552015-08-06 Pedro Alves <palves@redhat.com>
2356
2357 * server.c (captured_main): On error, print the exception message
2358 to stderr, and if run_once is set, throw a quit.
2359
f0ce0d3a
PA
23602015-08-06 Pedro Alves <palves@redhat.com>
2361
2362 * linux-low.c (move_out_of_jump_pad_callback): Temporarily switch
2363 the current thread.
2364
bf47e248
PA
23652015-08-06 Pedro Alves <palves@redhat.com>
2366
2367 * linux-low.c (linux_write_memory): Rewrite debug output to avoid
2368 reading beyond the passed in buffer length.
2369
b6b9ffcc
PL
23702015-08-06 Pierre Langlois <pierre.langlois@arm.com>
2371
2372 * tracepoint.c (symbol_list) <required>: Remove.
2373
863d01bd
PA
23742015-08-06 Pedro Alves <palves@redhat.com>
2375
2376 * linux-low.c (handle_extended_wait): Set the fork child's suspend
2377 count if stopping and suspending threads.
2378 (check_stopped_by_breakpoint): If stopped by trace, set the LWP's
2379 stop reason to TARGET_STOPPED_BY_SINGLE_STEP.
2380 (linux_detach): Complete an ongoing step-over.
2381 (lwp_suspended_inc, lwp_suspended_decr): New functions. Use
2382 throughout.
2383 (resume_stopped_resumed_lwps): Don't resume a suspended thread.
2384 (linux_wait_1): If passing a signal to the inferior after
2385 finishing a step-over, unsuspend and re-resume all lwps. If we
2386 see a single-step event but the thread should be continuing, don't
2387 pass the trap to gdb.
2388 (stuck_in_jump_pad_callback, move_out_of_jump_pad_callback): Use
2389 internal_error instead of gdb_assert.
2390 (enqueue_pending_signal): New function.
2391 (check_ptrace_stopped_lwp_gone): Add debug output.
2392 (start_step_over): Use internal_error instead of gdb_assert.
2393 (complete_ongoing_step_over): New function.
2394 (linux_resume_one_thread): Don't resume a suspended thread.
2395 (proceed_one_lwp): If the LWP is stepping over a breakpoint, reset
2396 it stepping.
2397
00db26fa
PA
23982015-08-06 Pedro Alves <palves@redhat.com>
2399
2400 * linux-low.c (add_lwp): Set waitstatus to TARGET_WAITKIND_IGNORE.
2401 (linux_thread_alive): Use lwp_is_marked_dead.
2402 (extended_event_reported): Delete.
2403 (linux_wait_1): Check if waitstatus is TARGET_WAITKIND_IGNORE
2404 instead of extended_event_reported.
2405 (mark_lwp_dead): Don't set the 'dead' flag. Store the waitstatus
2406 as well.
2407 (lwp_is_marked_dead): New function.
2408 (lwp_running): Use lwp_is_marked_dead.
2409 * linux-low.h: Delete 'dead' field, and update 'waitstatus's
2410 comment.
2411
ad071a30
PA
24122015-08-06 Pedro Alves <palves@redhat.com>
2413
2414 * linux-low.c (linux_wait_1): Move fork event output out of the
2415 !report_to_gdb check. Pass event_child->waitstatus to
2416 target_waitstatus_to_string instead of ourstatus.
2417
524b57e6
YQ
24182015-08-04 Yao Qi <yao.qi@linaro.org>
2419
2420 * linux-aarch64-low.c (aarch64_supports_tracepoints): Return 0
2421 if current_thread is 32 bit.
2422
6085d6f6
YQ
24232015-08-04 Yao Qi <yao.qi@linaro.org>
2424
2425 * linux-aarch64-low.c (aarch64_supports_z_point_type): Return
2426 0 for Z_PACKET_SW_BP if it may be used in multi-arch debugging.
2427 * server.c (extended_protocol): Remove "static".
2428 * server.h (extended_protocol): Declare it.
2429
8a7e4587
YQ
24302015-08-04 Yao Qi <yao.qi@linaro.org>
2431
2432 * linux-aarch64-low.c (aarch64_get_pc): Get PC register on
2433 both aarch64 and aarch32.
2434 (aarch64_set_pc): Likewise.
2435
3b53ae99
YQ
24362015-08-04 Yao Qi <yao.qi@linaro.org>
2437
2438 * configure.srv (case aarch64*-*-linux*): Append arm-with-neon.o
2439 to srv_regobj and append arm-core.xml arm-vfpv3.xml and
2440 arm-with-neon.xml to srv_xmlfiles.
2441 * linux-aarch64-low.c: Include linux-aarch32-low.h.
2442 (is_64bit_tdesc): New function.
2443 (aarch64_linux_read_description): New function.
2444 (aarch64_arch_setup): Call aarch64_linux_read_description.
2445 (regs_info): Rename to regs_info_aarch64.
2446 (aarch64_regs_info): Return right regs_info.
2447 (initialize_low_arch): Call initialize_low_arch_aarch32.
2448
bd9e6534
YQ
24492015-08-04 Yao Qi <yao.qi@linaro.org>
2450
2451 * configure.srv (srv_tgtobj): Add linux-aarch32-low.o.
2452 * linux-aarch32-low.c: New file.
2453 * linux-aarch32-low.h: New file.
2454 * linux-arm-low.c (arm_fill_gregset): Move it to
2455 linux-aarch32-low.c.
2456 (arm_store_gregset): Likewise.
2457 (arm_fill_vfpregset): Call arm_fill_vfpregset_num
2458 (arm_store_vfpregset): Call arm_store_vfpregset_num.
2459 (arm_arch_setup): Check if PTRACE_GETREGSET works.
2460 (regs_info): Rename to regs_info_arm.
2461 (arm_regs_info): Return regs_info_aarch32 if
2462 have_ptrace_getregset is 1 and target description is
2463 arm_with_neon or arm_with_vfpv3.
2464 (initialize_low_arch): Don't call init_registers_arm_with_neon.
2465 Call initialize_low_arch_aarch32 instead.
2466
ded48a5e
YQ
24672015-08-04 Yao Qi <yao.qi@linaro.org>
2468
2469 * linux-x86-low.c (have_ptrace_getregset): Move it to ...
2470 * linux-low.c: ... here.
2471 * linux-low.h (have_ptrace_getregset): Declare it.
2472
96e9210f
PA
24732015-08-04 Pedro Alves <palves@redhat.com>
2474
2475 * thread-db.c (struct thread_db): Use new typedefs.
2476 (try_thread_db_load_1): Define local TDB_DLSYM macro and use it in
2477 CHK calls.
2478 (disable_thread_event_reporting): Cast result of dlsym to
2479 destination function pointer type.
2480 (thread_db_mourn): Use td_ta_delete_ftype.
2481
af60a1ef
SL
24822015-08-03 Sandra Loosemore <sandra@codesourcery.com>
2483
2484 * linux-nios2-low.c (NIOS2_BREAKPOINT): Conditionalize for
2485 arch variant.
2486 (CDX_BREAKPOINT): Define for R2.
2487 (nios2_breakpoint_at): Check for CDX_BREAKPOINT when R2.
2488 (the_low_target): Add comments.
2489
e8b41681
YQ
24902015-07-30 Yao Qi <yao.qi@linaro.org>
2491
2492 * linux-arm-low.c (arm_hwcap): Remove it.
2493 (arm_read_description): New local variable arm_hwcap. Don't
2494 set arm_hwcap to zero.
2495
89abb039
YQ
24962015-07-30 Yao Qi <yao.qi@linaro.org>
2497
2498 * linux-arm-low.c (arm_fill_wmmxregset): Don't use arm_hwcap.
2499 Use regcache->tdesc instead.
2500 (arm_store_wmmxregset): Likewise.
2501 (arm_fill_vfpregset): Likewise.
2502 (arm_store_vfpregset): Likewise.
2503
deca266c
YQ
25042015-07-30 Yao Qi <yao.qi@linaro.org>
2505
2506 * linux-arm-low.c: Include arch/arm.h.
2507 (arm_fill_gregset): Don't use arm_num_regs and arm_regmap.
2508 (arm_store_gregset): Likewise.
2509
aa58a496
SM
25102015-07-29 Simon Marchi <simon.marchi@ericsson.com>
2511
2512 * linux-mips-low.c (mips_linux_prepare_to_resume): Add NULL as
2513 ptrace's 4th parameter.
2514
50904b25
YQ
25152015-07-27 Yao Qi <yao.qi@linaro.org>
2516
2517 * configure.srv (case aarch64*-*-linux*): Don't set
2518 srv_linux_usrregs.
2519
5826e159
PA
25202015-07-24 Pedro Alves <palves@redhat.c: Likewise.om>
2521
2522 * linux-aarch64-low.c: Include nat/gdb_ptrace.h instead of
2523 sys/ptrace.h.
2524 * linux-arm-low.c: Likewise.
2525 * linux-cris-low.c: Likewise.
2526 * linux-crisv32-low.c: Likewise.
2527 * linux-low.c: Likewise.
2528 * linux-m68k-low.c: Likewise.
2529 * linux-mips-low.c: Likewise.
2530 * linux-nios2-low.c: Likewise.
2531 * linux-s390-low.c: Likewise.
2532 * linux-sparc-low.c: Likewise.
2533 * linux-tic6x-low.c: Likewise.
2534 * linux-tile-low.c: Likewise.
2535 * linux-x86-low.c: Likewise.
2536
54019719
PA
25372015-07-24 Pedro Alves <palves@redhat.com>
2538
2539 * config.in: Regenerate.
2540 * configure: Regenerate.
2541
eb7aa561
PA
25422015-07-24 Pedro Alves <palves@redhat.com>
2543
2544 * acinclude.m4: Include ../ptrace.m4.
2545 * configure.ac: Call GDB_AC_PTRACE.
2546 * config.in, configure: Regenerate.
2547
55d7b841
YQ
25482015-07-24 Yao Qi <yao.qi@linaro.org>
2549
2550 * linux-low.c (linux_create_inferior): Remove setting to
2551 proc->priv->new_inferior.
2552 (linux_attach): Likewise.
2553 (linux_low_filter_event): Likewise.
2554 * linux-low.h (struct process_info_private) <new_inferior>: Remove.
2555
c06cbd92
YQ
25562015-07-24 Yao Qi <yao.qi@linaro.org>
2557
2558 * linux-low.c (linux_arch_setup): New function.
2559 (linux_low_filter_event): If proc->tdesc is NULL and
2560 proc->attached is true, call the_low_target.arch_setup.
2561 Otherwise, keep status pending, and return.
2562 (linux_resume_one_lwp_throw): Don't call get_pc if
2563 thread->while_stepping isn't NULL. Don't call
2564 get_thread_regcache if proc->tdesc is NULL.
2565 (need_step_over_p): Return 0 if proc->tdesc is NULL.
2566 (linux_target_ops): Install arch_setup.
2567 * server.c (start_inferior): Call the_target->arch_setup.
2568 * target.h (struct target_ops) <arch_setup>: New field.
2569 (target_arch_setup): New marco.
2570 * lynx-low.c (lynx_target_ops): Update.
2571 * nto-low.c (nto_target_ops): Update.
2572 * spu-low.c (spu_target_ops): Update.
2573 * win32-low.c (win32_target_ops): Update.
2574
5ae3ebba
YQ
25752015-07-24 Yao Qi <yao.qi@linaro.org>
2576
2577 * linux-low.c (linux_add_process): Don't set
2578 proc->priv->new_inferior.
2579 (linux_create_inferior): Set proc->priv->new_inferior to 1.
2580 (linux_attach): Likewise.
2581
eb97750b
YQ
25822015-07-24 Yao Qi <yao.qi@linaro.org>
2583
2584 * server.c (start_inferior): Code refactor.
2585
51aee833
YQ
25862015-07-24 Yao Qi <yao.qi@linaro.org>
2587
2588 * server.c (process_serial_event): Set general_thread.
2589
af1b22f3
YQ
25902015-07-21 Yao Qi <yao.qi@linaro.org>
2591
2592 * linux-aarch64-low.c (aarch64_arch_setup): Remove code and call
2593 aarch64_linux_get_debug_reg_capacity.
2594
554717a3
YQ
25952015-07-17 Yao Qi <yao.qi@linaro.org>
2596
2597 * Makefile.in (aarch64-linux-hw-point.o): New rule.
2598 * configure.srv (srv_tgtobj): Append aarch64-linux-hw-point.o.
2599 * linux-aarch64-low.c: Include nat/aarch64-linux-hw-point.h.
2600 (AARCH64_HBP_MAX_NUM): Move to nat/aarch64-linux-hw-point.h.
2601 (AARCH64_HWP_MAX_NUM, AARCH64_HBP_ALIGNMENT): Likewise.
2602 (AARCH64_HWP_ALIGNMENT): Likewise.
2603 (AARCH64_HWP_MAX_LEN_PER_REG): Likewise.
2604 (AARCH64_DEBUG_NUM_SLOTS, AARCH64_DEBUG_ARCH): Likewise.
2605 (aarch64_num_bp_regs, aarch64_num_wp_regs): Likewise.
2606 (AARCH64_DEBUG_ARCH_V8, DR_MARK_ALL_CHANGED): Likewise.
2607 (DR_MARK_N_CHANGED, DR_CLEAR_CHANGED): Likewise.
2608 (DR_HAS_CHANGED, DR_N_HAS_CHANGE): Likewise.
2609 (struct aarch64_debug_reg_state): Likewise.
2610 (struct arch_lwp_info): Likewise.
2611 (aarch64_align_watchpoint): Likewise.
2612 (DR_CONTROL_ENABLED, DR_CONTROL_LENGTH): Likewise.
2613 (aarch64_watchpoint_length): Likewise.
2614 (aarch64_point_encode_ctrl_reg): Likewise
2615 (aarch64_point_is_aligned): Likewise.
2616 (aarch64_align_watchpoint): Likewise.
2617 (aarch64_linux_set_debug_regs):
2618 (aarch64_dr_state_insert_one_point): Likewise.
2619 (aarch64_dr_state_remove_one_point): Likewise.
2620 (aarch64_handle_breakpoint): Likewise.
2621 (aarch64_handle_aligned_watchpoint): Likewise.
2622 (aarch64_handle_unaligned_watchpoint): Likewise.
2623 (aarch64_handle_watchpoint): Likewise.
2624
c67ca4de
YQ
26252015-07-17 Yao Qi <yao.qi@linaro.org>
2626
2627 * linux-aarch64-low.c (aarch64_handle_breakpoint): Add argument state
2628 and don't aarch64_get_debug_reg_state. All callers update.
2629 (aarch64_handle_aligned_watchpoint): Likewise.
2630 (aarch64_handle_unaligned_watchpoint): Likewise.
2631 (aarch64_handle_watchpoint): Likewise.
2632 (aarch64_insert_point): Call aarch64_get_debug_reg_state earlier.
2633 (aarch64_remove_point): Likewise.
2634
25abf979
YQ
26352015-07-17 Yao Qi <yao.qi@linaro.org>
2636
2637 * linux-aarch64-low.c (aarch64_show_debug_reg_state): Use
2638 debug_printf.
2639 (aarch64_handle_unaligned_watchpoint): Likewise.
2640
db1ff28b
JK
26412015-07-15 Jan Kratochvil <jan.kratochvil@redhat.com>
2642
2643 Revert the previous 3 commits:
2644 Move gdb_regex* to common/
2645 Move linux_find_memory_regions_full & co.
2646 gdbserver build-id attribute generator
2647
700ca40f
JK
26482015-07-15 Aleksandar Ristovski <aristovski@qnx.com
2649 Jan Kratochvil <jan.kratochvil@redhat.com>
2650
2651 gdbserver build-id attribute generator.
2652 * linux-low.c (nat/linux-maps.h, search.h, rsp-low.h): Include.
2653 (ElfXX_Ehdr, ElfXX_Phdr, ElfXX_Nhdr): New.
2654 (ELFXX_FLD, ELFXX_SIZEOF, ELFXX_ROUNDUP, BUILD_ID_INVALID): New.
2655 (find_phdr): New.
2656 (get_dynamic): Use find_pdhr to traverse program headers.
2657 (struct mapping_entry, mapping_entry_s, free_mapping_entry_vec)
2658 (compare_mapping_entry_range, struct find_memory_region_callback_data)
2659 (read_build_id, find_memory_region_callback, lrfind_mapping_entry)
2660 (get_hex_build_id): New.
2661 (linux_qxfer_libraries_svr4): Add optional build-id attribute
2662 to reply XML document.
2663
9904185c
JK
26642015-07-15 Aleksandar Ristovski <aristovski@qnx.com
2665 Jan Kratochvil <jan.kratochvil@redhat.com>
2666
2667 * target.c: Include target/target-utils.h and fcntl.h.
2668 (target_fileio_read_stralloc_1_pread, target_fileio_read_stralloc_1)
2669 (target_fileio_read_stralloc): New functions.
2670
6e5b4429
JK
26712015-07-15 Jan Kratochvil <jan.kratochvil@redhat.com>
2672
2673 * Makefile.in (OBS): Add gdb_regex.o.
2674 (gdb_regex.o): New.
2675 * config.in: Rebuilt.
2676 * configure: Rebuilt.
2677
ddc98fbf
JK
26782015-07-15 Aleksandar Ristovski <aristovski@qnx.com
2679 Jan Kratochvil <jan.kratochvil@redhat.com>
2680
2681 Create empty nat/linux-maps.[ch] and common/target-utils.[ch].
2682 * Makefile.in (OBS): Add target-utils.o.
2683 (linux-maps.o, target-utils.o): New.
2684 * configure.srv (srv_linux_obj): Add linux-maps.o.
2685
e57bb7a0
PL
26862015-07-15 Pierre Langlois <pierre.langlois@arm.com>
2687
2688 * linux-aarch64-low.c (aarch64_supports_range_stepping): New
2689 function, return 1.
2690 (the_low_target): Install it.
2691
586b02a9
PA
26922015-07-14 Pedro Alves <palves@redhat.com>
2693
2694 * linux-low.c (kill_wait_lwp): Don't assert if waitpid fails.
2695 Instead, ignore ECHILD, and throw an error for other errnos.
2696
58c1b36c
PA
26972015-07-10 Pedro Alves <palves@redhat.com>
2698
2699 * event-loop.c (struct callback_event) <data>: Change type to
2700 gdb_client_data instance instead of gdb_client_data pointer.
2701 (append_callback_event): Adjust.
2702
421530db
PL
27032015-07-10 Pierre Langlois <pierre.langlois@arm.com>
2704
2705 * linux-aarch64-low.c: Add comments for each linux_target_ops
2706 method. Remove comments already covered in target_ops and
2707 linux_target_ops definitions.
2708 (the_low_target): Add comments for each unimplemented method.
2709
c2d65f38
YQ
27102015-07-09 Yao Qi <yao.qi@linaro.org>
2711
2712 * linux-aarch64-low.c (aarch64_regmap): Remove.
2713 (aarch64_usrregs_info): Remove.
2714 (regs_info): Set field usrregs to NULL.
2715
b20a6524
MM
27162015-07-02 Markus Metzger <markus.t.metzger@intel.com>
2717
2718 * linux-low.c: Include "rsp-low.h"
2719 (linux_low_encode_pt_config, linux_low_encode_raw): New.
2720 (linux_low_read_btrace): Support BTRACE_FORMAT_PT.
2721 (linux_low_btrace_conf): Support BTRACE_FORMAT_PT.
2722 (handle_btrace_enable_pt): New.
2723 (handle_btrace_general_set): Support "pt".
2724 (handle_btrace_conf_general_set): Support "pt:size".
2725
96c97461
PL
27262015-06-29 Pierre Langlois <pierre.langlois@arm.com>
2727
2728 * linux-aarch64-low.c (aarch64_supports_z_point_type): Enable for
2729 Z_PACKET_SW_BP.
2730
37d66942
PL
27312015-06-29 Pierre Langlois <pierre.langlois@arm.com>
2732
2733 * linux-aarch64-low.c: Remove comment about endianness.
2734 (aarch64_breakpoint): Change type to gdb_byte[]. Set to "brk #0".
2735 (aarch64_breakpoint_at): Change type of insn to gdb_byte[]. Use
2736 memcmp.
2737
dc06243f
GB
27382015-06-24 Gary Benson <gbenson@redhat.com>
2739
2740 * linux-i386-ipa.c (stdint.h): Do not include.
2741 * lynx-i386-low.c (stdint.h): Likewise.
2742 * lynx-ppc-low.c (stdint.h): Likewise.
2743 * mem-break.c (stdint.h): Likewise.
2744 * thread-db.c (stdint.h): Likewise.
2745 * tracepoint.c (stdint.h): Likewise.
2746 * win32-low.c (stdint.h): Likewise.
2747
124e13d9
SM
27482015-06-18 Simon Marchi <simon.marchi@ericsson.com>
2749
2750 * server.c (write_qxfer_response): Update call to
2751 remote_escape_output.
2752
909c2cda
JK
27532015-06-15 Aleksandar Ristovski <aristovski@qnx.com
2754 Jan Kratochvil <jan.kratochvil@redhat.com>
2755
2756 Merge multiple hex conversions.
2757 * gdbreplay.c (tohex): Rename to 'fromhex'.
2758 (logchar): Use fromhex.
2759
24c05f46
JK
27602015-06-10 Jan Kratochvil <jan.kratochvil@redhat.com>
2761
2762 * server.c (handle_qxfer_libraries): Set `version' attribute for
2763 <library-list>.
2764
14d2069a
GB
27652015-06-10 Gary Benson <gbenson@redhat.com>
2766
2767 * target.h (struct target_ops) <multifs_open>: New field.
2768 <multifs_unlink>: Likewise.
2769 <multifs_readlink>: Likewise.
2770 * linux-low.c (nat/linux-namespaces.h): New include.
2771 (linux_target_ops): Initialize the_target->multifs_open,
2772 the_target->multifs_unlink and the_target->multifs_readlink.
2773 * hostio.h (hostio_handle_new_gdb_connection): New declaration.
2774 * hostio.c (hostio_fs_pid): New static variable.
2775 (hostio_handle_new_gdb_connection): New function.
2776 (handle_setfs): Likewise.
2777 (handle_open): Use the_target->multifs_open as appropriate.
2778 (handle_unlink): Use the_target->multifs_unlink as appropriate.
2779 (handle_readlink): Use the_target->multifs_readlink as
2780 appropriate.
2781 (handle_vFile): Handle vFile:setfs packets.
2782 * server.c (handle_query): Call hostio_handle_new_gdb_connection
2783 after target_handle_new_gdb_connection.
2784
4b8b5e72
GB
27852015-06-10 Gary Benson <gbenson@redhat.com>
2786
2787 * configure.ac (AC_CHECK_FUNCS): Add setns.
2788 * config.in: Regenerate.
2789 * configure: Likewise.
2790 * Makefile.in (SFILES): Add nat/linux-namespaces.c.
2791 (linux-namespaces.o): New rule.
2792 * configure.srv (srv_linux_obj): Add linux-namespaces.o.
2793
3ac2e371
GB
27942015-06-09 Gary Benson <gbenson@redhat.com>
2795
2796 * hostio.c (handle_open): Process mode argument with
2797 fileio_to_host_mode.
2798
ca9b78ce
YQ
27992015-06-01 Yao Qi <yao.qi@linaro.org>
2800
2801 * linux-s390-low.c (PTRACE_GETREGSET, PTRACE_SETREGSET): Remove.
2802 * linux-x86-low.c: Likewise.
2803
bfacd19d
DB
28042015-05-28 Don Breazeal <donb@codesourcery.com>
2805
2806 * linux-low.c (handle_extended_wait): Initialize
2807 thread_info.last_resume_kind for new fork children.
2808
452003ef
PA
28092015-05-15 Pedro Alves <palves@redhat.com>
2810
2811 * target.h (target_handle_new_gdb_connection): Rewrite using if
2812 wrapped in do/while.
2813
1041a03c
JB
28142015-05-14 Joel Brobecker <brobecker@adacore.com>
2815
2816 * configure.ac: Add prfpregset_t BFD_HAVE_SYS_PROCFS_TYPE check.
2817 * configure, config.in: Regenerate.
2818 * gdb_proc_service.h [HAVE_PRFPREGSET_T] (prfpregset_t):
2819 Declare typedef.
2820
c269dbdb
DB
28212015-05-12 Don Breazeal <donb@codesourcery.com>
2822
2823 * linux-low.c (handle_extended_wait): Handle PTRACE_EVENT_FORK and
2824 PTRACE_EVENT_VFORK_DONE.
2825 (linux_low_ptrace_options, extended_event_reported): Add vfork
2826 events.
2827 * remote-utils.c (prepare_resume_reply): New stop reasons "vfork"
2828 and "vforkdone" for RSP 'T' Stop Reply Packet.
2829 * server.h (report_vfork_events): Declare
2830 global variable.
2831
3a8a0396
DB
28322015-05-12 Don Breazeal <donb@codesourcery.com>
2833
2834 * linux-aarch64-low.c (aarch64_linux_new_fork): New function.
2835 (the_low_target) <new_fork>: Initialize new member.
2836 * linux-arm-low.c (arm_new_fork): New function.
2837 (the_low_target) <new_fork>: Initialize new member.
2838 * linux-low.c (handle_extended_wait): Call new target function
2839 new_fork.
2840 * linux-low.h (struct linux_target_ops) <new_fork>: New member.
2841 * linux-mips-low.c (mips_add_watchpoint): New function
2842 extracted from mips_insert_point.
2843 (the_low_target) <new_fork>: Initialize new member.
2844 (mips_linux_new_fork): New function.
2845 (mips_insert_point): Call mips_add_watchpoint.
2846 * linux-x86-low.c (x86_linux_new_fork): New function.
2847 (the_low_target) <new_fork>: Initialize new member.
2848
de0d863e
DB
28492015-05-12 Don Breazeal <donb@codesourcery.com>
2850
2851 * linux-low.c (handle_extended_wait): Implement return value,
2852 rename argument 'event_child' to 'event_lwp', handle
2853 PTRACE_EVENT_FORK, call internal_error for unrecognized event.
2854 (linux_low_ptrace_options): New function.
2855 (linux_low_filter_event): Call linux_low_ptrace_options,
2856 use different argument fo linux_enable_event_reporting,
2857 use return value from handle_extended_wait.
2858 (extended_event_reported): New function.
2859 (linux_wait_1): Call extended_event_reported and set
2860 status to report fork events.
2861 (linux_write_memory): Add pid to debug message.
2862 (reset_lwp_ptrace_options_callback): New function.
2863 (linux_handle_new_gdb_connection): New function.
2864 (linux_target_ops): Initialize new structure member.
2865 * linux-low.h (struct lwp_info) <waitstatus>: New member.
2866 * lynx-low.c: Initialize new structure member.
2867 * remote-utils.c (prepare_resume_reply): Implement stop reason
2868 "fork" for "T" stop message.
2869 * server.c (handle_query): Call handle_new_gdb_connection.
2870 * server.h (report_fork_events): Declare global flag.
2871 * target.h (struct target_ops) <handle_new_gdb_connection>:
2872 New member.
2873 (target_handle_new_gdb_connection): New macro.
2874 * win32-low.c: Initialize new structure member.
2875
ddcbc397
DB
28762015-05-12 Don Breazeal <donb@codesourcery.com>
2877
2878 * mem-break.c (APPEND_TO_LIST): Define macro.
2879 (clone_agent_expr): New function.
2880 (clone_one_breakpoint): New function.
2881 (clone_all_breakpoints): New function.
2882 * mem-break.h: Declare new functions.
2883
89245bc0
DB
28842015-05-12 Don Breazeal <donb@codesourcery.com>
2885
2886 * linux-low.c (linux_supports_fork_events): New function.
2887 (linux_supports_vfork_events): New function.
2888 (linux_target_ops): Initialize new structure members.
2889 (initialize_low): Call linux_check_ptrace_features.
2890 * lynx-low.c (lynx_target_ops): Initialize new structure
2891 members.
2892 * server.c (report_fork_events, report_vfork_events):
2893 New global flags.
2894 (handle_query): Add new features to qSupported packet and
2895 response.
2896 (captured_main): Initialize new global variables.
2897 * target.h (struct target_ops) <supports_fork_events>:
2898 New member.
2899 <supports_vfork_events>: New member.
2900 (target_supports_fork_events): New macro.
2901 (target_supports_vfork_events): New macro.
2902 * win32-low.c (win32_target_ops): Initialize new structure
2903 members.
2904
835205d0
GB
29052015-05-12 Gary Benson <gbenson@redhat.com>
2906
2907 * server.c (handle_qxfer_exec_file): Use current process
2908 if annex is empty.
2909
21e94bd9
SL
29102015-05-08 Sandra Loosemore <sandra@codesourcery.com>
2911
2912 * linux-nios2-low.c: Include elf/common.h. Adjust comments.
2913 Remove HAVE_PTRACE_GETREGS conditionals.
2914 (nios2_regsets): Use PTRACE_GETREGSET and PTRACE_SETREGSET
2915 instead of PTRACE_GETREGS and PTRACE_SETREGS.
2916
45614f15
YQ
29172015-05-08 Yao Qi <yao.qi@linaro.org>
2918
2919 * linux-low.c (linux_supports_conditional_breakpoints): New
2920 function.
2921 (linux_target_ops): Install new target method.
2922 * lynx-low.c (lynx_target_ops): Install NULL hook for
2923 supports_conditional_breakpoints.
2924 * nto-low.c (nto_target_ops): Likewise.
2925 * spu-low.c (spu_target_ops): Likewise.
2926 * win32-low.c (win32_target_ops): Likewise.
2927 * server.c (handle_query): Check
2928 target_supports_conditional_breakpoints.
2929 * target.h (struct target_ops) <supports_conditional_breakpoints>:
2930 New field.
2931 (target_supports_conditional_breakpoints): New macro.
2932
80ad801e
PA
29332015-05-06 Pedro Alves <palves@redhat.com>
2934
2935 PR server/18081
2936 * server.c (start_inferior): If the process exits, mourn it.
2937
819843c7
GB
29382015-04-21 Gary Benson <gbenson@redhat.com>
2939
2940 * hostio.c (fileio_open_flags_to_host): Factored out to
2941 fileio_to_host_openflags in common/fileio.c. Single use
2942 updated.
2943
a2d5a9d7
MF
29442015-04-17 Max Filippov <jcmvbkbc@gmail.com>
2945
2946 * linux-xtensa-low.c (xtensa_fill_gregset)
2947 (xtensa_store_gregset): Check XCHAL_HAVE_LOOPS instead of
2948 XCHAL_HAVE_LOOP.
2949
deb44829
MF
29502015-04-17 Max Filippov <jcmvbkbc@gmail.com>
2951
2952 * linux-xtensa-low.c (xtensa_usrregs_info): Remove.
2953 (regs_info): Replace usrregs pointer with NULL.
2954
e57f1de3
GB
29552015-04-17 Gary Benson <gbenson@redhat.com>
2956
2957 * target.h (struct target_ops) <pid_to_exec_file>: New field.
2958 * linux-low.c (linux_target_ops): Initialize pid_to_exec_file.
2959 * server.c (handle_qxfer_exec_file): New function.
2960 (qxfer_packets): Add exec-file entry.
2961 (handle_query): Report qXfer:exec-file:read as supported packet.
2962
62828379
RN
29632015-04-14 Romain Naour <romain.naour@openwide.fr> (tiny change)
2964
2965 * linux-low.c (linux_read_offsets): Remove get_thread_lwp.
2966
b88bb450
GB
29672015-04-09 Gary Benson <gbenson@redhat.com>
2968
2969 * hostio-errno.c (errno_to_fileio_error): Remove function.
2970 Update caller to use remote_fileio_to_fio_error.
2971
c8f4bfdd
YQ
29722015-04-09 Yao Qi <yao.qi@linaro.org>
2973
2974 * linux-low.c (linux_insert_point): Call
2975 insert_memory_breakpoint if TYPE is raw_bkpt_type_sw.
2976 (linux_remove_point): Call remove_memory_breakpoint if type is
2977 raw_bkpt_type_sw.
2978 * linux-x86-low.c (x86_insert_point): Don't call
2979 insert_memory_breakpoint.
2980 (x86_remove_point): Don't call remove_memory_breakpoint.
2981
41f98f02
PA
29822015-04-01 Pedro Alves <palves@redhat.com>
2983 Cleber Rosa <crosa@redhat.com>
2984
2985 * server.c (gdbserver_usage): Reorganize and extend the usage
2986 message.
2987
2bf6fb9d
PA
29882015-03-24 Pedro Alves <palves@redhat.com>
2989
2990 * linux-low.c (check_stopped_by_breakpoint): Tweak debug log
2991 output. Also dump TRAP_TRACE.
2992 (linux_low_filter_event): In debug output, distinguish a
2993 resume_stop SIGSTOP from a delayed SIGSTOP.
2994
369f6daa
GB
29952015-03-24 Gary Benson <gbenson@redhat.com>
2996
2997 * linux-x86-low.c (x86_linux_new_thread): Moved to
2998 nat/x86-linux.c.
2999 (x86_linux_prepare_to_resume): Likewise.
3000
8e5d4070
GB
30012015-03-24 Gary Benson <gbenson@redhat.com>
3002
3003 * Makefile.in (x86-linux-dregs.o): New rule.
3004 * configure.srv: Add x86-linux-dregs.o to relevant targets.
3005 * linux-x86-low.c: Include nat/x86-linux-dregs.h.
3006 (u_debugreg_offset): Moved to nat/x86-linux-dregs.c.
3007 (x86_linux_dr_get): Likewise.
3008 (x86_linux_dr_set): Likewise.
3009 (update_debug_registers_callback): Likewise.
3010 (x86_linux_dr_set_addr): Likewise.
3011 (x86_linux_dr_get_addr): Likewise.
3012 (x86_linux_dr_set_control): Likewise.
3013 (x86_linux_dr_get_control): Likewise.
3014 (x86_linux_dr_get_status): Likewise.
3015 (x86_linux_update_debug_registers): Likewise.
3016
2b95d440
GB
30172015-03-24 Gary Benson <gbenson@redhat.com>
3018
3019 * linux-x86-low.c (x86_linux_update_debug_registers):
3020 New function, factored out from...
3021 (x86_linux_prepare_to_resume): ...this.
3022
14b0bc68
GB
30232015-03-24 Gary Benson <gbenson@redhat.com>
3024
3025 * linux-x86-low.c (x86_linux_dr_get): Update comments.
3026 (x86_linux_dr_set): Likewise.
3027 (update_debug_registers_callback): Likewise.
3028 (x86_linux_dr_set_addr): Likewise.
3029 (x86_linux_dr_get_addr): Likewise.
3030 (x86_linux_dr_set_control): Likewise.
3031 (x86_linux_dr_get_control): Likewise.
3032 (x86_linux_dr_get_status): Likewise.
3033 (x86_linux_prepare_to_resume): Likewise.
3034
5dfe6ca8
GB
30352015-03-24 Gary Benson <gbenson@redhat.com>
3036
3037 * linux-x86-low.c (x86_linux_dr_get): Add assertion.
3038 Use perror_with_name. Pass string through gettext.
3039 (x86_linux_dr_set): Likewise.
3040
d33472ad
GB
30412015-03-24 Gary Benson <gbenson@redhat.com>
3042
3043 * linux-x86-low.c (x86_dr_low_set_addr): Rename to...
3044 (x86_linux_dr_set_addr): ...this.
3045 (x86_dr_low_get_addr): Rename to...
3046 (x86_linux_dr_get_addr): ...this.
3047 (x86_dr_low_set_control): Rename to...
3048 (x86_linux_dr_set_control): ...this.
3049 (x86_dr_low_get_control): Rename to...
3050 (x86_linux_dr_get_control): ...this.
3051 (x86_dr_low_get_status): Rename to...
3052 (x86_linux_dr_get_status): ...this.
3053 (x86_dr_low): Update with new function names.
3054
4b134ca1
GB
30552015-03-24 Gary Benson <gbenson@redhat.com>
3056
3057 * Makefile.in (x86-linux.o): New rule.
3058 * configure.srv: Add x86-linux.o to relevant targets.
3059 * linux-low.c (lwp_set_arch_private_info): New function.
3060 (lwp_arch_private_info): Likewise.
3061 * linux-x86-low.c: Include nat/x86-linux.h.
3062 (arch_lwp_info): Removed structure.
3063 (update_debug_registers_callback):
3064 Use lwp_set_debug_registers_changed.
3065 (x86_linux_prepare_to_resume): Use lwp_debug_registers_changed
3066 and lwp_set_debug_registers_changed.
3067 (x86_linux_new_thread): Use lwp_set_debug_registers_changed.
3068
34c703da
GB
30692015-03-24 Gary Benson <gbenson@redhat.com>
3070
3071 * linux-low.h (linux_target_ops) <new_thread>: Changed signature.
3072 * linux-arm-low.c (arm_new_thread): Likewise.
3073 * linux-aarch64-low.c (aarch64_linux_new_thread): Likewise.
3074 * linux-mips-low.c (mips_linux_new_thread): Likewise.
3075 * linux-x86-low.c (x86_linux_new_thread): Likewise.
3076 * linux-low.c (add_lwp): Update the_low_target.new_thread call.
3077
cff068da
GB
30782015-03-24 Gary Benson <gbenson@redhat.com>
3079
3080 * linux-low.c (ptid_of_lwp): New function.
3081 (lwp_is_stopped): Likewise.
3082 (lwp_stop_reason): Likewise.
3083 * linux-x86-low.c (update_debug_registers_callback):
3084 Use lwp_is_stopped.
3085 (x86_linux_prepare_to_resume): Use ptid_of_lwp and
3086 lwp_stop_reason.
3087
b2f7c7e8
GB
30882015-03-24 Gary Benson <gbenson@redhat.com>
3089
3090 * linux-low.h (linux_stop_lwp): Remove declaration.
3091
6d4ee8c6
GB
30922015-03-24 Gary Benson <gbenson@redhat.com>
3093
3094 * linux-low.h: Include nat/linux-nat.h.
3095 * linux-low.c (iterate_over_lwps_args): New structure.
3096 (iterate_over_lwps_filter): New function.
3097 (iterate_over_lwps): Likewise.
3098 * linux-x86-low.c (update_debug_registers_callback):
3099 Update signature to what iterate_over_lwps expects.
3100 Remove PID check that iterate_over_lwps now performs.
3101 (x86_dr_low_set_addr): Use iterate_over_lwps.
3102 (x86_dr_low_set_control): Likewise.
3103
70a0bb6b
GB
31042015-03-24 Gary Benson <gbenson@redhat.com>
3105
3106 * linux-x86-low.c (x86_debug_reg_state): New function.
3107 (x86_linux_prepare_to_resume): Use the above.
3108
7b669087
GB
31092015-03-24 Gary Benson <gbenson@redhat.com>
3110
3111 * linux-low.c (current_lwp_ptid): New function.
3112 * linux-x86-low.c: Include nat/linux-nat.h.
3113 (x86_dr_low_get_addr): Use current_lwp_ptid.
3114 (x86_dr_low_get_control): Likewise.
3115 (x86_dr_low_get_status): Likewise.
3116
eef49a3d
PA
31172015-03-20 Pedro Alves <palves@redhat.com>
3118
3119 * tracepoint.c (cmd_qtstatus): Make "str" const.
3120
b2333d22
PA
31212015-03-20 Pedro Alves <palves@redhat.com>
3122
3123 * server.c (handle_general_set): Make "req_str" const.
3124
23f238d3
PA
31252015-03-19 Pedro Alves <palves@redhat.com>
3126
3127 * linux-low.c (linux_resume_one_lwp): Rename to ...
3128 (linux_resume_one_lwp_throw): ... this. Don't handle ESRCH here,
3129 instead call perror_with_name.
3130 (check_ptrace_stopped_lwp_gone): New function.
3131 (linux_resume_one_lwp): Reimplement as wrapper around
3132 linux_resume_one_lwp_throw that swallows errors if the LWP is
3133 gone.
3134
91baf43f
PA
31352015-03-19 Pedro Alves <palves@redhat.com>
3136
3137 * linux-low.c (count_events_callback, select_event_lwp_callback):
3138 No longer check whether the thread has resume_stop as last resume
3139 kind.
3140
8bf3b159
PA
31412015-03-19 Pedro Alves <palves@redhat.com>
3142
3143 * linux-low.c (count_events_callback, select_event_lwp_callback):
3144 Use the lwp's status_pending_p field, not the thread's.
3145
b90fc188
PA
31462015-03-19 Pedro Alves <palves@redhat.com>
3147
3148 * linux-low.c (select_event_lwp_callback): Update comments to
3149 no longer mention SIGTRAP.
3150
464b0089
GB
31512015-03-18 Gary Benson <gbenson@redhat.com>
3152
3153 * server.c (handle_query): Do not report vFile:fstat as supported.
3154
aa9e327f
GB
31552015-03-11 Gary Benson <gbenson@redhat.com>
3156
3157 * hostio.c (sys/types.h): New include.
3158 (sys/stat.h): Likewise.
3159 (common-remote-fileio.h): Likewise.
3160 (handle_fstat): New function.
3161 (handle_vFile): Handle vFile:fstat packets.
aa9e327f 3162
791c0056
GB
31632015-03-11 Gary Benson <gbenson@redhat.com>
3164
3165 * configure.ac (AC_CHECK_MEMBERS): Add checks for
3166 struct stat.st_blocks and struct stat.st_blksize.
3167 * configure: Regenerate.
3168 * config.in: Likewise.
3169 * Makefile.in (SFILES): Add common/common-remote-fileio.c.
3170 (OBS): Add common-remote-fileio.o.
3171 (common-remote-fileio.o): New rule.
3172
9a9df970
PA
31732015-03-09 Pedro Alves <palves@redhat.com>
3174
3175 * tracepoint.c (gdb_agent_helper_thread): Cast '&sockaddr' to
3176 'struct sockaddr' pointer in 'accept' call.
3177
9eb1356e
PA
31782015-03-09 Pedro Alves <palves@redhat.com>
3179
3180 Revert:
3181 2015-03-07 Pedro Alves <palves@redhat.com>
3182 * gdbreplay.c: No longer include <netinet/in.h>, <sys/socket.h>,
3183 or <winsock2.h> here. Instead include "gdb_socket.h".
3184 (remote_open): Use union gdb_sockaddr_u.
3185 * remote-utils.c: No longer include <netinet/in.h>, <sys/socket.h>
3186 or <winsock2.h> here. Instead include "gdb_socket.h".
3187 (handle_accept_event, remote_prepare): Use union gdb_sockaddr_u.
3188 * tracepoint.c: Include "gdb_socket.h" instead of <sys/socket.h>
3189 or <sys/un.h>.
3190 (init_named_socket, gdb_agent_helper_thread): Use union
3191 gdb_sockaddr_u.
3192
aac331e4
PA
31932015-03-07 Pedro Alves <palves@redhat.com>
3194
3195 * configure.ac (build_warnings): Move
3196 -Wdeclaration-after-statement to the C-specific set.
3197 * configure: Regenerate.
3198
366c75fc
PA
31992015-03-07 Pedro Alves <palves@redhat.com>
3200
3201 * gdbreplay.c: No longer include <netinet/in.h>, <sys/socket.h>,
3202 or <winsock2.h> here. Instead include "gdb_socket.h".
3203 (remote_open): Use union gdb_sockaddr_u.
3204 * remote-utils.c: No longer include <netinet/in.h>, <sys/socket.h>
3205 or <winsock2.h> here. Instead include "gdb_socket.h".
3206 (handle_accept_event, remote_prepare): Use union gdb_sockaddr_u.
3207 * tracepoint.c: Include "gdb_socket.h" instead of <sys/socket.h>
3208 or <sys/un.h>.
3209 (init_named_socket, gdb_agent_helper_thread): Use union
3210 gdb_sockaddr_u.
3211
492d29ea
PA
32122015-03-07 Pedro Alves <palves@redhat.com>
3213
3214 Adjust all callers of TRY_CATCH to use TRY/CATCH/END_CATCH
3215 instead.
3216
60a191ed
YQ
32172015-03-06 Yao Qi <yao.qi@linaro.org>
3218
3219 * linux-aarch64-low.c (aarch64_insert_point): Use
3220 show_debug_regs as a boolean.
3221 (aarch64_remove_point): Likewise.
3222
f5771b1d
PA
32232015-03-05 Pedro Alves <palves@redhat.com>
3224
3225 * lynx-low.c (lynx_target_ops): Install NULL hooks for
3226 stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
3227 stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint.
3228 * nto-low.c (nto_target_ops): Likewise.
3229 * spu-low.c (spu_target_ops): Likewise.
3230 * win32-low.c (win32_target_ops): Likewise.
3231
3e572f71
PA
32322015-03-04 Pedro Alves <palves@redhat.com>
3233
72f4393d 3234 * linux-low.c (check_stopped_by_breakpoint) [USE_SIGTRAP_SIGINFO]:
3e572f71
PA
3235 Decide whether a breakpoint triggered based on the SIGTRAP's
3236 siginfo.si_code.
72f4393d
L
3237 (thread_still_has_status_pending_p) [USE_SIGTRAP_SIGINFO]: Don't check whether a
3238 breakpoint is inserted if relying on SIGTRAP's siginfo.si_code.
3e572f71
PA
3239 (linux_low_filter_event): Check for breakpoints before checking
3240 watchpoints.
3241 (linux_wait_1): Don't re-increment the PC if relying on SIGTRAP's
3242 siginfo.si_code.
72f4393d
L
3243 (linux_stopped_by_sw_breakpoint)
3244 (linux_supports_stopped_by_sw_breakpoint)
3245 (linux_stopped_by_hw_breakpoint)
3246 (linux_supports_stopped_by_hw_breakpoint): New functions.
3247 (linux_target_ops): Install new target methods.
3e572f71 3248
1ec68e26
PA
32492015-03-04 Pedro Alves <palves@redhat.com>
3250
3251 * remote-utils.c (prepare_resume_reply): Report swbreak/hbreak.
3252 * server.c (swbreak_feature, hwbreak_feature): New globals.
3253 (handle_query) <qSupported>: Handle "swbreak+" and "hwbreak+".
3254 (captured_main): Clear swbreak_feature and hwbreak_feature.
3255 * server.h (swbreak_feature, hwbreak_feature): Declare.
3256 * target.h (struct target_ops) <stopped_by_sw_breakpoint,
3257 supports_stopped_by_sw_breakpoint, stopped_by_hw_breakpoint,
3258 supports_stopped_by_hw_breakpoint>: New fields.
3259 (target_supports_stopped_by_sw_breakpoint)
3260 (target_stopped_by_sw_breakpoint)
3261 (target_supports_stopped_by_hw_breakpoint)
3262 (target_stopped_by_hw_breakpoint): Declare.
3263
15c66dd6
PA
32642015-03-04 Pedro Alves <palves@redhat.com>
3265
3266 enum lwp_stop_reason -> enum target_stop_reason
3267 * linux-low.c (check_stopped_by_breakpoint): Adjust.
3268 (thread_still_has_status_pending_p, check_stopped_by_watchpoint)
3269 (linux_wait_1, stuck_in_jump_pad_callback)
3270 (move_out_of_jump_pad_callback, linux_resume_one_lwp)
3271 (linux_stopped_by_watchpoint):
3272 * linux-low.h (enum lwp_stop_reason): Delete.
3273 (struct lwp_info) <stop_reason>: Now an enum target_stop_reason.
3274 * linux-x86-low.c (x86_linux_prepare_to_resume): Adjust.
3275
98fc70d6
YQ
32762015-03-04 Yao Qi <yao.qi@linaro.org>
3277
3278 * Makefile.in (SFILES): Add linux-aarch64-low.c.
3279
dd2ac174
GB
32802015-03-03 Gary Benson <gbenson@redhat.com>
3281
3282 * hostio.c (handle_vFile): Fix prefix lengths.
3283
d68e53f4
MM
32842015-03-03 Markus Metzger <markus.t.metzger@intel.com>
3285
3286 * linux-low.c (linux_low_enable_btrace): Do not overwrite non-zero
3287 ptr_bits.
3288
bf2d68ab
AA
32892015-03-02 Andreas Arnez <arnez@linux.vnet.ibm.com>
3290
3291 * Makefile.in (s390-vx-linux64.c, s390-tevx-linux64.c)
3292 (s390x-vx-linux64.c, s390x-tevx-linux64.c): New rules.
3293 (clean): Add "rm -f" for above C files.
3294 * configure.srv (srv_regobj): Add s390-vx-linux64.o,
3295 s390-tevx-linux64.o, s390x-vx-linux64.o, and s390x-tevx-linux64.o.
3296 (srv_xmlfiles): Add s390-vx-linux64.xml, s390-tevx-linux64.xml,
3297 s390x-vx-linux64.xml, s390x-tevx-linux64.xml, and s390-vx.xml.
3298 * linux-s390-low.c (HWCAP_S390_VX): New macro.
3299 (init_registers_s390_vx_linux64, init_registers_s390_tevx_linux64)
3300 (init_registers_s390x_vx_linux64)
3301 (init_registers_s390x_tevx_linux64)
3302 (tdesc_s390_vx_linux64, tdesc_s390_tevx_linux64)
3303 (tdesc_s390x_vx_linux64, tdesc_s390x_tevx_linux64): New extern
3304 declarations.
3305 (s390_fill_vxrs_low, s390_store_vxrs_low, s390_fill_vxrs_high)
3306 (s390_store_vxrs_high): New functions.
3307 (s390_regsets): Add entries for NT_S390_VXRS_LOW and
3308 NT_S390_VXRS_HIGH.
3309 (s390_arch_setup): Add logic for selecting one of the new target
3310 descriptions. Activate the new vector regsets if applicable.
3311 (initialize_low_arch): Also invoke init_registers_s390_vx_linux64,
3312 init_registers_s390_tevx_linux64, init_registers_s390x_vx_linux64,
3313 and init_registers_s390x_tevx_linux64.
3314
c966a859
PA
33152015-03-01 Pedro Alves <palves@redhat.com>
3316
3317 * linux-i386-ipa.c (gdb_agent_get_raw_reg): Constify 'raw_regs'
3318 parameter.
3319
4180215b
PA
33202015-02-27 Pedro Alves <palves@redhat.com>
3321
3322 * linux-x86-low.c (u_debugreg_offset): New function.
3323 (x86_linux_dr_get, x86_linux_dr_set): Use it.
3324
749bab01
PA
33252015-02-27 Pedro Alves <palves@redhat.com>
3326
3327 * gdb_proc_service.h: Wrap with EXTERN_C_PUSH/EXTERN_C_POP.
3328 [!HAVE_PROC_SERVICE_H] (struct ps_prochandle): Forward declare.
3329 [!HAVE_PROC_SERVICE_H] (ps_pdread, ps_pdwrite, ps_ptread)
3330 ps_ptwrite, ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
3331 (ps_lsetfpregs, ps_getpid)
3332 (ps_get_thread_area, ps_pglobal_lookup, ps_pstop, ps_pcontinue)
3333 (ps_lstop, ps_lcontinue, ps_lgetxregsize, ps_lgetxregs)
3334 (ps_lsetxregs, ps_plog): Declare.
3335
3c14e5a3
PA
33362015-02-27 Pedro Alves <palves@redhat.com>
3337
3338 * linux-amd64-ipa.c (gdb_agent_get_raw_reg): Use
3339 IP_AGENT_EXPORT_FUNC.
3340 * linux-i386-ipa.c (gdb_agent_get_raw_reg): Use
3341 IP_AGENT_EXPORT_FUNC.
3342 * tracepoint.c (ATTR_USED, ATTR_NOINLINE, ATTR_CONSTRUCTOR)
3343 (IP_AGENT_EXPORT): Delete.
3344 (gdb_tp_heap_buffer, gdb_jump_pad_buffer, gdb_jump_pad_buffer_end)
3345 (gdb_trampoline_buffer, gdb_trampoline_buffer_end)
3346 (gdb_trampoline_buffer_error, collecting, gdb_collect)
3347 (stop_tracing, flush_trace_buffer, about_to_request_buffer_space)
3348 (trace_buffer_is_full, stopping_tracepoint, expr_eval_result)
3349 (error_tracepoint, tracepoints, tracing, trace_buffer_ctrl)
3350 (trace_buffer_ctrl_curr, trace_buffer_lo, trace_buffer_hi)
3351 (traceframe_read_count, traceframe_write_count)
3352 (traceframes_created, trace_state_variables, get_raw_reg)
3353 (get_trace_state_variable_value, set_trace_state_variable_value)
3354 (ust_loaded, helper_thread_id, cmd_buf): Use
3355 IPA_SYM_EXPORTED_NAME.
3356 (stop_tracing, flush_trace_buffer): Use IP_AGENT_EXPORT_FUNC.
3357 (tracepoints) Use IP_AGENT_EXPORT_VAR.
3358 (stopping_tracepoint, trace_buffer_is_full, expr_eval_result): Use
3359 IP_AGENT_EXPORT_VAR and wrap in EXTERN_C_PUSH/EXTERN_C_POP.
3360 (last_tracepoint): Move into !IN_PROCESS_AGENT block.
3361 (error_tracepoint): Use IP_AGENT_EXPORT_VAR and wrap in
3362 EXTERN_C_PUSH/EXTERN_C_POP.
3363 (trace_state_variables): Use IP_AGENT_EXPORT_VAR.
3364 (trace_buffer_lo, trace_buffer_hi): Use IP_AGENT_EXPORT_VAR and
3365 wrap in EXTERN_C_PUSH/EXTERN_C_POP.
3366 (trace_buffer_ctrl, trace_buffer_ctrl_curr)
3367 (traceframe_write_count, traceframe_read_count)
3368 (traceframes_created, tracing): Use IP_AGENT_EXPORT_VAR.
3369 (about_to_request_buffer_space, get_trace_state_variable_value)
3370 (set_trace_state_variable_value): Use IP_AGENT_EXPORT_FUNC.
3371 (collecting): Use IP_AGENT_EXPORT_VAR and wrap in
3372 EXTERN_C_PUSH/EXTERN_C_POP.
3373 (gdb_collect): Use IP_AGENT_EXPORT_FUNC.
3374 (ust_loaded, cmd_buf): Use IP_AGENT_EXPORT_VAR.
3375 (helper_thread_id, gdb_agent_capability): Use IP_AGENT_EXPORT_VAR
3376 and wrap in EXTERN_C_PUSH/EXTERN_C_POP.
3377 (gdb_tp_heap_buffer, gdb_jump_pad_buffer, gdb_jump_pad_buffer_end)
3378 (gdb_trampoline_buffer, gdb_trampoline_buffer_end)
3379 (gdb_trampoline_buffer_error): Use IP_AGENT_EXPORT_VAR.
3380 * tracepoint.h (ATTR_USED, ATTR_NOINLINE, EXPORTED_SYMBOL):
3381 Define.
3382 (IP_AGENT_EXPORT_FUNC, IP_AGENT_EXPORT_VAR)
3383 (IP_AGENT_EXPORT_VAR_DECL): Define.
3384 (tracing): Declare.
3385 (gdb_agent_get_raw_reg): Declare.
3386
fe978cb0
PA
33872015-02-27 Tom Tromey <tromey@redhat.com>
3388 Pedro Alves <palves@redhat.com>
3389
3390 Rename symbols whose names are reserved C++ keywords throughout.
3391
3bc3d82a
PA
33922015-02-27 Pedro Alves <palves@redhat.com>
3393
3394 * Makefile.in (COMPILER): New, get it from autoconf.
3395 (CXX): Get from autoconf instead.
3396 (COMPILE.pre): Use COMPILER.
3397 (CC-LD): Rename to ...
3398 (CC_LD): ... this. Use COMPILER.
3399 (gdbserver$(EXEEXT), gdbreplay$(EXEEXT), $(IPA_LIB)): Adjust.
3400 (CXX_FOR_TARGET): Default to g++ instead of gcc.
3401 * acinclude.m4: Include build-with-cxx.m4.
3402 * configure.ac: Call AC_PROG_CXX and GDB_AC_BUILD_WITH_CXX.
3403 Disable -Werror by default if building in C++ mode.
3404 (build_warnings): Add -Wno-sign-compare, -Wno-write-strings and
3405 -Wno-narrowing in C++ mode. Run supported-warning-flags tests with
3406 the C++ compiler. Save/restore CXXFLAGS too.
3407 * configure: Regenerate.
3408
07697489
PA
34092015-02-27 Pedro Alves <palves@redhat.com>
3410
3411 * acinclude.m4: Include libiberty.m4.
3412 * configure.ac: Call libiberty_INIT.
3413 * config.in, configure: Regenerate.
3414
9beb7c4e
PA
34152015-02-26 Pedro Alves <palves@redhat.com>
3416
3417 * linux-low.c (linux_wait_1): When incrementing the PC past a
3418 program breakpoint always use the_low_target.breakpoint_len as
3419 increment, rather than the maximum between that and
3420 the_low_target.decr_pc_after_break.
3421
8090aef2
PA
34222015-02-23 Pedro Alves <palves@redhat.com>
3423
3424 * linux-low.c (check_stopped_by_breakpoint): Don't check if the
3425 thread was doing a step-over; always adjust the PC if
3426 we stepped over a permanent breakpoint.
3427 (linux_wait_1): If we stepped over breakpoint that was on top of a
3428 permanent breakpoint, manually advance the PC past it.
3429
bc9540e8
PA
34302015-02-23 Pedro Alves <palves@redhat.com>
3431
3432 * linux-x86-low.c (REGSIZE): Define in both 32-bit and 64-bit
3433 modes.
3434 (x86_fill_gregset, x86_store_gregset): Use it when handling
3435 $orig_eax.
3436
2db9a427
PA
34372015-02-20 Pedro Alves <palves@redhat.com>
3438
3439 * thread-db.c: Include "nat/linux-procfs.h".
3440 (thread_db_init): Skip listing new threads if the kernel supports
3441 PTRACE_EVENT_CLONE and /proc/PID/task/ is accessible.
3442
afa8d396
PA
34432015-02-20 Pedro Alves <palves@redhat.com>
3444
3445 * linux-low.c (status_pending_p_callback): Use ptid_match.
3446
c9587f88
AT
34472015-02-19 Antoine Tremblay <antoine.tremblay@ericsson.com>
3448
3449 PR breakpoints/16812
3450 * linux-low.c (wstatus_maybe_breakpoint): Remove.
3451 (linux_low_filter_event): Update wstatus_maybe_breakpoint name.
3452 (linux_wait_1): Report SIGTRAP,SIGILL,SIGSEGV.
3453
b05ec7a5
AT
34542015-02-10 Antoine Tremblay <antoine.tremblay@ericsson.com>
3455
3456 PR breakpoints/15956
3457 * tracepoint.c (cmd_qtinit): Add check for current_thread.
3458
d33501a5
MM
34592015-02-09 Markus Metzger <markus.t.metzger@intel.com>
3460
3461 * linux-low.c (linux_low_btrace_conf): Print size.
3462 * server.c (handle_btrace_conf_general_set): New.
3463 (hanle_general_set): Call handle_btrace_conf_general_set.
3464 (handle_query): Report Qbtrace-conf:bts:size as supported.
3465
f4abbc16
MM
34662015-02-09 Markus Metzger <markus.t.metzger@intel.com>
3467
3468 * linux-low.c (linux_low_enable_btrace): Update parameters.
3469 (linux_low_btrace_conf): New.
3470 (linux_target_ops)<to_btrace_conf>: Initialize.
3471 * server.c (current_btrace_conf): New.
3472 (handle_btrace_enable): Rename to ...
3473 (handle_btrace_enable_bts): ... this. Pass &current_btrace_conf
3474 to target_enable_btrace. Update comment. Update users.
3475 (handle_qxfer_btrace_conf): New.
3476 (qxfer_packets): Add btrace-conf entry.
3477 (handle_query): Report qXfer:btrace-conf:read as supported packet.
3478 * target.h (target_ops)<enable_btrace>: Update parameters and comment.
3479 (target_ops)<read_btrace_conf>: New.
3480 (target_enable_btrace): Update parameters.
3481 (target_read_btrace_conf): New.
3482
043c3577
MM
34832015-02-09 Markus Metzger <markus.t.metzger@intel.com>
3484
3485 * server.c (handle_btrace_general_set): Remove call to
3486 target_supports_btrace.
3487 (supported_btrace_packets): New.
3488 (handle_query): Call supported_btrace_packets.
3489 * target.h: include btrace-common.h.
3490 (btrace_target_info): Removed.
3491 (supports_btrace, target_supports_btrace): Update parameters.
3492
734b0e4b
MM
34932015-02-09 Markus Metzger <markus.t.metzger@intel.com>
3494
3495 * Makefile.in (SFILES): Add common/btrace-common.c.
3496 (OBS): Add common/btrace-common.o.
3497 (btrace-common.o): Add build rules.
3498 * linux-low: Include btrace-common.h.
3499 (linux_low_read_btrace): Use struct btrace_data. Call
3500 btrace_data_init and btrace_data_fini.
3501
d6c146e9
PA
35022015-02-06 Pedro Alves <palves@redhat.com>
3503
3504 * thread-db.c (find_new_threads_callback): Add debug output.
3505
20ba1ce6
PA
35062015-02-04 Pedro Alves <palves@redhat.com>
3507
3508 * linux-low.c (handle_extended_wait): Don't resume LWPs here.
3509 (resume_stopped_resumed_lwps): New function.
3510 (linux_wait_for_event_filtered): Use it.
3511
8cc73a39
SDJ
35122015-01-15 Sergio Durigan Junior <sergiodj@redhat.com>
3513
3514 * Makefile.in (SFILES): Add linux-personality.c.
3515 (linux-personality.o): New rule.
3516 * configure.srv (srv_linux_obj): Add linux-personality.o to the
3517 list of objects to be built.
3518 * linux-low.c: Include nat/linux-personality.h.
3519 (linux_create_inferior): Remove code to disable address space
3520 randomization (moved to ../nat/linux-personality.c). Create
3521 cleanup to disable address space randomization.
3522
fb23d554
SDJ
35232015-01-15 Sergio Durigan Junior <sergiodj@redhat.com>
3524
3525 * Makefile.in (posix-strerror.o): New rule.
3526 (mingw-strerror.o): Likewise.
3527 * configure: Regenerated.
3528 * configure.ac: Source file ../common/common.host. Initialize new
3529 variable srv_host_obs. Add srv_host_obs to GDBSERVER_DEPFILES.
3530
cdf43629
YQ
35312015-01-14 Yao Qi <yao@codesourcery.com>
3532
3533 * Makefile.in (SFILES): Add nat/ppc-linux.c.
3534 (ppc-linux.o): New rule.
3535 * configure.srv (powerpc*-*-linux*): Add ppc-linux.o.
3536 * configure.ac: AC_CHECK_FUNCS(getauxval).
3537 * config.in: Re-generated.
3538 * configure: Re-generated.
3539 * linux-ppc-low.c (ppc_arch_setup) [__powerpc64__]: Call
3540 ppc64_64bit_inferior_p
3541
514c5338
YQ
35422015-01-14 Yao Qi <yao@codesourcery.com>
3543
3544 * linux-ppc-low.c: Include "nat/ppc-linux.h".
3545 (PPC_FEATURE_HAS_VSX): Move to nat/ppc-linux.h.
3546 (PPC_FEATURE_HAS_ALTIVEC, PPC_FEATURE_HAS_SPE): Likewise.
3547 (PT_ORIG_R3, PT_TRAP): Likewise.
3548 (PTRACE_GETVSXREGS, PTRACE_SETVSXREGS): Likewise.
3549 (PTRACE_GETVRREGS, PTRACE_SETVRREGS): Likewise.
3550 (PTRACE_GETEVRREGS, PTRACE_SETEVRREGS): Likewise.
3551
3368c1e5
JB
35522015-01-10 Joel Brobecker <brobecker@adacore.com>
3553
3554 * i387-fp.c (i387_cache_to_xsave): In look over
3555 num_avx512_zmmh_high_registers, replace use of struct i387_xsave
3556 zmmh_low_space field by use of zmmh_high_space.
3557
582511be
PA
35582015-01-09 Pedro Alves <palves@redhat.com>
3559
3560 * linux-low.c (step_over_bkpt): Move higher up in the file.
3561 (handle_extended_wait): Don't store the stop_pc here.
3562 (get_stop_pc): Adjust comments and rename to ...
3563 (check_stopped_by_breakpoint): ... this. Record whether the LWP
3564 stopped for a software breakpoint or hardware breakpoint.
3565 (thread_still_has_status_pending_p): New function.
3566 (status_pending_p_callback): Use
3567 thread_still_has_status_pending_p. If the event is no longer
3568 interesting, resume the LWP.
3569 (handle_tracepoints): Add assert.
3570 (maybe_move_out_of_jump_pad): Remove cancel_breakpoints call.
3571 (wstatus_maybe_breakpoint): New function.
3572 (cancel_breakpoint): Delete function.
3573 (check_stopped_by_watchpoint): New function, factored out from
3574 linux_low_filter_event.
3575 (lp_status_maybe_breakpoint): Delete function.
3576 (linux_low_filter_event): Remove filter_ptid argument.
3577 Leave thread group exits pending here. Store the LWP's stop PC.
3578 Always leave events pending.
3579 (linux_wait_for_event_filtered): Pull all events out of the
3580 kernel, and leave them all pending.
3581 (count_events_callback, select_event_lwp_callback): Consider all
3582 events.
3583 (cancel_breakpoints_callback, linux_cancel_breakpoints): Delete.
3584 (select_event_lwp): Only give preference to the stepping LWP in
3585 all-stop mode. Adjust comments.
3586 (ignore_event): New function.
3587 (linux_wait_1): Delete 'retry' label. Use ignore_event. Remove
3588 references to cancel_breakpoints. Adjust to renames. Also give
3589 equal priority to all LWPs that have had events in non-stop mode.
3590 If reporting a software breakpoint event, unadjust the LWP's PC.
3591 (linux_wait): If linux_wait_1 returned an ignored event, retry.
3592 (stuck_in_jump_pad_callback, move_out_of_jump_pad_callback):
3593 Adjust.
3594 (linux_resume_one_lwp): Store the LWP's PC. Adjust.
3595 (resume_status_pending_p): Use thread_still_has_status_pending_p.
3596 (linux_stopped_by_watchpoint): Adjust.
3597 (linux_target_ops): Remove reference to linux_cancel_breakpoints.
3598 * linux-low.h (enum lwp_stop_reason): New.
3599 (struct lwp_info) <stop_pc>: Adjust comment.
3600 <stopped_by_watchpoint>: Delete field.
3601 <stop_reason>: New field.
3602 * linux-x86-low.c (x86_linux_prepare_to_resume): Adjust.
3603 * mem-break.c (software_breakpoint_inserted_here)
3604 (hardware_breakpoint_inserted_here): New function.
3605 * mem-break.h (software_breakpoint_inserted_here)
3606 (hardware_breakpoint_inserted_here): Declare.
3607 * target.h (struct target_ops) <cancel_breakpoints>: Remove field.
3608 (cancel_breakpoints): Delete.
3609 * tracepoint.c (clear_installed_tracepoints, stop_tracing)
3610 (upload_fast_traceframes): Remove references to
3611 cancel_breakpoints.
3612
a33e3959
PA
36132015-01-09 Pedro Alves <palves@redhat.com>
3614
3615 * thread-db.c (find_new_threads_callback): Ignore thread if the
3616 kernel thread ID is -1.
3617
8784d563
PA
36182015-01-09 Pedro Alves <palves@redhat.com>
3619
3620 * linux-low.c (linux_attach_fail_reason_string): Move to
3621 nat/linux-ptrace.c, and rename.
3622 (linux_attach_lwp): Update comment.
3623 (attach_proc_task_lwp_callback): New function.
3624 (linux_attach): Adjust to rename and use
3625 linux_proc_attach_tgid_threads.
3626 (linux_attach_fail_reason_string): Delete declaration.
3627
76f2b779
JB
36282015-01-01 Joel Brobecker <brobecker@adacore.com>
3629
3630 * gdbreplay.c (gdbreplay_version): Update copyright year to 2015.
3631 * server.c (gdbserver_version): Likewise.
3632
fafcc06a
SDJ
36332014-12-29 Sergio Durigan Junior <sergiodj@redhat.com>
3634
3635 * remote-utils.c: Include ctype.h.
3636 (input_interrupt): Explicitly handle the case when the char
3637 received is the NUL byte. Improve the printing of non-ASCII
3638 characters.
3639
beed38b8
JB
36402014-12-16 Joel Brobecker <brobecker@adacore.com>
3641
3642 * linux-low.c (linux_low_filter_event): Update call to
3643 linux_enable_event_reporting following the addition of
3644 a new parameter to that function.
3645
bf330350
CU
36462014-12-16 Catalin Udma <catalin.udma@freescale.com>
3647
3648 PR server/17457
3649 * linux-aarch64-low.c (AARCH64_FPSR_REGNO): New define.
3650 (AARCH64_FPCR_REGNO): Likewise.
3651 (AARCH64_NUM_REGS): Update to include fpsr/fpcr registers.
3652 (aarch64_fill_fpregset): Add missing fpsr/fpcr registers.
3653 (aarch64_store_fpregset): Likewise.
3654
5227d625
JB
36552014-12-15 Joel Brobecker <brobecker@adacore.com>
3656
3657 * lynx-low.c (lynx_resume): Use PTRACE_SINGLESTEP_ONE if N == 1.
3658 Remove FIXME comment about assumption about N.
3659
f93b65a0
JB
36602014-12-13 Joel Brobecker <brobecker@adacore.com>
3661
3662 * configure.ac: If large-file support is disabled in GDBserver,
3663 pass --disable-largefile to ACX_CONFIGURE_DIR call for "gnulib".
3664 * configure: Regenerate.
3665
e5a9158d
AA
36662014-12-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
3667
3668 * linux-low.c (regsets_fetch_inferior_registers): Suppress the
3669 warning upon ENODATA from ptrace.
3670 * linux-s390-low.c (s390_store_tdb): New.
3671 (s390_regsets): Add regset for NT_S390_TDB.
3672
feea5f36
AA
36732014-12-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
3674
3675 * linux-low.c (regsets_store_inferior_registers): Skip regsets
3676 without a fill_function.
3677 * linux-s390-low.c (s390_fill_last_break): Remove.
3678 (s390_regsets): Set fill_function to NULL for NT_S390_LAST_BREAK.
3679 (s390_arch_setup): Use regset's size instead of fill_function for
3680 loop end condition.
3681
098dbe61
AA
36822014-12-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
3683
3684 * linux-low.c (regsets_fetch_inferior_registers): Do not invoke
3685 the regset's store function when ptrace returned an error.
3686 * regcache.c (get_thread_regcache): Invalidate register cache
3687 before fetching inferior's registers.
3688
28eef672
AA
36892014-12-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
3690
3691 * linux-low.c (regsets_fetch_inferior_registers): Rephrase
3692 while-loop as for-loop.
3693 (regsets_store_inferior_registers): Likewise.
3694
bdca27a2
YQ
36952014-11-28 Yao Qi <yao@codesourcery.com>
3696
3697 * configure.ac(AC_CHECK_FUNCS): Remove readlink.
3698 * config.in, configure: Re-generate.
3699 * hostio.c (handle_unlink): Remove code checking HAVE_READLINK
3700 is defined.
3701
9c232dda
YQ
37022014-11-21 Yao Qi <yao@codesourcery.com>
3703
3704 * configure.ac: Don't invoke AC_FUNC_ALLOCA.
3705 (AC_CHECK_HEADERS): Remove malloc.h.
3706 * configure: Re-generated.
3707 * config.in: Re-generated.
3708 * server.h: Don't include alloca.h and malloc.h.
3709 * gdbreplay.c: Don't check HAVE_ALLOCA_H is defined.
3710 Don't include malloc.h.
3711
43968415
JB
37122014-11-17 Joel Brobecker <brobecker@adacore.com>
3713
3714 * lynx-low.c (lynx_write_memory): Put lynx_read_memory and
3715 corresponding ERRNO check in same block.
3716
40e91bc7
PA
37172014-11-12 Pedro Alves <palves@redhat.com>
3718
3719 * server.c (cont_thread): Update comment.
3720 (start_inferior, attach_inferior): No longer clear cont_thread.
3721 (handle_v_cont): No longer set cont_thread.
3722 (captured_main): Clear cont_thread each time a GDB connects.
3723
c2c118cf
PA
37242014-11-12 Pedro Alves <palves@redhat.com>
3725
3726 * linux-low.c (linux_wait_1): Don't force a wait for the Hc
3727 thread, and don't resume all threads if the Hc thread has exited.
3728
78708b7c
PA
37292014-11-12 Pedro Alves <palves@redhat.com>
3730
3731 * linux-low.c (linux_request_interrupt): Always send a SIGINT to
3732 the process group instead of to a specific LWP.
3733
a2abc7de
PA
37342014-10-15 Pedro Alves <palves@redhat.com>
3735
3736 PR server/17487
3737 * win32-arm-low.c (arm_set_thread_context): Remove current_event
3738 parameter.
3739 (arm_set_thread_context): Delete.
3740 (the_low_target): Adjust.
3741 * win32-i386-low.c (debug_registers_changed)
3742 (debug_registers_used): Delete.
3743 (update_debug_registers_callback): New function.
3744 (x86_dr_low_set_addr, x86_dr_low_set_control): Mark all threads as
3745 needing to update their debug registers.
3746 (win32_get_current_dr): New function.
3747 (x86_dr_low_get_addr, x86_dr_low_get_control)
3748 (x86_dr_low_get_status): Fetch the debug register from the thread
3749 record's context.
3750 (i386_initial_stuff): Adjust.
3751 (i386_get_thread_context): Remove current_event parameter. Don't
3752 clear debug_registers_changed nor copy DR values to
3753 debug_reg_state.
3754 (i386_set_thread_context): Delete.
3755 (i386_prepare_to_resume): New function.
3756 (i386_thread_added): Mark the thread as needing to update irs
3757 debug registers.
3758 (the_low_target): Remove i386_set_thread_context and install
3759 i386_prepare_to_resume.
3760 * win32-low.c (win32_get_thread_context): Adjust.
3761 (win32_set_thread_context): Use SetThreadContext
3762 directly.
3763 (win32_prepare_to_resume): New function.
3764 (win32_require_context): New function, factored out from ...
3765 (thread_rec): ... this.
3766 (continue_one_thread): Call win32_prepare_to_resume on each thread
3767 we're about to continue.
3768 (win32_resume): Call win32_prepare_to_resume on the event thread.
3769 * win32-low.h (struct win32_thread_info)
3770 <debug_registers_changed>: New field.
3771 (struct win32_target_ops): Change prototype of set_thread_context,
3772 delete set_thread_context and add prepare_to_resume.
3773 (win32_require_context): New declaration.
3774
a442d071
GB
37752014-10-08 Gary Benson <gbenson@redhat.com>
3776
3777 * server.h: Do not include common-exceptions.h.
3778
6f1947e8
GB
37792014-10-08 Gary Benson <gbenson@redhat.com>
3780
3781 * server.h: Do not include cleanups.h.
3782
63b434a4
JH
37832014-09-30 James Hogan <james.hogan@imgtec.com>
3784
3785 * Makefile.in (clean): Add rm -f commands for mips-dsp-linux.c and
3786 mips64-dsp-linux.c.
3787
c4d9ceb6
YQ
37882014-09-23 Yao Qi <yao@codesourcery.com>
3789
3790 * linux-low.c (lp_status_maybe_breakpoint): New function.
3791 (linux_low_filter_event): Call lp_status_maybe_breakpoint.
3792 (count_events_callback): Likewise.
3793 (select_event_lwp_callback): Likewise.
3794 (cancel_breakpoints_callback): Likewise.
3795
89a5711c
DB
37962014-09-19 Don Breazeal <donb@codesourcery.com>
3797
3798 * linux-low.c (handle_extended_wait): Call
3799 linux_ptrace_get_extended_event.
3800 (get_stop_pc, get_detach_signal, linux_low_filter_event): Call
3801 linux_is_extended_waitstatus.
3802
bffc0964
JB
38032014-09-16 Joel Brobecker <brobecker@adacore.com>
3804
3805 * Makefile.in (CPPFLAGS): Define.
3806 (INTERNAL_CFLAGS_BASE): Add ${CPPFLAGS}.
3807 (IPAGENT_CFLAGS): Remove ${CPPFLAGS}.
3808
0bfdf32f
GB
38092014-09-16 Gary Benson <gbenson@redhat.com>
3810
3811 * inferiors.h (current_inferior): Renamed as...
3812 (current_thread): New variable. All uses updated.
3813 * linux-low.c (get_pc): Renamed saved_inferior as saved_thread.
3814 (maybe_move_out_of_jump_pad): Likewise.
3815 (cancel_breakpoint): Likewise.
3816 (linux_low_filter_event): Likewise.
3817 (wait_for_sigstop): Likewise.
3818 (linux_resume_one_lwp): Likewise.
3819 (need_step_over_p): Likewise.
3820 (start_step_over): Likewise.
3821 (linux_stabilize_threads): Renamed save_inferior as saved_thread.
3822 * linux-x86-low.c (x86_linux_update_xmltarget): Likewise.
3823 * proc-service.c (ps_lgetregs): Renamed reg_inferior as reg_thread
3824 and save_inferior as saved_thread.
3825 * regcache.c (get_thread_regcache): Renamed saved_inferior as
3826 saved_thread.
3827 (regcache_invalidate_thread): Likewise.
3828 * remote-utils.c (prepare_resume_reply): Likewise.
3829 * thread-db.c (thread_db_get_tls_address): Likewise.
3830 (disable_thread_event_reporting): Likewise.
3831 (remove_thread_event_breakpoints): Likewise.
3832 * tracepoint.c (gdb_agent_about_to_close): Renamed save_inferior
3833 as saved_thread.
3834 * target.h (set_desired_inferior): Renamed as...
3835 (set_desired_thread): New declaration. All uses updated.
3836 * server.c (myresume): Updated comment to reference thread instead
3837 of inferior.
3838 (handle_serial_event): Likewise.
3839 (handle_target_event): Likewise.
3840
361c8ade
GB
38412014-09-12 Tom Tromey <tromey@redhat.com>
3842 Gary Benson <gbenson@redhat.com>
3843
3844 * regcache.h: Include common-regcache.h.
3845 (regcache_read_pc): Don't declare.
3846 * regcache.c (get_thread_regcache_for_ptid): New function.
3847
bd9269f7
GB
38482014-09-11 Tom Tromey <tromey@redhat.com>
3849 Gary Benson <gbenson@redhat.com>
3850
3851 * symbol.c: New file.
3852 * Makefile.in (SFILES): Add symbol.c.
3853 (OBS): Add symbol.o.
3854
f8c1d06b
GB
38552014-09-11 Gary Benson <gbenson@redhat.com>
3856
3857 * target.c (target_stop_ptid, target_continue_ptid): New
3858 functions.
3859
721ec300
GB
38602014-09-11 Tom Tromey <tromey@redhat.com>
3861 Gary Benson <gbenson@redhat.com>
3862
3863 * target.h: Include target/target.h.
3864 * target.c (target_read_memory, target_read_uint32)
3865 (target_write_memory): New functions.
3866
c5e92cca
GB
38672014-09-11 Gary Benson <gbenson@redhat.com>
3868
3869 * server.h (debug_hw_points): Don't declare.
3870 * server.c (debug_hw_points): Don't define. Replace all uses
3871 with show_debug_regs.
3872 * linux-aarch64-low.c (debug_hw_points): Don't define. Replace
3873 all uses with show_debug_regs.
3874
2e4bb98a
EBM
38752014-09-08 Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
3876
3877 * linux-ppc-low.c (ppc_collect_ptrace_register): Adjust routine to take
3878 endianness into account.
3879 (ppc_supply_ptrace_register): Likewise.
3880
ac740bc7
JH
38812014-09-03 James Hogan <james.hogan@imgtec.com>
3882
3883 * linux-mips-low.c (mips_read_description): Reset errno to 0 prior
3884 to reading DSP_CONTROL with PTRACE_PEEKUSER ptrace call.
3885
97ea6506
GB
38862014-09-03 Gary Benson <gbenson@redhat.com>
3887
3888 * linux-x86-low.c (x86_linux_prepare_to_resume): Use
3889 ALL_DEBUG_ADDRESS_REGISTERS.
3890
df7e5265
GB
38912014-09-02 Gary Benson <gbenson@redhat.com>
3892
3893 * i386-low.h: Renamed as...
3894 * x86-low.h: New file. All type, function and variable name
3895 prefixes changed from "i386_" to "x86_". All references updated.
3896 * i386-low.c: Renamed as...
3897 * x86-low.c: New file. All type, function and variable name
3898 prefixes changed from "i386_" to "x86_". All references updated.
3899
ed859da7
GB
39002014-09-02 Gary Benson <gbenson@redhat.com>
3901
3902 * linux-x86-low.c (x86_linux_new_process): Use XCNEW.
3903 (x86_linux_new_thread): Likewise.
3904
860789c7
GB
39052014-08-29 Gary Benson <gbenson@redhat.com>
3906
3907 * server.h (setjmp.h): Do not include.
3908 (toplevel): Do not declare.
3909 (common-exceptions.h): Include.
3910 (cleanups.h): Likewise.
3911 * server.c (toplevel): Do not define.
3912 (exit_code): New static global.
3913 (detach_or_kill_for_exit_cleanup): New function.
3914 (main): New function. Original main renamed to...
3915 (captured_main): New function.
3916 * utils.c (verror) [!IN_PROCESS_AGENT]: Use throw_verror.
3917
ff55e1b5
GB
39182014-08-29 Gary Benson <gbenson@redhat.com>
3919
3920 * Makefile.in (SFILES): Add common/common-exceptions.c.
3921 (OBS): Add common-exceptions.o.
3922 (common-exceptions.o): New rule.
3923 * utils.c (prepare_to_throw_exception): New function.
3924
e9bcb658
GB
39252014-08-29 Gary Benson <gbenson@redhat.com>
3926
3927 * config.in: Regenerate.
3928 * configure: Likewise.
3929
e3180625
GB
39302014-08-29 Gary Benson <gbenson@redhat.com>
3931
3932 * Makefile.in (SFILES): Add common/cleanups.c.
3933 (OBS): cleanups.o.
3934 (cleanups.o): New rule.
3935
e3d6ba5d
GB
39362014-08-29 Gary Benson <gbenson@redhat.com>
3937
3938 * utils.c (internal_vwarning): New function.
3939
7096e886
GB
39402014-08-28 Gary Benson <gbenson@redhat.com>
3941
3942 * utils.h (fatal): Remove declaration.
3943 * utils.c (fatal): Remove function.
3944
14ce3192
GB
39452014-08-28 Gary Benson <gbenson@redhat.com>
3946
3947 * tracepoint.c (gdb_agent_init): Replace fatal with
3948 perror_with_name.
3949 (initialize_tracepoint): Likewise.
3950
50278d59
GB
39512014-08-28 Gary Benson <gbenson@redhat.com>
3952
3953 * remote-utils.c (remote_prepare): Replace fatal with error.
3954
aa96c426
GB
39552014-08-28 Gary Benson <gbenson@redhat.com>
3956
3957 * linux-low.c (linux_async): Replace fatal with warning.
3958 Tidy up and return.
3959 (linux_start_non_stop): Return -1 if linux_async failed.
3960
f7160e97
GB
39612014-08-28 Gary Benson <gbenson@redhat.com>
3962
3963 * linux-x86-low.c (i386_dr_low_set_addr): Replace check with
3964 gdb_assert.
3965 (i386_dr_low_get_addr): Remove vague comment.
3966 * win32-i386-low.c (i386_dr_low_set_addr): Replace check with
3967 gdb_assert.
3968
38e08fca
GB
39692014-08-28 Gary Benson <gbenson@redhat.com>
3970
3971 * inferiors.c (get_thread_process): Replace check with gdb_assert.
3972 * linux-low.c (linux_wait_for_event_filtered): Replace fatal with
3973 internal_error.
3974 (linux_resume_one_lwp): Likewise.
3975 * linux-x86-low.c (x86_siginfo_fixup): Replace checks with
3976 gdb_assert.
3977 * mem-break.c (raw_bkpt_type_to_target_hw_bp_type): Replace fatal
3978 with internal_error.
3979 * regcache.c (get_thread_regcache): Replace check with gdb_assert.
3980 (init_register_cache): Replace fatal with gdb_assert_not_reached.
3981 (find_register_by_name): Replace fatal with internal_error.
3982 (find_regno): Likewise.
3983 * tdesc.c (init_target_desc): Replace check with gdb_assert.
3984 * thread-db.c (thread_db_create_event): Likewise.
3985 (thread_db_load_search): Likewise.
3986 (try_thread_db_load_1): Likewise.
3987 * tracepoint.c (get_jump_space_head): Replace fatal with
3988 internal_error.
3989 (claim_trampoline_space): Likewise.
3990 (have_fast_tracepoint_trampoline_buffer): Likewise.
3991 (cmd_qtstart): Likewise.
3992 (stop_tracing): Likewise.
3993 (fast_tracepoint_collecting): Likewise.
3994 (target_malloc): Likewise.
3995 (download_tracepoint): Likewise.
3996 (download_trace_state_variables): Replace check with gdb_assert.
3997 (upload_fast_traceframes): Replace fatal with internal_error.
3998
34abf635
GB
39992014-08-19 Tom Tromey <tromey@redhat.com>
4000 Gary Benson <gbenson@redhat.com>
4001
4002 * Makefile.in (SFILES): Add common/common-debug.c.
4003 (OBS): Add common-debug.o.
4004 (common-debug.o): New rule.
4005 * debug.h (debug_printf): Don't declare.
4006 * debug.c (debug_printf): Renamed and rewritten as...
4007 (debug_vprintf): New function.
4008
f6e94d78
GB
40092014-08-19 Gary Benson <gbenson@redhat.com>
4010
4011 * utils.h: Do not include print-utils.h.
4012
9239eeab
GB
40132014-08-19 Tom Tromey <tromey@redhat.com>
4014 Gary Benson <gbenson@redhat.com>
4015
4016 * server.h: Add static assertion.
4017 (gdb_byte, CORE_ADDR, LONGEST, ULONGEST): Remove.
4018
ef87c8bb
GB
40192014-08-19 Tom Tromey <tromey@redhat.com>
4020 Gary Benson <gbenson@redhat.com>
4021
4022 * Makefile.in (SFILES): Add common/errors.c.
4023 (OBS): Add errors.o.
4024 (IPA_OBS): Add errors-ipa.o.
4025 (errors.o): New rule.
4026 (errors-ipa.o): Likewise.
4027 * utils.h (perror_with_name, error, warning): Don't declare.
4028 * utils.c (warning): Renamed and rewritten as...
4029 (vwarning): New function.
4030 (error): Renamed and rewritten as...
4031 (verror): New function.
4032 (internal_error): Renamed and rewritten as...
4033 (internal_verror): New function.
4034
bb974a24
GB
40352014-08-07 Gary Benson <gbenson@redhat.com>
4036
4037 * configure.ac (AC_CHECK_HEADERS): Remove errno.h.
4038 * configure: Regenerate.
4039 * config.in: Likewise.
4040 * server.h: Do not include errno.h.
4041 * event-loop.c: Likewise.
4042 * hostio-errno.c: Likewise.
4043 * linux-low.c: Likewise.
4044 * remote-utils.c: Likewise.
4045 * spu-low.c: Likewise.
4046 * utils.c: Likewise.
4047 * gdbreplay.c: Unconditionally include errno.h.
4048
6d3d12eb
GB
40492014-08-07 Gary Benson <gbenson@redhat.com>
4050
4051 * server.h: Do not include string.h.
4052 * event-loop.c: Likewise.
4053 * linux-low.c: Likewise.
4054 * regcache.c: Likewise.
4055 * remote-utils.c: Likewise.
4056 * spu-low.c: Likewise.
4057 * utils.c: Likewise.
4058
dccbb609
GB
40592014-08-07 Gary Benson <gbenson@redhat.com>
4060
4061 * server.h: Do not include gdb_assert.h.
4062
e76df0d0
GB
40632014-08-07 Gary Benson <gbenson@redhat.com>
4064
4065 * server.h: Do not include common-utils.h.
4066
4cb9c816
GB
40672014-08-07 Gary Benson <gbenson@redhat.com>
4068
4069 * server.h: Do not include ptid.h.
4070 * notif.h: Likewise.
4071
3995eeee
GB
40722014-08-07 Gary Benson <gbenson@redhat.com>
4073
4074 * server.h: Do not include gdb_locale.h.
4075
cb9f1a9b
GB
40762014-08-07 Gary Benson <gbenson@redhat.com>
4077
4078 * server.h: Do not include gdb/signals.h.
4079 * win32-low.c: Likewise.
4080
a5fceff8
GB
40812014-08-07 Gary Benson <gbenson@redhat.com>
4082
4083 * server.h: Do not include pathmax.h.
4084
b9391142
GB
40852014-08-07 Gary Benson <gbenson@redhat.com>
4086
4087 * server.h: Do not include libiberty.h.
4088 * linux-bfin-low.c: Likewise.
4089
0e443c87
GB
40902014-08-07 Gary Benson <gbenson@redhat.com>
4091
4092 * server.h: Do not include ansidecl.h.
4093
8ebb3f56
GB
40942014-08-07 Gary Benson <gbenson@redhat.com>
4095
4096 * linux-x86-low.c: Do not include stddef.h.
4097 * lynx-ppc-low.c: Likewise.
4098 * tracepoint.c: Likewise.
4099
8980bdf6
GB
41002014-08-07 Gary Benson <gbenson@redhat.com>
4101
4102 * server.h: Do not include stdarg.h.
4103 * nto-low.c: Likewise.
4104
d7096f71
GB
41052014-08-07 Gary Benson <gbenson@redhat.com>
4106
4107 * server.h: Do not include stdlib.h.
4108 * inferiors.c: Likewise.
4109 * linux-low.c: Likewise.
4110 * regcache.c: Likewise.
4111 * spu-low.c: Likewise.
4112 * tracepoint.c: Likewise.
4113 * utils.c: Likewise.
4114
d02f550d
GB
41152014-08-07 Gary Benson <gbenson@redhat.com>
4116
4117 * server.h: Do not include stdio.h.
4118 * linux-low.c: Likewise.
4119 * remote-utils.c: Likewise.
4120 * spu-low.c: Likewise.
4121 * utils.c: Likewise.
4122 * wincecompat.c: Likewise.
4123
87f6c4e3
GB
41242014-08-06 Gary Benson <gbenson@redhat.com>
4125
4126 * regcache.c (init_register_cache): Move conditionals inside if.
4127
7089dca4
GB
41282014-08-06 Gary Benson <gbenson@redhat.com>
4129
4130 * linux-low.c (linux_supports_non_stop): Use target_is_async_p.
4131
462f517e
GB
41322014-07-31 Gary Benson <gbenson@redhat.com>
4133
4134 * ax.h: Do not include server.h.
4135 * gdbthread.h: Likewise.
4136 * lynx-low.h: Likewise.
4137 * notif.h: Likewise.
4138
976411d6
GB
41392014-07-30 Gary Benson <gbenson@redhat.com>
4140
4141 * server.h: Include common-defs.h.
4142 Do not include config.h or build-gnulib-gdbserver/config.h.
4143
d41f6d8e
GB
41442014-07-30 Gary Benson <gbenson@redhat.com>
4145
4146 * hostio-errno.c: Move server.h to top of includes list.
4147 * inferiors.c: Likewise.
4148 * linux-x86-low.c: Likewise.
4149 * notif.c: Include server.h.
4150
314c6a35
TT
41512014-07-24 Tom Tromey <tromey@redhat.com>
4152 Gary Benson <gbenson@redhat.com>
4153
4154 * server.h (CORE_ADDR): Now unsigned.
4155
69ff6be5
PA
41562014-07-16 Pedro Alves <palves@redhat.com>
4157
4158 * linux-low.c (linux_kill_one_lwp): Use kill_lwp, not kill.
4159
ce9e3fe7
PA
41602014-07-15 Pedro Alves <palves@redhat.com>
4161
4162 * linux-low.c (linux_kill_one_lwp): Save errno and work with saved
4163 copy.
4164
e76126e8
PA
41652014-07-11 Pedro Alves <palves@redhat.com>
4166
4167 * linux-low.c (kill_wait_lwp): New function, based on
4168 kill_one_lwp_callback, but use my_waitpid directly.
4169 (kill_one_lwp_callback, linux_kill): Use it.
4170
8e9db26e
PA
41712014-06-23 Pedro Alves <palves@redhat.com>
4172
4173 * linux-x86-low.c (x86_linux_prepare_to_resume): Clear DR_CONTROL
4174 before setting DR0..DR3.
4175
698b3e08
GB
41762014-06-20 Gary Benson <gbenson@redhat.com>
4177
4178 * configure.ac (AC_REPLACE_FUNCS) <vasprintf, vsnprintf>: Removed.
4179 * configure: Regenerated.
4180 * config.in: Likewise.
4181
125f8a3d
GB
41822014-06-20 Gary Benson <gbenson@redhat.com>
4183
4184 * Makefile.in (SFILES): Update locations for files moved
4185 from common to nat.
4186 (object file files): Reordered.
4187
42995dbd
GB
41882014-06-20 Gary Benson <gbenson@redhat.com>
4189
4190 * i386-low.h (i386_dr_low_can_set_addr): Removed.
4191 (i386_dr_low_set_addr): Likewise.
4192 (i386_dr_low_get_addr): Likewise.
4193 (i386_dr_low_can_set_control): Likewise.
4194 (i386_dr_low_set_control): Likewise.
4195 (i386_dr_low_get_control): Likewise.
4196 (i386_dr_low_get_status): Likewise.
4197 (i386_get_debug_register_length): Likewise.
4198 * linux-x86-low.c (i386_dr_low_set_addr):
4199 Changed signature. Made static.
4200 (i386_dr_low_get_addr): Likewise.
4201 (i386_dr_low_set_control): Likewise.
4202 (i386_dr_low_get_control): Likewise.
4203 (i386_dr_low_get_status): Likewise.
4204 (i386_dr_low): New global variable.
4205 * win32-i386-low.c (i386_dr_low_set_addr):
4206 Changed signature. Made static.
4207 (i386_dr_low_get_addr): Likewise.
4208 (i386_dr_low_set_control): Likewise.
4209 (i386_dr_low_get_control): Likewise.
4210 (i386_dr_low_get_status): Likewise.
4211 (i386_dr_low): New global variable.
4212
e1d2394b
MS
42132014-06-20 Marcus Shawcroft <marcus.shawcroft@arm.com>
4214
4215 * configure.ac: Invoke. AC_CHECK_TOOL(AR, ar).
4216 * Makefile.in (AR, AR_FLAGS): Define.
4217 * configure: Regenerate.
4218
3a8ee006
GB
42192014-06-19 Gary Benson <gbenson@redhat.com>
4220
4221 * Makefile.in (i386-dregs.o): New rule.
4222 * configure.srv: Add i386-dregs.o to all targets using i386-low.o.
4223 * i386-low.c (target.h): Remove include.
4224 (TARGET_HAS_DR_LEN_8): Now in i386-dregs.c.
4225 (DR_CONTROL_SHIFT): Likewise.
4226 (DR_CONTROL_SIZE): Likewise.
4227 (DR_RW_EXECUTE): Likewise.
4228 (DR_RW_WRITE): Likewise.
4229 (DR_RW_READ): Likewise.
4230 (DR_RW_IORW): Likewise.
4231 (DR_LEN_1): Likewise.
4232 (DR_LEN_2): Likewise.
4233 (DR_LEN_4): Likewise.
4234 (DR_LEN_8): Likewise.
4235 (DR_LOCAL_ENABLE_SHIFT): Likewise.
4236 (DR_GLOBAL_ENABLE_SHIFT): Likewise.
4237 (DR_ENABLE_SIZE): Likewise.
4238 (DR_LOCAL_SLOWDOWN): Likewise.
4239 (DR_GLOBAL_SLOWDOWN): Likewise.
4240 (DR_CONTROL_RESERVED): Likewise.
4241 (I386_DR_CONTROL_MASK): Likewise.
4242 (I386_DR_VACANT): Likewise.
4243 (I386_DR_LOCAL_ENABLE): Likewise.
4244 (I386_DR_GLOBAL_ENABLE): Likewise.
4245 (I386_DR_DISABLE): Likewise.
4246 (I386_DR_SET_RW_LEN): Likewise.
4247 (I386_DR_GET_RW_LEN): Likewise.
4248 (I386_DR_WATCH_HIT): Likewise.
4249 (i386_wp_op_t): Likewise.
4250 (i386_show_dr): Likewise.
4251 (i386_length_and_rw_bits): Likewise.
4252 (i386_insert_aligned_watchpoint): Likewise.
4253 (i386_remove_aligned_watchpoint): Likewise.
4254 (i386_handle_nonaligned_watchpoint): Likewise.
4255 i386_update_inferior_debug_regs(): Likewise.
4256 (i386_dr_insert_watchpoint): Likewise.
4257 (i386_dr_remove_watchpoint): Likewise.
4258 (i386_dr_region_ok_for_watchpoint): Likewise.
4259 (i386_dr_stopped_data_address): Likewise.
4260 (i386_dr_stopped_by_watchpoint): Likewise.
4261
8f26655c
GB
42622014-06-19 Gary Benson <gbenson@redhat.com>
4263
4264 * i386-low.c (i386_dr_show): Renamed to
4265 i386_show_dr and made static. All uses updated.
4266 (i386_dr_length_and_rw_bits): Renamed to
4267 i386_length_and_rw_bits and made static.
4268 All uses updated.
4269 (i386_dr_insert_aligned_watchpoint): Renamed to
4270 i386_insert_aligned_watchpoint and made static.
4271 All uses updated.
4272 (i386_dr_remove_aligned_watchpoint): Renamed to
4273 i386_remove_aligned_watchpoint and made static.
4274 All uses updated.
4275 (i386_dr_update_inferior_debug_regs): Renamed to
4276 i386_update_inferior_debug_regs and made static.
4277 All uses updated.
4278
b9228891
GB
42792014-06-18 Gary Benson <gbenson@redhat.com>
4280
5171def3
GB
4281 * i386-low.h (i386_dr_low_can_set_addr): New macro.
4282 (i386_dr_low_can_set_control): Likewise.
4283 (i386_get_debug_register_length): Likewise.
4284 * i386-low.c (i386_dr_low_can_set_addr): Now in i386-low.h.
4285 (i386_dr_low_can_set_control): Likewise.
4286 (i386_get_debug_register_length): Likewise.
4287
42882014-06-17 Gary Benson <gbenson@redhat.com>
4289
b9228891
GB
4290 * i386-low.h (i386-dregs.h): New include.
4291 (DR_FIRSTADDR): Now in i386-dregs.h.
4292 (DR_LASTADDR): Likewise.
4293 (DR_NADDR): Likewise.
4294 (DR_STATUS): Likewise.
4295 (DR_CONTROL): Likewise.
4296 (i386_debug_reg_state): Likewise.
4297 (i386_dr_insert_watchpoint): Likewise.
4298 (i386_dr_remove_watchpoint): Likewise.
4299 (i386_dr_region_ok_for_watchpoint): Likewise.
4300 (i386_dr_stopped_data_address): Likewise.
4301 (i386_dr_stopped_by_watchpoint): Likewise.
4302 * i386-low.c (ALL_DEBUG_REGISTERS): Likewise.
4303
4be83cc2
GB
43042014-06-18 Gary Benson <gbenson@redhat.com>
4305
4306 * i386-low.h (i386_low_insert_watchpoint): Renamed to
4307 i386_dr_insert_watchpoint.
4308 (i386_low_remove_watchpoint): Renamed to
4309 i386_dr_remove_watchpoint.
4310 (i386_low_region_ok_for_watchpoint): Renamed to
4311 i386_dr_region_ok_for_watchpoint.
4312 (i386_low_stopped_data_address): Renamed to
4313 i386_dr_stopped_data_address.
4314 (i386_low_stopped_by_watchpoint): Renamed to
4315 i386_dr_stopped_by_watchpoint.
4316 * i386-low.c (i386_show_dr): Renamed to
4317 i386_dr_show and made nonstatic. All uses updated.
4318 (i386_length_and_rw_bits): Renamed to
4319 i386_dr_length_and_rw_bits and made nonstatic.
4320 All uses updated.
4321 (i386_insert_aligned_watchpoint): Renamed to
4322 i386_dr_insert_aligned_watchpoint and made nonstatic.
4323 All uses updated.
4324 (i386_remove_aligned_watchpoint): Renamed to
4325 i386_dr_remove_aligned_watchpoint and made nonstatic.
4326 All uses updated.
4327 (i386_update_inferior_debug_regs): Renamed to
4328 i386_dr_update_inferior_debug_regs and made nonstatic.
4329 All uses updated.
4330 (i386_low_insert_watchpoint): Renamed to
4331 i386_dr_insert_watchpoint. All uses updated.
4332 (i386_low_remove_watchpoint): Renamed to
4333 i386_dr_remove_watchpoint. All uses updated.
4334 (i386_low_region_ok_for_watchpoint): Renamed to
4335 i386_dr_region_ok_for_watchpoint. All uses updated.
4336 (i386_low_stopped_data_address): Renamed to
4337 i386_dr_stopped_data_address. All uses updated.
4338 (i386_low_stopped_by_watchpoint): Renamed to
4339 i386_dr_stopped_by_watchpoint. All uses updated.
4340
131aa0d4
GB
43412014-06-18 Gary Benson <gbenson@redhat.com>
4342
4343 * i386-low.c (i386_dr_low_can_set_addr): New macro.
4344 (i386_dr_low_can_set_control): Likewise.
4345 (i386_insert_aligned_watchpoint): New check.
4346
d9305f7f
GB
43472014-06-18 Gary Benson <gbenson@redhat.com>
4348
4349 * i386-low.c (i386_update_inferior_debug_regs) <inf_state>:
4350 Renamed to state.
4351
e927c9fc
GB
43522014-06-18 Gary Benson <gbenson@redhat.com>
4353
4354 * i386-low.c (i386_length_and_rw_bits): Use internal_error
4355 instead of fatal and error.
4356 (i386_handle_nonaligned_watchpoint): Likewise.
4357
1b6d4134
GB
43582014-06-18 Gary Benson <gbenson@redhat.com>
4359
4360 * i386-low.c (i386_get_debug_register_length): New macro.
4361 (TARGET_HAS_DR_LEN_8): Remove conditional. Use above macro.
4362 (i386_show_dr): Use debug_printf instead of fprintf. Use
4363 phex to format values.
4364
6e62758f
GB
43652014-06-18 Gary Benson <gbenson@redhat.com>
4366
4367 * i386-low.h: Comment changes.
4368 * i386-low.c: Likewise.
4369
fc6e2f03
GB
43702014-06-18 Gary Benson <gbenson@redhat.com>
4371
4372 * i386-low.c: Whitespace changes.
4373
f9d1eeed
TT
43742014-06-12 Tom Tromey <tromey@redhat.com>
4375
4376 * utils.c (freeargv): Remove.
4377
0b04e523
TT
43782014-06-12 Tom Tromey <tromey@redhat.com>
4379
4380 * debug.c (debug_printf): Remove HAVE_GETTIMEOFDAY checks.
4381 * server.c (monitor_show_help): Remove HAVE_GETTIMEOFDAY check.
4382 (parse_debug_format_options): Likewise.
4383 (gdbserver_usage): Likewise.
4384 * Makefile.in (LIBIBERTY_BUILDDIR, LIBIBERTY): New variables.
4385 (SUBDIRS, REQUIRED_SUBDIRS): Add libiberty.
4386 (gdbserver$(EXEEXT), gdbreplay$(EXEEXT)): Depend on and link
4387 against libiberty.
4388 ($(LIBGNU)): Depend on libiberty.
4389 (all-lib): Recurse into all subdirs.
4390 (install-only): Invoke "install" target in subdirs.
4391 (vasprintf.o, vsnprintf.o, safe-ctype.o, lbasename.o): Remove
4392 targets.
4393 * configure: Rebuild.
4394 * configure.ac: Add ACX_CONFIGURE_DIR for libiberty. Don't check
4395 for vasprintf, vsnprintf, or gettimeofday.
4396 * configure.srv: Don't add safe-ctype.o or lbasename.o to
4397 srv_tgtobj.
4398
270c9937
JB
43992014-06-05 Joel Brobecker <brobecker@adacore.com>
4400
4401 * development.sh: Delete.
4402 * Makefile.in (config.status): Adjust dependency on development.sh.
4403 * configure.ac: Adjust development.sh source call.
4404 * configure: Regenerate.
4405
0a261ed8
PA
44062014-06-02 Pedro Alves <palves@redhat.com>
4407
4408 * ax.c (gdb_free_agent_expr): New function.
4409 * ax.h (gdb_free_agent_expr): New declaration.
4410 * mem-break.c (delete_gdb_breakpoint_1): Also clear the commands
4411 list.
4412 (clear_breakpoint_conditions, clear_breakpoint_commands): Make
4413 static.
4414 (clear_breakpoint_conditions_and_commands): New function.
4415 * mem-break.h (clear_breakpoint_conditions): Delete declaration.
4416 (clear_breakpoint_conditions_and_commands): New declaration.
4417
e9dae05e
RR
44182014-05-23 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
4419
4420 * linux-aarch64-low.c (asm/ptrace.h): Include.
4421
5876f503
JK
44222014-05-21 Jan Kratochvil <jan.kratochvil@redhat.com>
4423
4424 Fix TLS access for -static -pthread.
4425 * gdbserver/thread-db.c (struct thread_db): Add td_thr_tlsbase_p.
4426 (thread_db_get_tls_address): Call it if LOAD_MODULE is zero.
4427 (thread_db_load_search, try_thread_db_load_1): Initialize it.
4428
802e8e6d
PA
44292014-05-20 Pedro Alves <palves@redhat.com>
4430
4431 * linux-aarch64-low.c (aarch64_insert_point)
4432 (aarch64_remove_point): No longer check whether the type is
4433 supported here. Adjust to new interface.
4434 (the_low_target): Install aarch64_supports_z_point_type as
4435 supports_z_point_type method.
4436 * linux-arm-low.c (raw_bkpt_type_to_arm_hwbp_type): New function.
4437 (arm_linux_hw_point_initialize): Take an enum raw_bkpt_type
4438 instead of a Z packet char. Adjust.
4439 (arm_supports_z_point_type): New function.
4440 (arm_insert_point, arm_remove_point): Adjust to new interface.
4441 (the_low_target): Install arm_supports_z_point_type.
4442 * linux-crisv32-low.c (cris_supports_z_point_type): New function.
4443 (cris_insert_point, cris_remove_point): Adjust to new interface.
4444 Don't check whether the type is supported here.
4445 (the_low_target): Install cris_supports_z_point_type.
4446 * linux-low.c (linux_supports_z_point_type): New function.
4447 (linux_insert_point, linux_remove_point): Adjust to new interface.
4448 * linux-low.h (struct linux_target_ops) <insert_point,
4449 remove_point>: Take an enum raw_bkpt_type instead of a char. Add
4450 raw_breakpoint pointer parameter.
4451 <supports_z_point_type>: New method.
4452 * linux-mips-low.c (mips_supports_z_point_type): New function.
4453 (mips_insert_point, mips_remove_point): Adjust to new interface.
4454 Use mips_supports_z_point_type.
4455 (the_low_target): Install mips_supports_z_point_type.
4456 * linux-ppc-low.c (the_low_target): Install NULL as
4457 supports_z_point_type method.
4458 * linux-s390-low.c (the_low_target): Install NULL as
4459 supports_z_point_type method.
4460 * linux-sparc-low.c (the_low_target): Install NULL as
4461 supports_z_point_type method.
4462 * linux-x86-low.c (x86_supports_z_point_type): New function.
4463 (x86_insert_point): Adjust to new insert_point interface. Use
4464 insert_memory_breakpoint. Adjust to new
4465 i386_low_insert_watchpoint interface.
4466 (x86_remove_point): Adjust to remove_point interface. Use
4467 remove_memory_breakpoint. Adjust to new
4468 i386_low_remove_watchpoint interface.
4469 (the_low_target): Install x86_supports_z_point_type.
4470 * lynx-low.c (lynx_target_ops): Install NULL as
4471 supports_z_point_type callback.
4472 * nto-low.c (nto_supports_z_point_type): New.
4473 (nto_insert_point, nto_remove_point): Adjust to new interface.
4474 (nto_target_ops): Install nto_supports_z_point_type.
4475 * mem-break.c: Adjust intro comment.
4476 (struct raw_breakpoint) <raw_type, size>: New fields.
4477 <inserted>: Update comment.
4478 <shlib_disabled>: Delete field.
4479 (enum bkpt_type) <gdb_breakpoint>: Delete value.
4480 <gdb_breakpoint_Z0, gdb_breakpoint_Z1, gdb_breakpoint_Z2,
4481 gdb_breakpoint_Z3, gdb_breakpoint_Z4>: New values.
4482 (raw_bkpt_type_to_target_hw_bp_type): New function.
4483 (find_enabled_raw_code_breakpoint_at): New function.
4484 (find_raw_breakpoint_at): New type and size parameters. Use them.
4485 (insert_memory_breakpoint): New function, based off
4486 set_raw_breakpoint_at.
4487 (remove_memory_breakpoint): New function.
4488 (set_raw_breakpoint_at): Reimplement.
4489 (set_breakpoint): New, based on set_breakpoint_at.
4490 (set_breakpoint_at): Reimplement.
4491 (delete_raw_breakpoint): Go through the_target->remove_point
4492 instead of assuming memory breakpoints.
4493 (find_gdb_breakpoint_at): Delete.
4494 (Z_packet_to_bkpt_type, Z_packet_to_raw_bkpt_type): New functions.
4495 (find_gdb_breakpoint): New function.
4496 (set_gdb_breakpoint_at): Delete.
4497 (z_type_supported): New function.
4498 (set_gdb_breakpoint_1): New function, loosely based off
4499 set_gdb_breakpoint_at.
4500 (check_gdb_bp_preconditions, set_gdb_breakpoint): New functions.
4501 (delete_gdb_breakpoint_at): Delete.
4502 (delete_gdb_breakpoint_1): New function, loosely based off
4503 delete_gdb_breakpoint_at.
4504 (delete_gdb_breakpoint): New function.
4505 (clear_gdb_breakpoint_conditions): Rename to ...
4506 (clear_breakpoint_conditions): ... this. Don't handle a NULL
4507 breakpoint.
4508 (add_condition_to_breakpoint): Make static.
4509 (add_breakpoint_condition): Take a struct breakpoint pointer
4510 instead of an address. Adjust.
4511 (gdb_condition_true_at_breakpoint): Rename to ...
4512 (gdb_condition_true_at_breakpoint_z_type): ... this, and add
4513 z_type parameter.
4514 (gdb_condition_true_at_breakpoint): Reimplement.
4515 (add_breakpoint_commands): Take a struct breakpoint pointer
4516 instead of an address. Adjust.
4517 (gdb_no_commands_at_breakpoint): Rename to ...
4518 (gdb_no_commands_at_breakpoint_z_type): ... this. Add z_type
4519 parameter. Return true if no breakpoint was found. Change debug
4520 output.
4521 (gdb_no_commands_at_breakpoint): Reimplement.
4522 (run_breakpoint_commands): Rename to ...
4523 (run_breakpoint_commands_z_type): ... this. Add z_type parameter,
4524 and change return type to boolean.
4525 (run_breakpoint_commands): New function.
4526 (gdb_breakpoint_here): Also check for Z1 breakpoints.
4527 (uninsert_raw_breakpoint): Don't try to reinsert a disabled
4528 breakpoint. Go through the_target->remove_point instead of
4529 assuming memory breakpoint.
4530 (uninsert_breakpoints_at, uninsert_all_breakpoints): Uninsert
4531 software and hardware breakpoints.
4532 (reinsert_raw_breakpoint): Go through the_target->insert_point
4533 instead of assuming memory breakpoint.
4534 (reinsert_breakpoints_at, reinsert_all_breakpoints): Reinsert
4535 software and hardware breakpoints.
4536 (check_breakpoints, breakpoint_here, breakpoint_inserted_here):
4537 Check both software and hardware breakpoints.
4538 (validate_inserted_breakpoint): Assert the breakpoint is a
4539 software breakpoint. Set the inserted flag to -1 instead of
4540 setting shlib_disabled.
4541 (delete_disabled_breakpoints): Adjust.
4542 (validate_breakpoints): Only validate software breakpoints.
4543 Adjust to inserted flag change.
4544 (check_mem_read, check_mem_write): Skip breakpoint types other
4545 than software breakpoints. Adjust to inserted flag change.
4546 * mem-break.h (enum raw_bkpt_type): New enum.
4547 (raw_breakpoint, struct process_info): Forward declare.
4548 (Z_packet_to_target_hw_bp_type): Delete declaration.
4549 (raw_bkpt_type_to_target_hw_bp_type, Z_packet_to_raw_bkpt_type)
4550 (set_gdb_breakpoint, delete_gdb_breakpoint)
4551 (clear_breakpoint_conditions): New declarations.
4552 (set_gdb_breakpoint_at, clear_gdb_breakpoint_conditions): Delete.
4553 (breakpoint_inserted_here): Update comment.
4554 (add_breakpoint_condition, add_breakpoint_commands): Replace
4555 address parameter with a breakpoint pointer parameter.
4556 (gdb_breakpoint_here): Update comment.
4557 (delete_gdb_breakpoint_at): Delete.
4558 (insert_memory_breakpoint, remove_memory_breakpoint): Declare.
4559 * server.c (process_point_options): Take a struct breakpoint
4560 pointer instead of an address. Adjust.
4561 (process_serial_event) <Z/z packets>: Use set_gdb_breakpoint and
4562 delete_gdb_breakpoint.
4563 * spu-low.c (spu_target_ops): Install NULL as
4564 supports_z_point_type method.
4565 * target.h: Include mem-break.h.
4566 (struct target_ops) <prepare_to_access_memory>: Update comment.
4567 <supports_z_point_type>: New field.
4568 <insert_point, remove_point>: Take an enum raw_bkpt_type argument
4569 instead of a char. Also take a raw breakpoint pointer.
4570 * win32-arm-low.c (the_low_target): Install NULL as
4571 supports_z_point_type.
4572 * win32-i386-low.c (i386_supports_z_point_type): New function.
4573 (i386_insert_point, i386_remove_point): Adjust to new interface.
4574 (the_low_target): Install i386_supports_z_point_type.
4575 * win32-low.c (win32_supports_z_point_type): New function.
4576 (win32_insert_point, win32_remove_point): Adjust to new interface.
4577 (win32_target_ops): Install win32_supports_z_point_type.
4578 * win32-low.h (struct win32_target_ops):
4579 <supports_z_point_type>: New method.
4580 <insert_point, remove_point>: Take an enum raw_bkpt_type argument
4581 instead of a char. Also take a raw breakpoint pointer.
4582
932539e3
PA
45832014-05-20 Pedro Alves <palves@redhat.com>
4584
4585 * mem-break.h: Include break-common.h.
4586 (Z_PACKET_SW_BP, Z_PACKET_HW_BP, Z_PACKET_WRITE_WP)
4587 (Z_PACKET_READ_WP, Z_PACKET_ACCESS_WP): New defines.
4588 (Z_packet_to_target_hw_bp_type): New declaration.
4589 * mem-break.c (Z_packet_to_target_hw_bp_type): New function.
4590 * i386-low.c (Z_PACKET_HW_BP, Z_PACKET_WRITE_WP, Z_PACKET_READ_WP)
4591 (Z_PACKET_ACCESS_WP): Delete macros.
4592 (Z_packet_to_hw_type): Delete function.
4593 * i386-low.h: Don't include break-common.h here.
4594 (Z_packet_to_hw_type): Delete declaration.
4595 * linux-x86-low.c (x86_insert_point, x86_insert_point): Call
4596 Z_packet_to_target_hw_bp_type instead of Z_packet_to_hw_type.
4597 * win32-i386-low.c (i386_insert_point, i386_remove_point): Call
4598 Z_packet_to_target_hw_bp_type instead of Z_packet_to_hw_type.
4599 * linux-aarch64-low.c: Don't include break-common.h here.
4600 (Z_PACKET_SW_BP, Z_PACKET_HW_BP, Z_PACKET_WRITE_WP)
4601 (Z_PACKET_READ_WP, Z_PACKET_ACCESS_WP): Delete macros.
4602 (Z_packet_to_target_hw_bp_type): Delete function.
4603 * linux-mips-low.c (rsp_bp_type_to_target_hw_bp_type): Delete
4604 function.
4605 (mips_insert_point, mips_remove_point): Use
4606 Z_packet_to_target_hw_bp_type.
4607
4ff0d3d8
PA
46082014-05-20 Pedro Alves <palves@redhat.com>
4609
4610 * linux-aarch64-low.c: Include break-common.h.
4611 (enum target_point_type): Delete.
4612 (Z_packet_to_point_type): Rename to ...
4613 (Z_packet_to_target_hw_bp_type): ... this, and return a
4614 target_hw_bp_type instead.
4615 (aarch64_show_debug_reg_state): Take an enum target_hw_bp_type
4616 instead of an enum target_point_type.
4617 (aarch64_point_encode_ctrl_reg): Likewise. Compute type mask from
4618 breakpoint type.
4619 (aarch64_dr_state_insert_one_point)
4620 (aarch64_dr_state_remove_one_point, aarch64_handle_breakpoint)
4621 (aarch64_handle_aligned_watchpoint)
4622 (aarch64_handle_unaligned_watchpoint, aarch64_handle_watchpoint):
4623 Take an enum target_hw_bp_type instead of an enum
4624 target_point_type.
4625 (aarch64_supports_z_point_type): New function.
4626 (aarch64_insert_point, aarch64_remove_point): Use it. Adjust to
4627 use Z_packet_to_target_hw_bp_type.
4628
786dc519
JB
46292014-05-20 Joel Brobecker <brobecker@adacore.com>
4630
4631 * configure.ac: Only use -Werror by default when DEVELOPMENT
4632 is true.
4633 * configure: Regenerate.
4634
9e0aa64f
JK
46352014-05-19 Jan Kratochvil <jan.kratochvil@redhat.com>
4636
4637 Fix gdbserver qGetTLSAddr for x86_64 -m32.
4638 * linux-x86-low.c (X86_64_USER_REGS): New.
4639 (x86_fill_gregset): Call memset for BUF first in x86_64 -m32 case.
4640
2b577b92
YQ
46412014-04-28 Yao Qi <yao@codesourcery.com>
4642
4643 * Makefile.in (i386-avx512.c): Fix the typo of generated file
4644 name.
4645
94611da2
PA
46462014-04-25 Pedro Alves <palves@redhat.com>
4647
4648 PR server/16255
4649 * linux-low.c (linux_attach_fail_reason_string): New function.
4650 (linux_attach_lwp): Delete.
4651 (linux_attach_lwp_1): Rename to ...
4652 (linux_attach_lwp): ... this. Take a ptid instead of a pid as
4653 argument. Remove "initial" parameter. Return int instead of
4654 void. Don't error or warn here.
4655 (linux_attach): Adjust to call linux_attach_lwp. Call error on
4656 failure to attach to the tgid. Call warning when failing to
4657 attach to an lwp.
4658 * linux-low.h (linux_attach_lwp): Take a ptid instead of a pid as
4659 argument. Remove "initial" parameter. Return int instead of
4660 void. Don't error or warn here.
4661 (linux_attach_fail_reason_string): New declaration.
4662 * thread-db.c (attach_thread): Adjust to linux_attach_lwp's
4663 interface change. Use linux_attach_fail_reason_string.
4664
01f9f808
MS
46652014-04-24 Michael Sturm <michael.sturm@mintel.com>
4666 Walfred Tedeschi <walfred.tedeschi@intel.com>
4667
4668 * Makefile.in: Added rules to handle new files
4669 i386-avx512.c i386-avx512-linux.c amd64-avx512.c
4670 amd64-avx512-linux.c x32-avx512.c x32-avx512-linux.c.
4671 * configure.srv (srv_i386_regobj): Add i386-avx512.o.
4672 (srv_i386_linux_regobj): Add i386-avx512-linux.o.
4673 (srv_amd64_regobj): Add amd64-avx512.o and x32-avx512.o.
4674 (srv_amd64_linux_regobj): Add amd64-avx512-linux.o and
4675 x32-avx512-linux.o.
4676 (srv_i386_32bit_xmlfiles): Add i386/32bit-avx512.xml.
4677 (srv_i386_64bit_xmlfiles): Add i386/64bit-avx512.xml.
4678 (srv_amd64_xmlfiles): Add i386/amd64-avx512.xml and
4679 i386/x32-avx512.xml.
4680 (srv_i386_linux_xmlfiles): Add i386/i386-avx512-linux.xml.
4681 (srv_amd64_linux_xmlfiles): Add i386/amd64-avx512-linux.xml and
4682 i386/x32-avx512-linux.xml.
4683 * i387-fp.c (num_avx512_k_registers): New constant for number
4684 of K registers.
4685 (num_avx512_zmmh_low_registers): New constant for number of
4686 lower ZMM registers (0-15).
4687 (num_avx512_zmmh_high_registers): New constant for number of
4688 higher ZMM registers (16-31).
4689 (num_avx512_ymmh_registers): New contant for number of higher
4690 YMM registers (ymm16-31 added by avx521 on x86_64).
4691 (num_avx512_xmm_registers): New constant for number of higher
4692 XMM registers (xmm16-31 added by AVX512 on x86_64).
4693 (struct i387_xsave): Add space for AVX512 registers.
4694 (i387_cache_to_xsave): Change raw buffer size to 64 characters.
4695 Add code to handle AVX512 registers.
4696 (i387_xsave_to_cache): Add code to handle AVX512 registers.
4697 * linux-x86-low.c (init_registers_amd64_avx512_linux): New
4698 prototypei from generated file.
4699 (tdesc_amd64_avx512_linux): Likewise.
4700 (init_registers_x32_avx512_linux): Likewise.
4701 (tdesc_x32_avx512_linux): Likewise.
4702 (init_registers_i386_avx512_linux): Likewise.
4703 (tdesc_i386_avx512_linux): Likewise.
4704 (x86_64_regmap): Add AVX512 registers.
4705 (x86_linux_read_description): Add code to handle AVX512 XSTATE
4706 mask.
4707 (initialize_low_arch): Add code to initialize AVX512 registers.
4708
51aa91f9
PA
47092014-04-23 Pedro Alves <palves@redhat.com>
4710
4711 * mem-break.c (find_gdb_breakpoint_at): Make static.
4712 * mem-break.h (find_gdb_breakpoint_at): Delete declaration.
4713
a4165e94
PA
47142014-04-23 Pedro Alves <palves@redhat.com>
4715
4716 * i386-low.c: Don't include break-common.h here.
4717 (i386_low_insert_watchpoint, i386_low_remove_watchpoint): Change
4718 prototype to take target_hw_bp_type as argument instead of a Z
4719 packet char.
4720 * i386-low.h: Include break-common.h here.
4721 (Z_packet_to_hw_type): Declare.
4722 (i386_low_insert_watchpoint, i386_low_remove_watchpoint): Change
4723 prototypes.
4724 * linux-x86-low.c (x86_insert_point): Convert the packet number to
4725 a target_hw_bp_type before calling i386_low_insert_watchpoint.
4726 (x86_remove_point): Convert the packet number to a
4727 target_hw_bp_type before calling i386_low_remove_watchpoint.
4728 * win32-i386-low.c (i386_insert_point): Convert the packet number
4729 to a target_hw_bp_type before calling i386_low_insert_watchpoint.
4730 (i386_remove_point): Convert the packet number to a
4731 target_hw_bp_type before calling i386_low_remove_watchpoint.
4732
b8acf843
PA
47332014-04-23 Pedro Alves <palves@redhat.com>
4734
4735 * utils.h (perror_with_name): Add ATTRIBUTE_NORETURN.
4736
d708bcd1
PA
47372014-04-10 Pedro Alves <palves@redhat.com>
4738
4739 * mem-break.c (add_breakpoint_condition, add_breakpoint_commands):
4740 Check if the condition or command is NULL before checking if the
4741 breakpoint is known. On success, return true.
4742 * mem-break.h (add_breakpoint_condition): Document return.
4743 (add_breakpoint_commands): Add describing comment.
4744 * server.c (skip_to_semicolon): New function.
4745 (process_point_options): Use it.
4746
2eec7d5b
PA
47472014-04-09 Pedro Alves <palves@redhat.com>
4748
4749 * linux-low.c (linux_read_loadmap): Pass current_inferior directly
4750 to lwpid_of.
4751
fa96cb38
PA
47522014-02-27 Pedro Alves <palves@redhat.com>
4753
4754 PR 12702
4755 * inferiors.h (A_I_NEXT, ALL_INFERIORS_TYPE, ALL_PROCESSES): New
4756 macros.
4757 * linux-low.c (delete_lwp, handle_extended_wait): Add debug
4758 output.
4759 (last_thread_of_process_p): Take a PID argument instead of a
4760 thread pointer.
4761 (linux_wait_for_lwp): Delete.
4762 (num_lwps, check_zombie_leaders, not_stopped_callback): New
4763 functions.
4764 (linux_low_filter_event): New function, party factored out from
4765 linux_wait_for_event.
4766 (linux_wait_for_event): Rename to ...
4767 (linux_wait_for_event_filtered): ... this. Add new filter ptid
4768 argument. Partly rewrite. Always use waitpid(-1, WNOHANG) and
4769 sigsuspend. Check for zombie leaders.
4770 (linux_wait_for_event): Reimplement as wrapper around
4771 linux_wait_for_event_filtered.
4772 (linux_wait_1): Handle TARGET_WAITKIND_NO_RESUMED. Assume that if
4773 a normal or signal exit is seen, it's the whole process exiting.
4774 (wait_for_sigstop): No longer a for_each_inferior callback.
4775 Rewrite on top of linux_wait_for_event_filtered.
4776 (stop_all_lwps): Call wait_for_sigstop directly.
4777 * server.c (resume, handle_target_event): Handle
4778 TARGET_WAITKIND_NO_RESUMED.
4779
d763de10
JB
47802014-02-26 Joel Brobecker <brobecker@adacore.com>
4781
4782 * win32-low.c (psapi_get_dll_name,
4783 * win32_CreateToolhelp32Snapshot): Delete.
4784 (win32_CreateToolhelp32Snapshot, win32_Module32First)
4785 (win32_Module32Next, load_toolhelp, toolhelp_get_dll_name):
4786 Delete.
4787 (handle_load_dll): Add function description.
4788 Remove code using psapi_get_dll_name and toolhelp_get_dll_name.
4789
850a0f76
JB
47902014-02-26 Joel Brobecker <brobecker@adacore.com>
4791
4792 * win32-low.c (win32_add_one_solib): Add 0x1000 to load_addr.
4793 Add comment.
4794 (win32_add_all_dlls): Remove 0x1000 offset applied to DLL
4795 base address when calling win32_add_one_solib.
4796 (handle_load_dll): Delete local variable load_addr.
4797 Remove 0x1000 offset applied to DLL base address when calling
4798 win32_add_one_solib.
4799 (handle_unload_dll): Add comment.
4800
f25b3fc3
JB
48012014-02-26 Joel Brobecker <brobecker@adacore.com>
4802
4803 * win32-low.c (win32_add_all_dlls): Renames
4804 win32_ensure_ntdll_loaded. Rewrite function documentation.
4805 Adjust implementation to always load all DLLs.
4806 Add 0x1000 offset to DLL base address when calling
4807 win32_add_one_solib.
4808 (child_initialization_done): New static global.
4809 (do_initial_child_stuff): Set child_initialization_done to
4810 zero during child initialization, and 1 after. Replace call
4811 to win32_ensure_ntdll_loaded by call to win32_add_all_dlls.
4812 Add comment.
4813 (match_dll_by_basename, dll_is_loaded_by_basename): Delete.
4814 (handle_unload_dll): Add function documentation.
4815 (get_child_debug_event): Ignore load and unload DLL events
4816 during child initialization.
4817
d86d4aaf
DE
48182014-02-20 Doug Evans <dje@google.com>
4819
3bc32da3 4820 Remove global all_lwps.
d86d4aaf
DE
4821 * inferiors.h (ptid_of): Move here from linux-low.h.
4822 (pid_of, lwpid_of): Ditto.
4823 * linux-aarch64-low.c (debug_reg_change_callback): Update, "entry"
4824 parameter is a struct thread_info * now.
4825 (aarch64_notify_debug_reg_change): Fetch pid from current_inferior
4826 directly. Pass &all_threads to find_inferior instead of &all_lwps.
4827 (aarch64_stopped_data_address): Fetch lwpid from current_inferior
4828 directly.
4829 (aarch64_linux_prepare_to_resume): Fetch ptid from thread.
4830 (aarch64_arch_setup): Fetch lwpid from current_inferior directly.
4831 * linux-arm-low.c (update_registers_callback): Update, "entry"
4832 parameter is a struct thread_info * now.
4833 Fetch lwpid from current_inferior directly.
4834 (arm_insert_point): Pass &all_threads to find_inferior instead of
4835 &all_lwps.
4836 (arm_remove_point): Ditto.
4837 (arm_stopped_by_watchpoint): Fetch lwp from current_inferior.
4838 (arm_prepare_to_resume): Fetch pid from thread.
4839 (arm_read_description): Fetch lwpid from current_inferior directly.
4840 * linux-low.c (all_lwps): Delete.
4841 (delete_lwp): Delete call to remove_inferior.
4842 (handle_extended_wait): Fetch lwpid from thread.
4843 (add_lwp): Don't set lwp->entry.id. Remove call to
4844 add_inferior_to_list.
4845 (linux_attach_lwp_1): Fetch pid from current_inferior directly.
4846 (linux_kill_one_lwp): Fetch ptid,lwpid from thread.
4847 (kill_one_lwp_callback): Ditto.
4848 (linux_kill): Don't dereference NULL pointer.
4849 Fetch ptid,lwpid from thread.
4850 (get_detach_signal): Fetch ptid from thread.
4851 (linux_detach_one_lwp): Fetch ptid,lwpid from thread.
4852 Simplify call to regcache_invalidate_thread.
4853 (delete_lwp_callback): Update, "entry" parameter is a
4854 struct thread_info * now. Fetch pid from thread.
4855 (linux_mourn): Pass &all_threads to find_inferior instead of &all_lwps.
4856 (status_pending_p_callback): Update, "entry" parameter is a
4857 struct thread_info * now. Fetch ptid from thread.
4858 (find_lwp_pid): Update, "entry" parameter is a
4859 struct thread_info * now.
4860 (linux_wait_for_lwp): Fetch pid from thread.
4861 (linux_fast_tracepoint_collecting): Fetch lwpid from thread.
4862 (maybe_move_out_of_jump_pad): Fetch lwpid from current_inferior.
4863 (enqueue_one_deferred_signal): Fetch lwpid from thread.
4864 (dequeue_one_deferred_signal): Ditto.
4865 (cancel_breakpoint): Fetch ptid from current_inferior.
4866 (linux_wait_for_event): Pass &all_threads to find_inferior,
4867 not &all_lwps. Fetch ptid, lwpid from thread.
4868 (count_events_callback): Update, "entry" parameter is a
4869 struct thread_info * now.
4870 (select_singlestep_lwp_callback): Ditto.
4871 (select_event_lwp_callback): Ditto.
4872 (cancel_breakpoints_callback): Ditto.
4873 (linux_cancel_breakpoints): Pass &all_threads to find_inferior,
4874 not &all_lwps.
4875 (select_event_lwp): Ditto. Fetch ptid from event_thread.
4876 (unsuspend_one_lwp): Update, "entry" parameter is a
4877 struct thread_info * now.
4878 (unsuspend_all_lwps): Pass &all_threads to find_inferior,
4879 not &all_lwps.
4880 (linux_stabilize_threads): Ditto. And for for_each_inferior.
4881 Fetch lwpid from thread, not lwp.
4882 (linux_wait_1): Fetch ptid, lwpid from current_inferior.
4883 Pass &all_threads to find_inferior, not &all_lwps.
4884 (send_sigstop): Fetch lwpid from thread, not lwp.
4885 (send_sigstop_callback): Update, "entry" parameter is a
4886 struct thread_info * now.
4887 (suspend_and_send_sigstop_callback): Ditto.
4888 (wait_for_sigstop): Ditto. Fetch ptid, lwpid from thread, lwp.
4889 (stuck_in_jump_pad_callback): Update, "entry" parameter is a
4890 struct thread_info * now.
4891 (move_out_of_jump_pad_callback): Ditto. Fetch ptid, lwpid
4892 from thread, lwp.
4893 (lwp_running): Update, "entry" parameter is a
4894 struct thread_info * now.
4895 (stop_all_lwps): Fetch ptid from thread.
4896 Pass &all_threads to find_inferior, for_each_inferior, not &all_lwps.
4897 (linux_resume_one_lwp): Fetch lwpid from thread.
4898 (linux_set_resume_request): Update, "entry" parameter is a
4899 struct thread_info * now. Fetch pid, lwpid from thread.
4900 (resume_status_pending_p): Update, "entry" parameter is a
4901 struct thread_info * now.
4902 (need_step_over_p): Ditto. Fetch lwpid from thread.
4903 (start_step_over): Fetch lwpid from thread.
4904 (linux_resume_one_thread): Update, "entry" parameter is a
4905 struct thread_info * now. Fetch lwpid from thread.
4906 (linux_resume): Pass &all_threads to find_inferior, not &all_lwps.
4907 (proceed_one_lwp): Update, "entry" parameter is a
4908 struct thread_info * now. Fetch lwpid from thread.
4909 (unsuspend_and_proceed_one_lwp): Update, "entry" parameter is a
4910 struct thread_info * now.
4911 (proceed_all_lwps): Pass &all_threads to find_inferior, not &all_lwps.
4912 (unstop_all_lwps): Ditto. Fetch lwpid from thread.
4913 (regsets_fetch_inferior_registers): Fetch lwpid from current_inferior
4914 directly.
4915 (regsets_store_inferior_registers): Ditto.
4916 (fetch_register, store_register): Ditto.
4917 (linux_read_memory, linux_write_memory): Ditto.
4918 (linux_request_interrupt): Ditto.
4919 (linux_read_auxv): Ditto.
4920 (linux_xfer_siginfo): Ditto.
4921 (linux_qxfer_spu): Ditto.
4922 (linux_qxfer_libraries_svr4): Ditto.
4923 * linux-low.h (ptid_of, pid_of, lwpid_of): Delete,
4924 moved to inferiors.h.
4925 (get_lwp): Delete.
4926 (get_thread_lwp): Update.
4927 (struct lwp_info): Delete member "entry". Simplify comment for
4928 member "thread".
4929 (all_lwps): Delete.
4930 * linux-mips-low.c (mips_read_description): Fetch lwpid from
4931 current_inferior directly.
4932 (update_watch_registers_callback): Update, "entry" parameter is a
4933 struct thread_info * now. Fetch pid from thread.
4934 (mips_linux_prepare_to_resume): Fetch ptid from thread.
4935 (mips_insert_point): Fetch lwpid from current_inferior.
4936 Pass &all_threads to find_inferior, not &all_lwps.
4937 (mips_remove_point): Pass &all_threads to find_inferior, not &all_lwps.
4938 (mips_stopped_by_watchpoint): Fetch lwpid from current_inferior
4939 directly.
4940 (mips_stopped_data_address): Ditto.
4941 * linux-s390-low.c (s390_arch_setup): Fetch pid from current_inferior
4942 directly.
4943 * linux-tile-low.c (tile_arch_setup): Ditto.
4944 * linux-x86-low.c (x86_get_thread_area): Fetch lwpid from thread.
4945 (update_debug_registers_callback): Update, "entry" parameter is a
4946 struct thread_info * now. Fetch pid from thread.
4947 (i386_dr_low_set_addr): Fetch pid from current_inferior directly.
4948 Pass &all_threads to find_inferior, not &all_lwps.
4949 (i386_dr_low_get_addr): Fetch ptid from current_inferior directly.
4950 (i386_dr_low_set_control): Fetch pid from current_inferior directly.
4951 Pass &all_threads to find_inferior, not &all_lwps.
4952 (i386_dr_low_get_control): Fetch ptid from current_inferior directly.
4953 (i386_dr_low_get_status): Ditto.
4954 (x86_linux_prepare_to_resume): Fetch ptid from thread.
4955 (x86_siginfo_fixup): Fetch lwpid from current_inferior directly.
4956 (x86_linux_read_description): Ditto.
4957 * proc-service.c (ps_getpid): Fetch pid from current_inferior directly.
4958
3b8361aa
DE
49592014-02-20 Doug Evans <dje@google.com>
4960
4961 * inferiors.c (get_first_inferior): Fix buglet.
4962
f7667f0d
DE
49632014-02-19 Doug Evans <dje@google.com>
4964
4965 * gdbthread.h (add_thread): Change result type to struct thread_info *.
4966 * inferiors.c (add_thread): Change result type to struct thread_info *.
4967 All callers updated.
4968 (add_lwp): Call add_thread here instead of in callers.
4969 All callers updated.
4970 * linux-low.h (get_lwp_thread): Rewrite.
4971 (struct lwp_info): New member "thread".
4972
b3312d80
DE
49732014-02-19 Doug Evans <dje@google.com>
4974
4975 * linux-low.c (add_lwp): Change result to struct lwp_info *.
4976 All callers updated.
4977
ecc6f45c
DE
49782014-02-19 Doug Evans <dje@google.com>
4979
4980 * inferiors.c (add_thread): Fix whitespace.
4981
649ebbca
DE
49822014-02-19 Doug Evans <dje@google.com>
4983
4984 * dll.c (clear_dlls): Replace accessing list implemention details
4985 with API function.
4986 * gdbthread.h (get_first_thread): Declare.
4987 * inferiors.c (for_each_inferior_with_data): New function.
4988 (get_first_thread): New function.
4989 (find_thread_ptid): Simplify.
4990 (get_first_inferior): New function.
4991 (clear_list): Delete.
4992 (one_inferior_p): New function.
4993 (clear_inferior_list): New function.
4994 (clear_inferiors): Update.
4995 * inferiors.h (for_each_inferior_with_data): Declare.
4996 (clear_inferior_list): Declare.
4997 (one_inferior_p): Declare.
4998 (get_first_inferior): Declare.
4999 * linux-low.c (linux_wait_for_event): Replace accessing list
5000 implemention details with API function.
5001 * server.c (target_running): Ditto.
5002 (accumulate_file_name_length): New function.
5003 (emit_dll_description): New function.
5004 (handle_qxfer_libraries): Replace accessing list implemention
5005 details with API function.
5006 (handle_qxfer_threads_worker): New function.
5007 (handle_qxfer_threads_proper): Replace accessing list implemention
5008 details with API function.
5009 (handle_query): Ditto.
5010 (visit_actioned_threads_callback_ftype): New typedef.
5011 (visit_actioned_threads_data): New struct.
5012 (visit_actioned_threads): Rewrite to be find_inferior callback.
5013 (resume): Call find_inferior.
5014 (handle_status): Replace accessing list implemention
5015 details with API function.
5016 (process_serial_event): Replace accessing list implemention details
5017 with API function.
5018 * target.c (set_desired_inferior): Replace accessing list implemention
5019 details with API function.
5020 * tracepoint.c (same_process_p): New function.
5021 (gdb_agent_about_to_close): Replace accessing list implemention
5022 details with API function.
5023 * win32-low.c (child_delete_thread): Replace accessing list
5024 implemention details with API function.
5025 (match_dll_by_basename): New function.
5026 (dll_is_loaded_by_basename): New function.
5027 (win32_ensure_ntdll_loaded): Replace accessing list implemention
5028 details call to dll_is_loaded_by_basename.
5029
80894984
DE
50302014-02-19 Doug Evans <dje@google.com>
5031
5032 * dll.h (struct dll_info): Add comment.
5033 * gdbthread.h (struct thread_info): Add comment.
5034 (current_ptid): Simplify.
5035 * inferiors.c (add_process): Update.
5036 (remove_process): Update.
5037 * inferiors.h (struct process_info): Rename member "head" to "entry".
5038 * linux-low.c (delete_lwp): Update.
5039 (add_lwp): Update.
5040 (last_thread_of_process_p): Update.
5041 (kill_one_lwp_callback, linux_kill): Update.
5042 (status_pending_p_callback): Update.
5043 (wait_for_sigstop): Update. Simplify read of ptid.
5044 (start_step_over): Update.
5045 * linux-low.h (ptid_of, pid_of, lwpid_of): Update.
5046 (get_lwp_thread): Update.
5047 (struct lwp_info): Rename member "head" to "entry".
5048 * regcache.h (inferior_list_entry): Delete.
5049 * server.c (kill_inferior_callback): Update.
5050 (detach_or_kill_inferior_callback): Update.
5051 (print_started_pid): Update.
5052 (print_attached_pid): Update.
5053 (process_serial_event): Simplify read of ptid.
5054 * thread-db.c (thread_db_create_event): Update.
5055 (thread_db_get_tls_address): Update.
5056 * win32-low.c (current_inferior_ptid): Simplify.
5057
46917d26
TT
50582014-02-19 Tom Tromey <tromey@redhat.com>
5059
5060 * target.h (struct target_ops) <supports_btrace>: Add target_ops
5061 argument.
5062 (target_supports_btrace): Update.
5063
0759a81e
YQ
50642014-02-14 Yao Qi <yao@codesourcery.com>
5065
5066 * Makefile.in (IPA_OBJS): Append rsp-low-ipa.o.
5067 (rsp-low-ipa.o): New target.
5068
a7191e8b
TT
50692014-02-12 Tom Tromey <tromey@redhat.com>
5070
5071 * ax.c (gdb_parse_agent_expr): Use hex2bin, not
5072 convert_ascii_to_int.
5073 * regcache.c (registers_to_string): Likewise.
5074 * remote-utils.c (decode_M_packet): Likewise.
5075 * server.c (process_serial_event): Likewise.
5076
ff0e980e
TT
50772014-02-12 Tom Tromey <tromey@redhat.com>
5078
5079 * server.c (handle_query, handle_v_run): Use hex2bin, not
5080 unhexify.
5081 * tracepoint.c (cmd_qtdpsrc, cmd_qtdv, cmd_qtnotes): Likewise.
5082
e9371aff
TT
50832014-02-12 Tom Tromey <tromey@redhat.com>
5084
5085 * ax.c (gdb_unparse_agent_expr): Use bin2hex, not
5086 convert_int_to_ascii.
5087 * regcache.c (registers_to_string, collect_register_as_string):
5088 Likewise.
5089 * remote-utils.c (look_up_one_symbol, relocate_instruction):
5090 Likewise.
5091 * server.c (process_serial_event): Likewise.
5092 * tracepoint.c (cmd_qtstatus, response_source, response_tsv)
5093 (cmd_qtbuffer, cstr_to_hexstr): Likewise.
5094
971dc0b8
TT
50952014-02-12 Tom Tromey <tromey@redhat.com>
5096
5097 * remote-utils.c (look_up_one_symbol, monitor_output): Use
5098 bin2hex, not hexify.
5099 * tracepoint.c (cmd_qtstatus): Likewise.
5100
0a822afb
TT
51012014-02-12 Tom Tromey <tromey@redhat.com>
5102
5103 * remote-utils.c (monitor_output): Pass explicit length to
5104 hexify.
5105
9c3d6531
TT
51062014-02-12 Tom Tromey <tromey@redhat.com>
5107
5108 * tracepoint.c: Include rsp-low.h.
5109 * server.c: Include rsp-low.h.
5110 * remote-utils.h (convert_ascii_to_int, convert_int_to_ascii)
5111 (unhexify, hexify, remote_escape_output, unpack_varlen_hex): Don't
5112 declare.
5113 * remote-utils.c: Include rsp-low.h.
5114 (fromhex, hexchars, ishex, unhexify, tohex, hexify)
5115 (remote_escape_output, remote_unescape_input, unpack_varlen_hex)
5116 (convert_int_to_ascii, convert_ascii_to_int): Move to
5117 common/rsp-low.c.
5118 * regcache.c: Include rsp-low.h.
5119 * ax.c: Include rsp-low.h.
5120 * Makefile.in (SFILES): Add common/rsp-low.c.
5121 (OBS): Add rsp-low.o.
5122 (rsp-low.o): New target.
5123
01fd3ea5
TT
51242014-02-12 Tom Tromey <tromey@redhat.com>
5125
5126 * utils.h (pulongest, plongest, phex_nz): Don't declare.
5127 Include print-utils.h.
5128 * utils.c (NUMCELLS, CELLSIZE, get_cell, decimal2str, pulongest)
5129 (plongest, thirty_two, phex_nz): Remove.
5130 * Makefile.in (SFILES): Add common/print-utils.c.
5131 (OBS): Add print-utils.o.
5132 (print-utils-ipa.o): New target.
5133 (print-utils.o): New target.
5134 (IPA_OBJS): Add print-utils-ipa.o.
5135
e99dc820
TT
51362014-02-06 Tom Tromey <tromey@redhat.com>
5137
5138 * Makefile.in (SFILES): Fix indentation.
5139
ee1e2d4f
DE
51402014-02-05 Doug Evans <dje@google.com>
5141
5142 * linux-low.c (linux_wait_for_event): Improve comment.
5143 (linux_wait_1): Keep current_inferior in sync with event_child.
5144
f5a02773
DE
51452014-01-22 Doug Evans <dje@google.com>
5146
5147 * gdbthread.h (gdb_id_to_thread): Delete, unused.
5148
87ce2a04
DE
51492014-01-22 Doug Evans <dje@google.com>
5150
5151 * configure.ac (AC_CHECK_FUNCS): Add test for gettimeofday.
5152 * configure: Regenerate.
5153 * config.in: Regenerate.
5154 * Makefile.in (SFILES): Add debug.c.
5155 (OBS): Add debug.o.
5156 * debug.c: New file.
5157 * debug.h: New file.
5158 * linux-aarch64-low.c (*): Update all debugging printfs to use
5159 debug_printf instead of fprintf.
5160 * linux-arm-low.c (*): Ditto.
5161 * linux-cris-low.c (*): Ditto.
5162 * linux-crisv32-low.c (*): Ditto.
5163 * linux-m32r-low.c (*): Ditto.
5164 * linux-sparc-low.c (*): Ditto.
5165 * linux-x86.c (*): Ditto.
5166 * linux-low.c (*): Ditto.
5167 (linux_wait_1): Add calls to debug_enter, debug_exit.
5168 (linux_wait): Remove redundant debugging printf.
5169 (stop_all_lwps): Add calls to debug_enter, debug_exit.
5170 (linux_resume, unstop_all_lwps): Ditto.
5171 * mem-break.c (*): Update all debugging printfs to use
5172 debug_printf instead of fprintf.
5173 * remote-utils.c (*): Ditto.
5174 * thread-db.c (*): Ditto.
5175 * server.c #include <ctype.h>, "gdb_vecs.h".
5176 (debug_threads): Moved to debug.c.
5177 (*): Update all debugging printfs to use debug_printf instead of
5178 fprintf.
5179 (start_inferior): Replace call to fflush with call to debug_flush.
5180 (monitor_show_help): Mention set debug-format.
5181 (parse_debug_format_options): New function.
5182 (handle_monitor_command): Handle "monitor set debug-format".
5183 (gdbserver_usage): Mention --debug-format.
5184 (main): Parse --debug-format.
5185 * server.h (debug_threads): Declaration moved to debug.h.
5186 #include "debug.h".
5187 * tracepoint.c (trace_debug_1) [!IN_PROCESS_AGENT]: Add version of
5188 trace_debug_1 that uses debug_printf.
5189 (tracepoint_look_up_symbols): Update all debugging printfs to use
5190 debug_printf instead of fprintf.
5191
e671835b
BS
51922014-01-20 Baruch Siach <baruch@tkos.co.il>
5193
5194 * linux-xtensa-low.c: Include asm/ptrace.h instead of
5195 sys/ptrace.h.
5196
b5737fa9
PA
51972014-01-17 Pedro Alves <palves@redhat.com>
5198
ea38d2a9 5199 PR build/16445
c7faa97a
PA
5200 * linux-x86-low.c: Don't include elf/common.h if ELFMAG0 is
5201 defined after including gdb_proc_service.h.
b5737fa9 5202
40ed484e
DE
52032014-01-16 Doug Evans <dje@google.com>
5204
5205 * dll.c (UNSPECIFIED_CORE_ADDR): New macro.
5206 (match_dll): Use it.
5207
969c39fb
MM
52082014-01-16 Markus Metzger <markus.t.metzger@intel.com>
5209
5210 * target.h (target_ops) <read_btrace>: Change parameters and
5211 return type to allow error reporting.
5212 * server.c (handle_qxfer_btrace): Support delta reads. Pass
5213 trace reading errors on.
5214 * linux-low.c (linux_low_read_btrace): Pass trace reading
5215 errors on.
5216 (linux_low_disable_btrace): New.
5217
ab7f45ba
DE
52182014-01-15 Doug Evans <dje@google.com>
5219
5220 * inferiors.c (thread_id_to_gdb_id): Delete.
5221 * inferiors.h (thread_id_to_gdb_id): Delete.
5222
66af0f44
EZ
52232014-01-13 Eli Zaretskii <eliz@gnu.org>
5224
5225 * Makefile.in (INCLUDE_CFLAGS): Remove trailing slash from
5226 "-I$(srcdir)/../". Fixes MinGW compilation errors with old GCC
5227 versions.
5228
9939e131
PA
52292014-01-08 Pedro Alves <palves@redhat.com>
5230
5231 * server.c (handle_status): Don't discard previous queued stop
5232 replies or thread's pending status here.
5233 (main) <disconnection>: Do it here instead.
5234
b7ea362b
PA
52352014-01-08 Pedro Alves <palves@redhat.com>
5236
5237 * gdbthread.h (struct thread_info) <status_pending_p>: New field.
5238 * server.c (visit_actioned_threads, handle_pending_status): New
5239 function.
5240 (handle_v_cont): Factor out parts to ...
5241 (resume): ... this new function. If in all-stop, and a thread
5242 being resumed has a pending status, report it without actually
5243 resuming.
5244 (myresume): Adjust to use the new 'resume' function.
5245 (clear_pending_status_callback, set_pending_status_callback)
5246 (find_status_pending_thread_callback): New functions.
5247 (handle_status): Handle the case of multiple threads having
5248 interesting statuses to report. Report threads' real last signal
5249 instead of always reporting GDB_SIGNAL_TRAP. Look for a thread
5250 with an interesting thread to report the status for, instead of
5251 always reporting the status of the first thread.
5252
28498c42
JB
52532014-01-01 Joel Brobecker <brobecker@adacore.com>
5254
5255 * gdbserver.c (gdbserver_version): Set copyright year to 2014.
5256 * gdbreplay.c (gdbreplay_version): Likewise.
5257
f45c82da
YZ
52582013-12-18 Yufeng Zhang <yufeng.zhang@arm.com>
5259
5260 * linux-aarch64-low.c (aarch64_linux_set_debug_regs): Set
5261 iov.iov_len with the real length in use.
5262
379a5e2d
JB
52632013-12-13 Joel Brobecker <brobecker@adacore.com>
5264
5265 * Makefile.in (safe-ctype.o, lbasename.o): New rules.
5266 * configure.srv: Add safe-ctype.o and lbasename.o to srv_tgtobj
5267 for all targets that use win32-low.c.
5268 * win32-low.c (win32_ensure_ntdll_loaded): New function.
5269 (do_initial_child_stuff): Add call to win32_ensure_ntdll_loaded.
5270
4210d83e
PA
52712013-12-13 Pedro Alves <palves@redhat.com>
5272
5273 * target.c (mywait): Set OURSTATUS->KIND to TARGET_WAITKIND_STOPPED
5274 if equal to TARGET_WAITKIND_LOADED.
5275 * win32-low.c (cached_status): New static global.
5276 (win32_wait): Add declaration.
5277 (do_initial_child_stuff): Flush all initial pending debug events
5278 up to the initial breakpoint.
5279 (win32_wait): If CACHED_STATUS was set, return that instead
5280 of doing a real wait. Remove the code resuming the execution
5281 of the inferior after receiving a TARGET_WAITKIND_LOADED event
5282 during the initial phase. Also remove the code changing
5283 OURSTATUS->KIND from TARGET_WAITKIND_LOADED to
5284 TARGET_WAITKIND_STOPPED.
5285
e7f0d979
YQ
52862013-12-11 Yao Qi <yao@codesourcery.com>
5287
5288 * notif.c (handle_notif_ack): Return 0 if no notification
5289 matches.
5290
ebcf782c
DE
52912013-11-20 Doug Evans <dje@google.com>
5292
5293 * linux-low.c (linux_set_resume_request): Fix comment.
5294
20ad9378
DE
52952013-11-20 Doug Evans <dje@google.com>
5296
5297 * linux-low.c (resume_status_pending_p): Tweak comment.
5298
a196ebeb
WT
52992013-11-20 Walfred Tedeschi <walfred.tedeschi@intel.com>
5300
5301 * Makefile.in: Add i386-mpx.c, i386-mpx-linux.c, amd64-mpx.c,
5302 amd64-mpx-linux.c, x32-mpx.c and x32-mpx-linux.c generation.
5303 * configure.srv (srv_i386_regobj): Add i386-mpx.o.
5304 (srv_i386_linux_regobj): Add i386-mpx-linux.o.
5305 (srv_amd64_regobj): Add amd64-mpx.o.
5306 (srv_amd64_linux_regobj): Add amd64-mpx-linux.o.
5307 (srv_i386_32bit_xmlfiles): Add i386/32bit-mpx.xml.
5308 (srv_i386_64bit_xmlfiles): Add i386/64bit-mpx.xml.
5309 * i387-fp.c (num_pl_bnd_register) Added constant.
5310 (num_pl_bnd_cfg_registers) Added constant.
5311 (struct i387_xsave) Added reserved area and MPX fields.
5312 (i387_cache_to_xsave, i387_xsave_to_cache) Add MPX.
5313 * linux-x86-low.c (init_registers_i386_mpx_linux): Declare new
5314 function.
5315 (tdesc_i386_mpx_linux): Add MPX amd64 target.
5316 (init_registers_amd64_mpx_linux): Declare new function.
5317 (tdesc_amd64_mpx_linux): Add MPX amd64 target.
5318 (x86_64_regmap): Add MPX registers.
5319 (x86_linux_read_description): Add MPX case.
5320 (initialize_low_arch): Initialize MPX targets.
5321
0080a2f6
TT
53222013-11-18 Tom Tromey <tromey@redhat.com>
5323
5324 * configure: Rebuild.
5325 * configure.ac: Don't check for stdlib.h.
5326 * gdbreplay.c: Unconditionally include stdlib.h.
5327
2978b111
TT
53282013-11-18 Tom Tromey <tromey@redhat.com>
5329
5330 * config.in: Rebuild.
5331 * configure: Rebuild.
5332 * configure.ac: Don't use AC_HEADER_DIRENT.
5333
a3d08894
TT
53342013-11-18 Tom Tromey <tromey@redhat.com>
5335
5336 * server.h: Don't check HAVE_STRING_H.
5337 * gdbreplay.c: Don't check HAVE_STRING_H.
5338 * configure: Rebuild.
5339
0a5dd17d
TT
53402013-11-18 Tom Tromey <tromey@redhat.com>
5341
5342 * Makefile.in (gdbreplay$(EXEEXT)): Depend on and link against
5343 LIBGNU.
5344
1bd2f0ba
TT
53452013-11-08 Tom Tromey <tromey@redhat.com>
5346
5347 * configure, config.in: Rebuild.
5348 * configure.ac: Remove unused configury.
5349
3266f10b
TT
53502013-11-08 Tom Tromey <tromey@redhat.com>
5351
5352 * acinclude.m4: Include common.m4, codeset.m4.
5353 * configure, config.in: Rebuild.
5354 * configure.ac: Use GDB_AC_COMMON.
5355
6682d959
AA
53562013-11-06 Andreas Arnez <arnez@linux.vnet.ibm.com>
5357
5358 * linux-s390-low.c (HWCAP_S390_TE): New define.
5359 (s390_arch_setup): Consider the TE field in the HWCAP for
5360 determining 'have_regset_tdb'.
5361
fd0a4d76
SDJ
53622013-10-16 Sergio Durigan Junior <sergiodj@redhat.com>
5363
5364 PR gdb/16014
5365 * tracepoint.c (download_tracepoint_1): Remove unnecessary double
5366 call to sizeof.
5367
1a3d890b
PA
53682013-10-02 Pedro Alves <palves@redhat.com>
5369
5370 * server.c (process_serial_event): Don't output "GDBserver
5371 exiting" if GDB is connected through stdio.
5372 * target.c (mywait): Likewise, be silent if GDB is connected
5373 through stdio.
5374
97ad4581
JB
53752013-10-01 Joel Brobecker <brobecker@adacore.com>
5376
5377 * lynx-low.c (lynx_add_threads_after_attach): New function.
5378 (lynx_attach): Remove call to add_thread. Add call to
5379 lynx_add_threads_after_attach instead.
5380
5b4e221c
MF
53812013-09-28 Mike Frysinger <vapier@gentoo.org>
5382
5383 * configure.ac (AC_CHECK_HEADERS): Add sys/syscall.h
5384 * config.in, configure: Regenerated.
5385
ee47b2f8
YQ
53862013-09-18 Yao Qi <yao@codesourcery.com>
5387
5388 PR server/15959
5389 * server.c (start_inferior): Clear 'resume_info'.
5390
d6707650 53912013-09-16 Jiong Wang <jiwang@tilera.com>
0f63d4db 5392
d6707650
JW
5393 * linux-tile-low.c (tile_regsets): Modify the size field to 64-bit
5394 for each register.
5395
9243dd0e 53962013-09-16 Jiong Wang <jiwang@tilera.com>
0f63d4db 5397
9243dd0e
JW
5398 * configure.srv <tilegx*-*-linux*>: Remove linux-osdata.o from and add
5399 linux-tile-low.o to srv_tgtobj.
5400
c623a6ef
WN
54012013-09-16 Will Newton <will.newton@linaro.org>
5402
5403 * linux-aarch64-low.c (aarch64_linux_set_debug_regs): Zero
5404 out regs.
5405
fb71d39e
PA
54062013-09-06 Pedro Alves <palves@redhat.com>
5407
5408 * Makefile.in (gdb_proc_service_h, regdef_h, regcache_h)
5409 (signals_def, signals_h, ptid_h, ax_h, agent_h, linux_btrace_h)
5410 (linux_osdata_h, vec_h, gdb_vecs_h, host_defs_h, libiberty_h)
5411 (server_h, gdbthread_h, linux_low_h, linux_ptrace_h)
5412 (gdb_thread_db_h, linux_procfs_h, lynx_low_h, nto_low_h)
5413 (mips_linux_watch_h, i386_low_h, win32_low_h): Delete.
5414
8e7e9910
PA
54152013-09-06 Pedro Alves <palves@redhat.com>
5416
5417 * Makefile.in (linux-btrace.o, mips-linux-watch.o): Remove
5418 explicit header dependencies and use $COMPILE/$POSTCOMPILE.
5419
7c3a12ca
PA
54202013-09-06 Pedro Alves <palves@redhat.com>
5421
5422 * linux-amd64-ipa.c: Include tracepoint.h.
5423 * linux-i386-ipa.c: Include tracepoint.h.
5424
8eb3d7b6
RW
54252013-09-06 Ricard Wanderlof <ricardw@axis.com>
5426
5427 * linux-crisv32-low.c (PTRACE_GET_THREAD_AREA): New macro.
5428 (ps_get_thread_area): New function.
5429
eddddb9d
RW
54302013-09-06 Ricard Wanderlof <ricardw@axis.com>
5431
5432 * linux-crisv32-low.c (elf_gregset_t): Delete typedef.
5433 (initialize_low_arch): Call init_registers_crisv32 rather than
5434 init_register_crisv32.
5435
533b0600
PA
54362013-09-05 Pedro Alves <palves@redhat.com>
5437
5438 * server.h (handle_vFile, hostio_last_error_from_errno): Move
5439 to ...
5440 * hostio.h: ... this new file.
5441 * hostio.c, server.c, linux-low.c, nto-low.c, spu-low,
5442 win32-low.c: Include hostio.h.
5443
0ce3d3b5
PA
54442013-09-05 Pedro Alves <palves@redhat.com>
5445
5446 * server.h (gdb_client_data, handler_func, callback_handler_func)
5447 (delete_file_handler, add_file_handler, append_callback_event)
5448 (delete_callback_event, start_event_loop, initialize_event_loop):
5449 Move to event-loop.h and include it.
5450 * event-loop.h: New file.
5451
799cdc37
PA
54522013-09-05 Pedro Alves <palves@redhat.com>
5453
5454 * dll.c, inferiors.c, remote-utils.c, server.c: Include "dll.h".
5455 * server.h (struct dll_info, all_dlls, dlls_changed, clear_dlls)
5456 (loaded_dll, unloaded_dll): Move to ...
5457 * dll.h: ... this new file.
5458 * inferiors.c, remote-utils.c, win32-low.c: Include "dll.h".
5459
6a6bbd9d
PA
54602013-09-05 Pedro Alves <palves@redhat.com>
5461
5462 * server.h (current_process, get_thread_process, all_processes)
5463 (add_inferior_to_list, for_each_inferior, current_inferior)
5464 (remove_inferior, add_process, remove_process, find_process_pid)
5465 (have_started_inferiors_p, have_attached_inferiors_p)
5466 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id)
5467 (clear_inferiors, find_inferior, find_inferior_id)
5468 (inferior_target_data, set_inferior_target_data)
5469 (inferior_regcache_data, set_inferior_regcache_data): Move to
5470 inferiors.h, and include it.
5471 * inferiors.h: New file.
5472
f699aaba
PA
54732013-09-05 Pedro Alves <palves@redhat.com>
5474
5475 * server.h (struct emit_ops, current_insn_ptr, emit_error):
5476 Move ...
72f4393d 5477 * ax.h: ... here.
f699aaba 5478
c144c7a0
PA
54792013-09-05 Pedro Alves <palves@redhat.com>
5480
5481 * ax.c, linux-low.c, linux-x86-low.c, server.c: Include
5482 tracepoint.h.
5483 * server.h (IPA_BUFSIZ, initialize_tracepoint, tracing)
5484 (disconnected_tracing, tracepoint_look_up_symbols, stop_tracing
5485 (handle_tracepoint_general_set, handle_tracepoint_query)
5486 (tracepoint_finished_step, tracepoint_was_hit)
5487 (release_while_stepping_state_list, current_traceframe)
5488 (in_readonly_region, traceframe_read_mem)
5489 (fetch_traceframe_registers, traceframe_read_sdata)
5490 (traceframe_read_info, struct fast_tpoint_collect_status)
5491 (fast_tracepoint_collecting, force_unlock_trace_buffer)
5492 (handle_tracepoit_bkpts, initialize_low_tracepoint)
5493 (supply_fast_tracepoint_registers)
5494 (supply_static_tracepoint_registers, set_trampoline_buffer_space)
5495 (ipa_tdesc, claim_trampoline_space)
5496 (have_fast_tracepoint_trampoline_buffer, gdb_agent_about_to_close)
5497 (agent_mem_read, agent_get_trace_state_variable_value)
5498 (agent_set_trace_state_variable_value, agent_tsv_read)
5499 (agent_mem_read_string, get_raw_reg_func_addr)
5500 (get_get_tsv_func_addr, get_set_tsv_func_addr): Move to ...
5501 * tracepoint.h: ... this new file.
5502
ff42e6ab
PA
55032013-09-05 Pedro Alves <palves@redhat.com>
5504
5505 * server.h (perror_with_name, error, fatal, warning, paddress)
5506 (pulongest, plongest, phex_nz, pfildes): Move to utils.h, and
5507 include it.
5508 * utils.h: New file.
5509
541af0f4
PA
55102013-09-05 Pedro Alves <palves@redhat.com>
5511
5512 * server.h (remote_debug, noack_mode, transport_is_reliable)
5513 (gdb_connected, STDIO_CONNECTION_NAME, remote_connection_is_stdio)
5514 (read_ptid, write_ptid, putpkt, putpkt_binary, putpkt_notif)
5515 (getpkt, remote_prepare, remote_open, remote_close, write_ok)
5516 (write_enn, initialize_async_io, enable_async_io)
5517 (disable_async_io, check_remote_input_interrupt_request)
5518 (convert_ascii_to_int, convert_int_to_ascii, new_thread_notify)
5519 (dead_thread_notify, prepare_resume_reply)
5520 (decode_address_to_semicolon, decode_address, decode_m_packet)
5521 (decode_M_packet, decode_X_packet, decode_xfer_write)
5522 (decode_search_memory_packet, unhexify, hexify)
5523 (remote_escape_output, unpack_varlen_hex, clear_symbol_cache)
5524 (look_up_one_symbol, relocate_instruction)
5525 (monitor_output): Move to remote-utils.h, and include it.
5526 * remote-utils.h: New file.
5527
eebdf26b
PA
55282013-09-05 Pedro Alves <palves@redhat.com>
5529
5530 * server.h (_): Delete.
5531
3aafd2ff
PA
55322013-09-02 Pedro Alves <palves@redhat.com>
5533
5534 * tracepoint.c (TRACEFRAME_EOB_MARKER_SIZE): New macro.
5535 (init_trace_buffer): Ensure at least TRACEFRAME_EOB_MARKER_SIZE is
5536 allocated.
5537 (trace_buffer_alloc): Use TRACEFRAME_EOB_MARKER_SIZE.
5538
cee83bcb
PM
55392013-09-02 Pierre Muller <muller@sourceware.org>
5540
5541 * win32-low.c (child_xfer_memory): Check if ReadProcessMemory
5542 or WriteProcessMemory complete successfully and handle
5543 ERROR_PARTIAL_COPY error.
5544
9a13b2fa
PA
55452013-09-02 Pedro Alves <palves@redhat.com>
5546
5547 * server.c (gdb_read_memory): Return -1 on traceframe memory read
5548 error instead of EIO.
5549
602e3198
JK
55502013-08-28 Jan Kratochvil <jan.kratochvil@redhat.com>
5551
5552 PR server/15604
5553 * linux-low.c: Include filestuff.h.
5554 (linux_create_inferior) <pid == 0>: Call close_most_fds.
5555 * lynx-low.c: Include filestuff.h.
5556 (lynx_create_inferior) <pid == 0>: Call close_most_fds.
5557 * server.c: Include filestuff.h.
5558 (main): Call notice_open_fds.
5559 * spu-low.c: Include filestuff.h.
5560 (spu_create_inferior) <pid == 0>: Call close_most_fds.
5561
96d7229d
LM
55622013-08-22 Luis Machado <lgustavo@codesourcery.com>
5563
5564 * Makefile.in: Explain why ../target and ../nat are not
5565 listed as include file search paths.
5566 (linux-waitpid.o): New object file rule.
5567 * configure.srv (srv_native_linux_obj): New variable.
5568 Replace all occurrences of linux native object files with
5569 $srv_native_linux_obj.
5570 * linux-low.c: Include nat/linux-nat.h and nat/linux-waitpid.h.
5571 (HAS_NOMMU): Move defining logic to common/linux-ptrace.c.
5572 (linux_enable_event_reporting): Remove declaration.
5573 (my_waitpid): Moved to common/linux-waitpid.c.
5574 (linux_wait_for_event): Pass ptid when calling
5575 linux_enable_event_reporting.
5576 (linux_supports_tracefork_flag): Remove.
5577 (linux_enable_event_reporting): Likewise.
5578 (linux_tracefork_grandchild): Remove.
5579 (STACK_SIZE): Moved to common/linux-ptrace.c.
5580 (linux_tracefork_child): Remove.
5581 (linux_test_for_tracefork): Remove.
5582 (linux_look_up_symbols): Call linux_supports_traceclone.
5583 (initialize_low): Remove call to linux_test_for_tracefork.
5584 * linux-low.h (PTRACE_TYPE_ARG3): Move to
5585 common/linux-ptrace.h.
5586 (PTRACE_TYPE_ARG4): Likewise.
5587 Include linux-ptrace.h.
5588
32940073
PA
55892013-08-21 Pedro Alves <palves@redhat.com>
5590
5591 * config.in: Renegerate.
5592
33b60d58 55932013-08-19 Luis Machado <lgustavo@codesourcery.com>
a261b8f5 5594
33b60d58
LM
5595 * Makefile.in (INCLUDE_CFLAGS): Include -I$(srcdir)/../.
5596 (SFILES): Remove $(srcdir)/common/target-common.c and
5597 add $(srcdir)/target/waitstatus.c.
5598 (OBS): Remove target-common.o and add waitstatus.o.
5599 (server_h): Remove $(srcdir)/../common/target-common.h and
5600 add $(srcdir)/../target/resume.h, $(srcdir)/../target/wait.h
5601 and $(srcdir)/../target/waitstatus.h.
5602 (target-common.o): Remove.
5603 (waitstatus.o): New target object file.
5604 * target.h: Do not include target-common.h and
5605 include target/resume.h, target/wait.h and
5606 target/waitstatus.h.
5607
b8e1b30e
LM
56082013-08-13 Luis Machado <lgustavo@codesourcery.com>
5609
5610 * linux-arm-low.c: Rename all occurrences of PTRACE_ARG3_TYPE
5611 to PTRACE_TYPE_ARG3.
5612 * linux-low.c: Rename all occurrences of PTRACE_ARG3_TYPE
5613 to PTRACE_TYPE_ARG3 and PTRACE_ARG4_TYPE to
5614 PTRACE_TYPE_ARG4.
5615 * linux-low.h (PTRACE_ARG3_TYPE): Rename to PTRACE_TYPE_ARG3.
5616 (PTRACE_ARG4_TYPE): Rename to PTRACE_TYPE_ARG4.
5617
7a60ad40
YQ
56182013-07-27 Jie Zhang <jie@codesourcery.com>
5619 Daniel Jacobowitz <dan@codesourcery.com>
5620 Yao Qi <yao@codesourcery.com>
5621
5622 * Makefile.in (SFILES): Add common/mips-linux-watch.c.
5623 (mips-linux-watch.o): New rule.
5624 (mips_linux_watch_h): New variable.
5625 * configure.srv <mips*-*-linux*>: Add mips-linux-watch.o to
5626 srv_tgtobj.
5627 * linux-mips-low.c: Include mips-linux-watch.h.
5628 (struct arch_process_info, struct arch_lwp_info): New.
5629 (update_watch_registers_callback): New function.
5630 (mips_linux_new_process, mips_linux_new_thread) New functions.
5631 (mips_linux_prepare_to_resume, mips_insert_point): New
5632 functions.
5633 (mips_remove_point, mips_stopped_by_watchpoint): New
5634 functions.
5635 (rsp_bp_type_to_target_hw_bp_type): New function.
5636 (mips_stopped_data_address): New function.
5637 (the_low_target): Add watchpoint support functions.
5638
de6f69ad
YQ
56392013-07-27 Yao Qi <yao@codesourcery.com>
5640
5641 * i386-low.c: Include break-common.h.
5642 (enum target_hw_bp_type): Remove.
5643
3360c0bf
LM
56442013-07-24 Luis Machado <lgustavo@codesourcery.com>
5645
5646 * Makefile.in (SFILES): /common/target-common.c.
5647 (OBS): Add target-common.o.
5648 (server_h): Add $(srcdir)/../common/target-common.h.
5649 (target-common.o): New target.
5650 * server.c (queue_stop_reply_callback): Free
5651 status string after use.
5652 * target.c (target_waitstatus_to_string): Remove.
5653 * target.h: Include target-common.h.
5654 (resume_kind): Likewise.
5655 (target_waitkind): Likewise.
5656 (target_waitstatus): Likewise.
5657 (TARGET_WNOHANG): Likewise.
5658
bd885420
YQ
56592013-07-04 Yao Qi <yao@codesourcery.com>
5660
5661 * Makefile.in (host_alias): Use @host_noncanonical@.
5662 (target_alias): Use @target_noncanonical@.
5663 * configure.ac: Use ACX_NONCANONICAL_TARGET and
5664 ACX_NONCANONICAL_HOST.
5665 * configure: Regenerated.
5666
5667 Revert:
5668 2013-06-28 Mircea Gherzan <mircea.gherzan@intel.com>
5669
5670 * configure.ac (version_host, version_target): Set and AC_SUBST them.
5671 * configure: Rebuild.
5672 * Makefile.in (version_host, version_target): Get from configure.
5673 (version.c): Use $(version_host) and $(version_target).
5674
17ef446e
PA
56752013-07-03 Pedro Alves <palves@redhat.com>
5676
5677 * Makefile.in (config.status): Depend on development.sh.
5678 * acinclude.m4: Include libmcheck.m4.
5679 * configure: Regenerate.
5680
7a9a7487
MG
56812013-07-02 Mircea Gherzan <mircea.gherzan@intel.com>
5682
5683 * win32-low.c (winapi_DebugActiveProcessStop): Move the WINAPI
5684 attribute inside the parentheses.
5685 (winapi_DebugSetProcessKillOnExit): Ditto.
5686 (winapi_DebugBreakProcess): Ditto.
5687 (winapi_GenerateConsoleCtrlEvent): Ditto.
a261b8f5 5688
49b64de6
MG
56892013-07-02 Mircea Gherzan <mircea.gherzan@intel.com>
5690
5691 * notif.h (notif_event): Add a dummy member to avoid compiler
5692 errors.
5693
d5749ee7
PA
56942013-07-01 Pedro Alves <palves@redhat.com>
5695
5696 * hostio.c (HOSTIO_PATH_MAX): Define.
5697 (require_filename, handle_open, handle_unlink, handle_readlink):
5698 Use it.
5699
d8d2a3ee
PA
57002013-07-01 Pedro Alves <palves@redhat.com>
5701
5702 * server.h: Include "pathmax.h".
5703 * linux-low.c: Don't include sys/param.h.
5704 (linux_pid_exe_is_elf_64_file): Use PATH_MAX instead of
5705 MAXPATHLEN.
5706 * win32-low.c: Don't include sys/param.h.
5707 (win32_create_inferior): Use PATH_MAX instead of MAXPATHLEN.
5708
bc7dea8d
PA
57092013-07-01 Pedro Alves <palves@redhat.com>
5710
5711 * event-loop.c: Don't check HAVE_UNISTD_H before including
5712 <unistd.h>.
5713 * gdbreplay.c: Likewise.
5714 * remote-utils.c: Likewise.
5715 * server.c: Likewise.
5716 * configure.ac: Don't check for unistd.h.
5717 * configure: Regenerate.
5718
d6c2da54
TT
57192013-06-28 Tom Tromey <tromey@redhat.com>
5720
5721 * Makefile.in (version.c): Use version.in, not
5722 common/version.in.
5723
257b6bec
MG
57242013-06-28 Mircea Gherzan <mircea.gherzan@intel.com>
5725
5726 * configure.ac (version_host, version_target): Set and AC_SUBST them.
5727 * configure: Rebuild.
5728 * Makefile.in (version_host, version_target): Get from configure.
5729 (version.c): Use $(version_host) and $(version_target).
5730
86ebe149
DK
57312013-06-10 Dmitry Kozlov <ddk@codesourcery.com>
5732
5733 Fix trace-status to output user name without trailing colon.
5734 * tracepoint.c (cmd_qtstatus): Remove unnecessary colon from user name.
5735
f30aa5af
DK
57362013-06-10 Dmitry Kozlov <ddk@codesourcery.com>
5737
5738 Fix trace-status to output proper start-time and stop-time.
5739 * tracepoint.c (cmd_qtstatus): Modify trace-status output to
5740 output start time and stop time in hex as gdb expects.
5741
28a93511
YQ
57422013-06-26 Pedro Alves <pedro@codesourcery.com>
5743
5744 * tracepoint.c (build_traceframe_info_xml): Output trace state
5745 variables present in the trace buffer.
5746
01208463
TT
57472013-06-24 Tom Tromey <tromey@redhat.com>
5748
5749 * Makefile.in (version.c): Use bfd/version.h, common/version.in,
5750 create-version.sh.
5751 (version.o): Remove.
5752 * gdbreplay.c: Include version.h.
5753 (version, host_name): Don't declare.
5754 * server.h: Include version.h.
5755 (version, host_name): Don't declare.
5756
760256f9
PA
57572013-06-12 Pedro Alves <palves@redhat.com>
5758
5759 * linux-x86-low.c (linux_is_elf64): Delete global.
5760 (x86_siginfo_fixup): Replace reference to `linux_is_elf64' global
5761 with local linux_pid_exe_is_elf_64_file use.
5762
030031ee
PA
57632013-06-11 Pedro Alves <palves@redhat.com>
5764
5765 * linux-low.c (regset_disabled, disable_regset): New functions.
5766 (regsets_fetch_inferior_registers)
5767 (regsets_store_inferior_registers): Use them.
5768 (initialize_regsets_info); Don't allocate the disabled_regsets
5769 array here.
5770 * linux-low.h (struct regsets_info) <disabled_regsets>: Extend
5771 comment.
5772
5da6eb0a
PA
57732013-06-11 Pedro Alves <palves@redhat.com>
5774
5775 * linux-low.c (initialize_regsets_info): Use xcalloc instead of
5776 xmalloc.
5777
7e5aaa09
PA
57782013-06-11 Pedro Alves <palves@redhat.com>
5779
5780 * linux-x86-low.c (initialize_low_arch): Call
5781 init_registers_x32_avx_linux.
5782
d878444c
JK
57832013-06-09 Jan Kratochvil <jan.kratochvil@redhat.com>
5784
5785 Fix compatibility with Android Bionic.
5786 * linux-low.c (linux_qxfer_libraries_svr4): Ignore first entry even if
5787 it is not empty.
5788
3aee8918
PA
57892013-06-07 Pedro Alves <palves@redhat.com>
5790
5f2b57b5 5791 PR server/14823
3aee8918
PA
5792 * Makefile.in (OBS): Add tdesc.o.
5793 (IPA_OBJS): Add tdesc-ipa.o.
5794 (tdesc-ipa.o): New rule.
5795 * ax.c (gdb_eval_agent_expr): Adjust register_size call to new
5796 interface.
5797 * linux-low.c (new_inferior): Delete.
5798 (disabled_regsets, num_regsets): Delete.
5799 (linux_add_process): Adjust to set the new per-process
5800 new_inferior flag.
5801 (linux_detach_one_lwp): Adjust to call regcache_invalidate_thread.
5802 (linux_wait_for_lwp): Adjust. Only call arch_setup if the event
5803 was a stop. When calling arch_setup, switch the current inferior
5804 to the thread that got an event.
5805 (linux_resume_one_lwp): Adjust to call regcache_invalidate_thread.
5806 (regsets_fetch_inferior_registers)
5807 (regsets_store_inferior_registers): New regsets_info parameter.
5808 Adjust to use it.
5809 (linux_register_in_regsets): New regs_info parameter. Adjust to
5810 use it.
5811 (register_addr, fetch_register, store_register): New usrregs_info
5812 parameter. Adjust to use it.
5813 (usr_fetch_inferior_registers, usr_store_inferior_registers): New
5814 parameter regs_info. Adjust to use it.
5815 (linux_fetch_registers): Get the current inferior's regs_info, and
5816 adjust to use it.
5817 (linux_store_registers): Ditto.
5818 [HAVE_LINUX_REGSETS] (initialize_regsets_info): New.
5819 (initialize_low): Don't initialize the target_regsets here. Call
5820 initialize_low_arch.
5821 * linux-low.h (target_regsets): Delete declaration.
5822 (struct regsets_info): New.
5823 (struct usrregs_info): New.
5824 (struct regs_info): New.
5825 (struct process_info_private) <new_inferior>: New field.
5826 (struct linux_target_ops): Delete the num_regs, regmap, and
5827 regset_bitmap fields. New field regs_info.
5828 [HAVE_LINUX_REGSETS] (initialize_regsets_info): Declare.
5829 * i387-fp.c (num_xmm_registers): Delete.
5830 (i387_cache_to_fsave, i387_fsave_to_cache): Adjust find_regno
5831 calls to new interface.
5832 (i387_cache_to_fxsave, i387_cache_to_xsave, i387_fxsave_to_cache)
5833 (i387_xsave_to_cache): Adjust find_regno calls to new interface.
5834 Infer the number of xmm registers from the regcache's target
5835 description.
5836 * i387-fp.h (num_xmm_registers): Delete.
5837 * inferiors.c (add_thread): Don't install the thread's regcache
5838 here.
5839 * proc-service.c (gregset_info): Fetch the current inferior's
5840 regs_info. Adjust to use it.
5841 * regcache.c: Include tdesc.h.
5842 (register_bytes, reg_defs, num_registers)
5843 (gdbserver_expedite_regs): Delete.
5844 (get_thread_regcache): If the thread doesn't have a regcache yet,
5845 create one, instead of aborting gdbserver.
5846 (regcache_invalidate_one): Rename to ...
5847 (regcache_invalidate_thread): ... this.
5848 (regcache_invalidate_one): New.
5849 (regcache_invalidate): Only invalidate registers of the current
5850 process.
5851 (init_register_cache): Add target_desc parameter, and use it.
5852 (new_register_cache): Ditto. Assert the target description has a
5853 non zero registers_size.
5854 (regcache_cpy): Add assertions. Adjust.
5855 (realloc_register_cache, set_register_cache): Delete.
5856 (registers_to_string, registers_from_string): Adjust.
5857 (find_register_by_name, find_regno, find_register_by_number)
5858 (register_cache_size): Add target_desc parameter, and use it.
5859 (free_register_cache_thread, free_register_cache_thread_one)
5860 (regcache_release, register_cache_size): New.
5861 (register_size): Add target_desc parameter, and use it.
5862 (register_data, supply_register, supply_register_zeroed)
5863 (supply_regblock, supply_register_by_name, collect_register)
5864 (collect_register_as_string, collect_register_by_name): Adjust.
5865 * regcache.h (struct target_desc): Forward declare.
5866 (struct regcache) <tdesc>: New field.
5867 (init_register_cache, new_register_cache): Add target_desc
5868 parameter.
5869 (regcache_invalidate_thread): Declare.
5870 (regcache_invalidate_one): Delete declaration.
5871 (regcache_release): Declare.
5872 (find_register_by_number, register_cache_size, register_size)
5873 (find_regno): Add target_desc parameter.
5874 (gdbserver_expedite_regs, gdbserver_xmltarget): Delete
5875 declarations.
5876 * remote-utils.c: Include tdesc.h.
5877 (outreg, prepare_resume_reply): Adjust.
5878 * server.c: Include tdesc.h.
5879 (gdbserver_xmltarget): Delete declaration.
5880 (get_features_xml, process_serial_event): Adjust.
5881 * server.h [IN_PROCESS_AGENT] (struct target_desc): Forward
5882 declare.
5883 (struct process_info) <tdesc>: New field.
5884 (ipa_tdesc): Declare.
5885 * tdesc.c: New file.
5886 * tdesc.h: New file.
5887 * tracepoint.c: Include tdesc.h.
5888 [IN_PROCESS_AGENT] (ipa_tdesc): Define.
5889 (get_context_regcache): Adjust to pass ipa_tdesc down.
5890 (do_action_at_tracepoint): Adjust to get the register cache size
5891 from the context regcache's description.
5892 (traceframe_walk_blocks): Adjust to get the register cache size
5893 from the current trace frame's description.
5894 (traceframe_get_pc): Adjust to get current trace frame's
5895 description and pass it down.
5896 (gdb_collect): Adjust to get the register cache size from the
5897 IPA's description.
5898 * linux-amd64-ipa.c (tdesc_amd64_linux): Declare.
5899 (gdbserver_xmltarget): Delete.
5900 (initialize_low_tracepoint): Set the ipa's target description.
5901 * linux-i386-ipa.c (tdesc_i386_linux): Declare.
5902 (initialize_low_tracepoint): Set the ipa's target description.
5903 * linux-x86-low.c: Include tdesc.h.
5904 [__x86_64__] (is_64bit_tdesc): New.
5905 (ps_get_thread_area, x86_get_thread_area): Use it.
5906 (i386_cannot_store_register): Rename to ...
5907 (x86_cannot_store_register): ... this. Use is_64bit_tdesc.
5908 (i386_cannot_fetch_register): Rename to ...
5909 (x86_cannot_fetch_register): ... this. Use is_64bit_tdesc.
5910 (x86_fill_gregset, x86_store_gregset): Adjust register_size calls
5911 to new interface.
5912 (target_regsets): Rename to ...
5913 (x86_regsets): ... this.
5914 (x86_get_pc, x86_set_pc): Adjust register_size calls to new
5915 interface.
5916 (x86_siginfo_fixup): Use is_64bit_tdesc.
5917 [__x86_64__] (tdesc_amd64_linux, tdesc_amd64_avx_linux)
5918 (tdesc_x32_avx_linux, tdesc_x32_linux)
5919 (tdesc_i386_linux, tdesc_i386_mmx_linux, tdesc_i386_avx_linux):
5920 Declare.
5921 (x86_linux_update_xmltarget): Delete.
5922 (I386_LINUX_XSAVE_XCR0_OFFSET): Define.
5923 (have_ptrace_getfpxregs, have_ptrace_getregset): New.
5924 (AMD64_LINUX_USER64_CS): New.
5925 (x86_linux_read_description): New, based on
5926 x86_linux_update_xmltarget.
5927 (same_process_callback): New.
5928 (x86_arch_setup_process_callback): New.
5929 (x86_linux_update_xmltarget): New.
5930 (x86_regsets_info): New.
5931 (amd64_linux_regs_info): New.
5932 (i386_linux_usrregs_info): New.
5933 (i386_linux_regs_info): New.
5934 (x86_linux_regs_info): New.
5935 (x86_arch_setup): Reimplement.
5936 (x86_install_fast_tracepoint_jump_pad): Use is_64bit_tdesc.
5937 (x86_emit_ops): Ditto.
5938 (the_low_target): Adjust. Install x86_linux_regs_info,
5939 x86_cannot_fetch_register, and x86_cannot_store_register.
5940 (initialize_low_arch): New.
5941 * linux-ia64-low.c (tdesc_ia64): Declare.
5942 (ia64_fetch_register): Adjust.
5943 (ia64_usrregs_info, regs_info): New globals.
5944 (ia64_regs_info): New function.
5945 (the_low_target): Adjust.
5946 (initialize_low_arch): New function.
5947 * linux-sparc-low.c (tdesc_sparc64): Declare.
5948 (sparc_fill_gregset_to_stack, sparc_store_gregset_from_stack):
5949 Adjust.
5950 (sparc_arch_setup): New function.
5951 (sparc_regsets_info, sparc_usrregs_info, regs_info): New globals.
5952 (the_low_target): Adjust.
5953 (initialize_low_arch): New function.
5954 * linux-ppc-low.c (tdesc_powerpc_32l, tdesc_powerpc_altivec32l)
5955 (tdesc_powerpc_cell32l, tdesc_powerpc_vsx32l)
5956 (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_altivec32l)
5957 (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_e500l)
5958 (tdesc_powerpc_64l, tdesc_powerpc_altivec64l)
5959 (tdesc_powerpc_cell64l, tdesc_powerpc_vsx64l)
5960 (tdesc_powerpc_isa205_64l, tdesc_powerpc_isa205_altivec64l)
5961 (tdesc_powerpc_isa205_vsx64l): Declare.
5962 (ppc_cannot_store_register, ppc_collect_ptrace_register)
5963 (ppc_supply_ptrace_register, parse_spufs_run, ppc_get_pc)
5964 (ppc_set_pc, ppc_get_hwcap): Adjust.
5965 (ppc_usrregs_info): Forward declare.
5966 (!__powerpc64__) ppc_regmap_adjusted: New global.
5967 (ppc_arch_setup): Adjust to the current process'es target
5968 description.
5969 (ppc_fill_vsxregset, ppc_store_vsxregset, ppc_fill_vrregset)
5970 (ppc_store_vrregset, ppc_fill_evrregset, ppc_store_evrregse)
5971 (ppc_store_evrregset): Adjust.
5972 (target_regsets): Rename to ...
5973 (ppc_regsets): ... this, and make static.
5974 (ppc_usrregs_info, ppc_regsets_info, regs_info): New globals.
5975 (ppc_regs_info): New function.
5976 (the_low_target): Adjust.
5977 (initialize_low_arch): New function.
5978 * linux-s390-low.c (tdesc_s390_linux32, tdesc_s390_linux32v1)
5979 (tdesc_s390_linux32v2, tdesc_s390_linux64, tdesc_s390_linux64v1)
5980 (tdesc_s390_linux64v2, tdesc_s390x_linux64, tdesc_s390x_linux64v1)
5981 (tdesc_s390x_linux64v2): Declare.
5982 (s390_collect_ptrace_register, s390_supply_ptrace_register)
5983 (s390_fill_gregset, s390_store_last_break): Adjust.
5984 (target_regsets): Rename to ...
5985 (s390_regsets): ... this, and make static.
5986 (s390_get_pc, s390_set_pc): Adjust.
5987 (s390_get_hwcap): New target_desc parameter, and use it.
5988 [__s390x__] (have_hwcap_s390_high_gprs): New global.
5989 (s390_arch_setup): Adjust to set the current process'es target
5990 description. Don't adjust the regmap.
5991 (s390_usrregs_info, s390_regsets_info, regs_info): New globals.
5992 [__s390x__] (s390_usrregs_info_3264, s390_regsets_info_3264)
5993 (regs_info_3264): New globals.
5994 (s390_regs_info): New function.
5995 (the_low_target): Adjust.
5996 (initialize_low_arch): New function.
5997 * linux-mips-low.c (tdesc_mips_linux, tdesc_mips_dsp_linux)
5998 (tdesc_mips64_linux, tdesc_mips64_dsp_linux): Declare.
5999 [__mips64] (init_registers_mips_linux)
6000 (init_registers_mips_dsp_linux): Delete defines.
6001 [__mips64] (tdesc_mips_linux, tdesc_mips_dsp_linux): New defines.
6002 (have_dsp): New global.
6003 (mips_read_description): New, based on mips_arch_setup.
6004 (mips_arch_setup): Reimplement.
6005 (get_usrregs_info): New function.
6006 (mips_cannot_fetch_register, mips_cannot_store_register)
6007 (mips_get_pc, mips_set_pc, mips_fill_gregset, mips_store_gregset)
6008 (mips_fill_fpregset, mips_store_fpregset): Adjust.
6009 (target_regsets): Rename to ...
6010 (mips_regsets): ... this, and make static.
6011 (mips_regsets_info, mips_dsp_usrregs_info, mips_usrregs_info)
6012 (dsp_regs_info, regs_info): New globals.
6013 (mips_regs_info): New function.
6014 (the_low_target): Adjust.
6015 (initialize_low_arch): New function.
6016 * linux-arm-low.c (tdesc_arm, tdesc_arm_with_iwmmxt)
6017 (tdesc_arm_with_vfpv2, tdesc_arm_with_vfpv3, tdesc_arm_with_neon):
6018 Declare.
6019 (arm_fill_vfpregset, arm_store_vfpregset): Adjust.
6020 (arm_read_description): New, with bits factored from
6021 arm_arch_setup.
6022 (arm_arch_setup): Reimplement.
6023 (target_regsets): Rename to ...
6024 (arm_regsets): ... this, and make static.
6025 (arm_regsets_info, arm_usrregs_info, regs_info): New globals.
6026 (arm_regs_info): New function.
6027 (the_low_target): Adjust.
6028 (initialize_low_arch): New function.
6029 * linux-m68k-low.c (tdesc_m68k): Declare.
6030 (target_regsets): Rename to ...
6031 (m68k_regsets): ... this, and make static.
6032 (m68k_regsets_info, m68k_usrregs_info, regs_info): New globals.
6033 (m68k_regs_info): New function.
6034 (m68k_arch_setup): New function.
6035 (the_low_target): Adjust.
6036 (initialize_low_arch): New function.
6037 * linux-sh-low.c (tdesc_sharch): Declare.
6038 (target_regsets): Rename to ...
6039 (sh_regsets): ... this, and make static.
6040 (sh_regsets_info, sh_usrregs_info, regs_info): New globals.
6041 (sh_regs_info, sh_arch_setup): New functions.
6042 (the_low_target): Adjust.
6043 (initialize_low_arch): New function.
6044 * linux-bfin-low.c (tdesc_bfin): Declare.
6045 (bfin_arch_setup): New function.
6046 (bfin_usrregs_info, regs_info): New globals.
6047 (bfin_regs_info): New function.
6048 (the_low_target): Adjust.
6049 (initialize_low_arch): New function.
6050 * linux-cris-low.c (tdesc_cris): Declare.
6051 (cris_arch_setup): New function.
6052 (cris_usrregs_info, regs_info): New globals.
6053 (cris_regs_info): New function.
6054 (the_low_target): Adjust.
6055 (initialize_low_arch): New function.
6056 * linux-cris-low.c (tdesc_crisv32): Declare.
6057 (cris_arch_setup): New function.
6058 (cris_regsets_info, cris_usrregs_info, regs_info): New globals.
6059 (cris_regs_info): New function.
6060 (the_low_target): Adjust.
6061 (initialize_low_arch): New function.
6062 * linux-m32r-low.c (tdesc_m32r): Declare.
6063 (m32r_arch_setup): New function.
6064 (m32r_usrregs_info, regs_info): New globals.
6065 (m32r_regs_info): Adjust.
6066 (initialize_low_arch): New function.
6067 * linux-tic6x-low.c (tdesc_tic6x_c64xp_linux)
6068 (tdesc_tic6x_c64x_linux, tdesc_tic6x_c62x_linux): Declare.
6069 (tic6x_usrregs_info): Forward declare.
6070 (tic6x_read_description): New function, based on ...
6071 (tic6x_arch_setup): ... this. Reimplement.
6072 (target_regsets): Rename to ...
6073 (tic6x_regsets): ... this, and make static.
6074 (tic6x_regsets_info, tic6x_usrregs_info, regs_info): New globals.
6075 (tic6x_regs_info): New function.
6076 (the_low_target): Adjust.
6077 (initialize_low_arch): New function.
6078 * linux-xtensa-low.c (tdesc_xtensa): Declare.
6079 (xtensa_fill_gregset, xtensa_store_gregset): Adjust.
6080 (target_regsets): Rename to ...
6081 (xtensa_regsets): ... this, and make static.
6082 (xtensa_regsets_info, xtensa_usrregs_info, regs_info): New
6083 globals.
6084 (xtensa_arch_setup, xtensa_regs_info): New functions.
6085 (the_low_target): Adjust.
6086 (initialize_low_arch): New function.
6087 * linux-nios2-low.c (tdesc_nios2_linux): Declare.
6088 (nios2_arch_setup): Set the current process'es tdesc.
6089 (target_regsets): Rename to ...
6090 (nios2_regsets): ... this.
6091 (nios2_regsets_info, nios2_usrregs_info, regs_info): New globals.
6092 (nios2_regs_info): New function.
6093 (the_low_target): Adjust.
6094 (initialize_low_arch): New function.
a261b8f5
PA
6095 * linux-aarch64-low.c (tdesc_aarch64): Declare.
6096 (aarch64_arch_setup): Set the current process'es tdesc.
6097 (target_regsets): Rename to ...
6098 (aarch64_regsets): ... this.
6099 (aarch64_regsets_info, aarch64_usrregs_info, regs_info): New globals.
6100 (aarch64_regs_info): New function.
6101 (the_low_target): Adjust.
6102 (initialize_low_arch): New function.
3aee8918
PA
6103 * linux-tile-low.c (tdesc_tilegx, tdesc_tilegx32): Declare
6104 globals.
6105 (target_regsets): Rename to ...
6106 (tile_regsets): ... this.
6107 (tile_regsets_info, tile_usrregs_info, regs_info): New globals.
6108 (tile_regs_info): New function.
6109 (tile_arch_setup): Set the current process'es tdesc.
6110 (the_low_target): Adjust.
6111 (initialize_low_arch): New function.
6112 * spu-low.c (tdesc_spu): Declare.
6113 (spu_create_inferior, spu_attach): Set the new process'es tdesc.
6114 * win32-arm-low.c (tdesc_arm): Declare.
6115 (arm_arch_setup): New function.
6116 (the_low_target): Install arm_arch_setup instead of
6117 init_registers_arm.
6118 * win32-i386-low.c (tdesc_i386, tdesc_amd64): Declare.
6119 (init_windows_x86): Rename to ...
6120 (i386_arch_setup): ... this. Set `win32_tdesc'.
6121 (the_low_target): Adjust.
6122 * win32-low.c (win32_tdesc): New global.
6123 (child_add_thread): Don't create the thread cache here.
6124 (do_initial_child_stuff): Set the new process'es tdesc.
6125 * win32-low.h (struct target_desc): Forward declare.
6126 (win32_tdesc): Declare.
6127 * lynx-i386-low.c (tdesc_i386): Declare global.
6128 (lynx_i386_arch_setup): Set `lynx_tdesc'.
6129 * lynx-low.c (lynx_tdesc): New global.
6130 (lynx_add_process): Set the new process'es tdesc.
6131 * lynx-low.h (struct target_desc): Forward declare.
6132 (lynx_tdesc): Declare global.
6133 * lynx-ppc-low.c (tdesc_powerpc_32): Declare global.
6134 (lynx_ppc_arch_setup): Set `lynx_tdesc'.
6135 * nto-low.c (nto_tdesc): New global.
6136 (do_attach): Set the new process'es tdesc.
6137 * nto-low.h (struct target_desc): Forward declare.
6138 (nto_tdesc): Declare.
6139 * nto-x86-low.c (tdesc_i386): Declare.
6140 (nto_x86_arch_setup): Set `nto_tdesc'.
6141
b1fbec62
GB
61422013-06-04 Gary Benson <gbenson@redhat.com>
6143
6144 * server.c (handle_query): Add "augmented-libraries-svr4-read+"
6145 to qSupported response when appropriate.
6146 (handle_qxfer_libraries_svr4): Allow qXfer:libraries-svr4:read
6147 with nonzero-length annex.
6148 * linux-low.c (linux_qxfer_libraries_svr4): Parse and handle
6149 arguments supplied in annex.
6150
d1ec4ce7
DE
61512013-05-31 Doug Evans <dje@google.com>
6152
ac44adcb 6153 PR server/15594
d1ec4ce7
DE
6154 * linux-x86-low.c (ps_get_thread_area): Properly extend address to
6155 64 bits in 64-cross-32 environment.
6156
9b25f2d3
PA
61572013-05-28 Pedro Alves <palves@redhat.com>
6158
6159 * Makefile.in (clean): Remove reference to aarch64-without-fpu.c.
6160 (aarch64-without-fpu.c): Delete rule.
6161 * configure.srv (aarch64*-*-linux*): Remove references to
6162 aarch64-without-fpu.o and aarch64-without-fpu.xml.
6163 * linux-aarch64-low.c (init_registers_aarch64_without_fpu): Remove
6164 declaration.
6165
6740dc9c
PA
61662013-05-24 Pedro Alves <palves@redhat.com>
6167
6168 * server.c (handle_v_cont) <vCont;r>: Use unpack_varlen_hex
6169 instead of strchr/decode_address. Error if the range isn't split
6170 with a ','. Don't assume there's be a ':' in the action.
6171
c2d6af84
PA
61722013-05-23 Yao Qi <yao@codesourcery.com>
6173 Pedro Alves <palves@redhat.com>
6174
6175 * linux-low.c (lwp_in_step_range): New function.
6176 (linux_wait_1): If the thread was range stepping and stopped
6177 outside the stepping range, report the stop to GDB. Otherwise,
6178 continue stepping. Add range stepping debug output.
6179 (linux_set_resume_request): Copy the step range from the resume
6180 request to the lwp.
6181 (linux_supports_range_stepping): New.
6182 (linux_target_ops) <supports_range_stepping>: Set to
6183 linux_supports_range_stepping.
6184 * linux-low.h (struct linux_target_ops)
6185 <supports_range_stepping>: New field.
6186 (struct lwp_info) <step_range_start, step_range_end>: New fields.
6187 * linux-x86-low.c (x86_supports_range_stepping): New.
6188 (the_low_target) <supports_range_stepping>: Set to
6189 x86_supports_range_stepping.
6190 * server.c (handle_v_cont): Handle 'r' action.
6191 (handle_v_requests): Append ";r" if the target supports range
6192 stepping.
6193 * target.h (struct thread_resume) <step_range_start,
6194 step_range_end>: New fields.
6195 (struct target_ops) <supports_range_stepping>:
6196 New field.
6197 (target_supports_range_stepping): New macro.
6198
58794e1a
JB
61992013-05-17 Joel Brobecker <brobecker@adacore.com>
6200
6201 * lynx-low.c (lynx_resume): Fix null_ptid/minus_one_ptid
6202 confusion in comment.
6203
d631c5a7
JB
62042013-05-17 Joel Brobecker <brobecker@adacore.com>
6205
6206 * lynx-low.c (struct process_info_private): New type.
6207 (lynx_add_process): New function.
6208 (lynx_create_inferior, lynx_attach): Replace calls to
6209 add_process by calls to lynx_add_process.
6210 (lynx_resume): If PTID is null, then try using
6211 current_process()->private->last_wait_event_ptid.
6212 Add comments.
6213 (lynx_clear_inferiors): Delete. The contents of that function
6214 has been inlined in lynx_mourn;
6215 (lynx_wait_1): Save the ptid in the process's private data.
6216 (lynx_mourn): Free the process' private data. Replace call
6217 to lynx_clear_inferiors by call to clear_inferiors.
6218
96f7a20f
YQ
62192013-05-17 Yao Qi <yao@codesourcery.com>
6220
6221 * i386-low.c (i386_length_and_rw_bits): Move the comment to
6222 the right place.
6223
db0dfaa0
LM
62242013-05-16 Luis Machado <lgustavo@codesourcery.com>
6225
6226 * linux-low.c: Move definition checks upwards for PT_TEXT_ADDR,
6227 PT_DATA_ADDR and PT_TEXT_END_ADDR. Update comments.
6228 (linux_read_offsets): Remove PT_TEXT_ADDR, PT_DATA_ADDR and
6229 PT_TEXT_END_ADDR guards. Update comments.
6230 (linux_target_op) <read_offsets>: Conditionally define to
6231 linux_read_offsets if the target is UCLIBC and if it defines
6232 PT_TEXT_ADDR, PT_DATA_ADDR and PT_TEXT_END_ADDR.
6233
68f5f838
SL
62342013-05-06 Sandra Loosemore <sandra@codesourcery.com>
6235 Andrew Jenner <andrew@codesourcery.com>
6236
6237 * Makefile.in (SFILES): Add linux-nios2-low.c.
6238 (clean): Add action to delete nios2-linux.c.
6239 (nios2-linux.c): New rule.
6240 * configure.srv: Add nios2*-*-linux*.
6241 * linux-nios2-low.c: New.
6242
1ebff1fd
HAQ
62432013-05-03 Hafiz Abid Qadeer <abidh@codesourcery.com>
6244
6245 * tracepoint.c (cmd_qtinit): Call 'stop_tracing'.
6246
f6150862
HZ
62472013-04-25 Hui Zhu <hui@codesourcery.com>
6248
6249 PR gdb/15186
f6150862
HZ
6250 * ax.c (ax_printf): Add fflush.
6251
614c279d
TT
62522013-04-22 Tom Tromey <tromey@redhat.com>
6253
6254 * Makefile.in (SFILES): Add filestuff.c.
6255 (OBS): Add filestuff.o.
6256 (filestuff.o): New target.
6257 * config.in, configure: Rebuild.
6258 * configure.ac: Check for fdwalk, pipe2.
6259
7d4e5717
PA
62602013-04-17 Pedro Alves <palves@redhat.com>
6261
6262 * configure.ac (USE_THREAD_DB): Delete variable.
6263 (if test "$srv_linux_thread_db" = "yes"): AC_DEFINE USE_THREAD_DB.
6264 Don't AC_SUBST USE_THREAD_DB.
6265 * Makefile.in (INTERNAL_CFLAGS): Remove @USE_THREAD_DB@.
6266 * config.in, configure: Regenerate.
6267
d5c93e41
PA
62682013-04-16 Pedro Alves <palves@redhat.com>
6269
6270 * linux-low.h (struct lwp_info) <thread_known>: Move under
6271 the USE_THREAD_DB #ifdef.
6272
04f5fe89
PA
62732013-04-16 Pedro Alves <palves@redhat.com>
6274
6275 * Makefile.in (INTERNAL_CFLAGS): Add @USE_THREAD_DB@.
6276 (linux-low.o): Delete rule.
6277 * linux-low.h: Always include "gdb_thread_db.h" instead of
6278 conditionally including thread_db.h.
6279 (struct lwp_info) <th>: Guard with #ifdef USE_THREAD_DB instead of
6280 HAVE_THREAD_DB_H.
6281
480b27bf
JK
62822013-04-07 Jan Kratochvil <jan.kratochvil@redhat.com>
6283
6284 * Makefile.in (install-only): Fix make install regression.
6285
43662968
JK
62862013-04-05 Jan Kratochvil <jan.kratochvil@redhat.com>
6287
6288 Convert man pages to texinfo, new gdbinit.5 texinfo page.
6289 * Makefile.in (install-only): Remove $(man1dir) and gdbserver.1
6290 installation.
6291 * gdbserver.1: Remove.
6292
3e74e146
PA
62932013-03-22 Pedro Alves <palves@redhat.com>
6294
6295 * linux-low.c (handle_extended_wait): Don't call
6296 linux_enable_event_reporting.
6297
a8347a2a
TT
62982013-03-15 Tony Theodore <tonyt@logyst.com>
6299
6300 PR build/9098:
6301 * Makefile.in (SHELL): Use @SHELL@.
6302
eeb56fa7
SDJ
63032013-03-14 Sergio Durigan Junior <sergiodj@redhat.com>
6304
6305 * tracepoint.c (cmd_qtv): Initialize `val' with zero, silencing
6306 compiler warning.
6307
4fa7e2ff
JB
63082013-03-13 Joel Brobecker <brobecker@adacore.com>
6309
6310 * linux-low.c (linux_target_ops) [!HAVE_LINUX_BTRACE]:
6311 Remove extraneous NULL element.
6312
8ddb1965
YQ
63132013-03-13 Yao Qi <yao@codesourcery.com>
6314
6315 * tracepoint.c (traceframe_read_tsv): Look for the last matched
6316 'V' block in trace frame.
6317
9accd112
MM
63182013-03-11 Markus Metzger <markus.t.metzger@intel.com>
6319
6320 * target.h (struct target_ops): Add btrace ops.
6321 (target_supports_btrace): New macro.
6322 (target_enable_btrace): New macro.
6323 (target_disable_btrace): New macro.
6324 (target_read_btrace): New macro.
6325 * gdbthread.h (struct thread_info): Add btrace field.
6326 * server.c: Include btrace-common.h.
6327 (handle_btrace_general_set): New function.
6328 (handle_btrace_enable): New function.
6329 (handle_btrace_disable): New function.
6330 (handle_general_set): Call handle_btrace_general_set.
6331 (handle_qxfer_btrace): New function.
6332 (struct qxfer qxfer_packets[]): Add btrace entry.
6333 * inferiors.c (remove_thread): Disable btrace.
6334 * linux-low: Include linux-btrace.h.
6335 (linux_low_enable_btrace): New function.
6336 (linux_low_read_btrace): New function.
6337 (linux_target_ops): Add btrace ops.
6338 * configure.srv (i[34567]86-*-linux*): Add linux-btrace.o.
6339 Add srv_linux_btrace=yes.
6340 (x86_64-*-linux*): Add linux-btrace.o.
6341 Add srv_linux_btrace=yes.
6342 * configure.ac: Define HAVE_LINUX_BTRACE.
6343 * config.in: Regenerated.
6344 * configure: Regenerated.
6345
5cc22e4c
MM
63462013-03-11 Markus Metzger <markus.t.metzger@intel.com>
6347
6348 * server.c (handle_qxfer): Preserve error message if -3 is
6349 returned.
6350 (qxfer): Document the -3 return value.
6351
7c97f91e
MM
63522013-03-11 Markus Metzger <markus.t.metzger@intel.com>
6353
6354 * Makefile.in (SFILES): Add $(srcdir)/common/linux-btrace.c.
6355 (linux_btrace_h): New variable.
6356 (linux-btrace.o): New rule.
6357
be9a119c 63582013-03-08 Stan Shebs <stan@codesourcery.com>
f6f899bf
HAQ
6359 Hafiz Abid Qadeer <abidh@codesourcery.com>
6360
6361 * tracepoint.c (trace_buffer_size): New global.
6362 (DEFAULT_TRACE_BUFFER_SIZE): New define.
6363 (init_trace_buffer): Change to one-argument function. Allocate
6364 trace buffer memory.
6365 (handle_tracepoint_general_set): Call cmd_bigqtbuffer_size to
6366 handle QTBuffer:size packet.
6367 (cmd_bigqtbuffer_size): New function.
6368 (initialize_tracepoint): Call init_trace_buffer with
6369 DEFAULT_TRACE_BUFFER_SIZE.
6370 * server.c (handle_query): Add QTBuffer:size in the
6371 supported packets.
6372
e64f7499
YQ
63732013-03-07 Yao Qi <yao@codesourcery.com>
6374
6375 * tracepoint.c (cur_action, cur_step_action): Make them unsigned.
6376 (cmd_qtfp): Initialize cur_action and cur_step_action 0 instead
6377 of -1.
6378 (cmd_qtsp): Adjust condition. Do post increment.
6379 Set cur_action and cur_step_action back to 0.
6380
f0ae6fc3
PA
63812013-03-07 Jeremy Bennett <jeremy.bennett@embecosm.com>
6382
6383 PR server/15236
6384 * linux-low.c (linux_write_memory): Return early success if LEN is
6385 zero.
6386
b5b0b0af
CV
63872013-03-05 Corinna Vinschen <vinschen@redhat.de>
6388
334ad4a8 6389 * configure.srv: Add x86_64-*-cygwin* as target.
b5b0b0af 6390
589bc927
TT
63912013-02-28 Tom Tromey <tromey@redhat.com>
6392
6393 * configure.ac: Invoke AC_SYS_LARGEFILE.
6394 * configure, config.in: Rebuild.
6395
dfe07582
CV
63962013-02-28 Corinna Vinschen <vinschen@redhat.com>
6397
6398 * win32-low.c: Throughout, fix format strings and casts of
6399 printf-like functions to avoid type related warnings on all
6400 platforms.
6401 (get_child_debug_event): Print dwDebugEventCode as hex since
6402 that's how it's usually documented.
6403
736cd585
YQ
64042013-02-28 Yao Qi <yao@codesourcery.com>
6405
6406 * tracepoint.c (cmd_qtbuffer): Call phex_nz instead of
6407 pulongest.
6408
e1f58301
JW
64092013-02-27 Jiong Wang <jiwang@tilera.com>
6410
6411 * Makefile.in (clean): Remove reg-tilegx.c, reg-tilegx32.c.
6412 (reg-tilegx32.c): New rule.
6413 * configure.srv (tilegx-*-linux*): Add reg-tilegx32.o to srv_regobj.
6414 * linux-tile-low.c (tile_arch_setup): New function. Invoke
6415 different register info initializer according to elf class.
6416 (init_registers_tilgx32): New function. The tilegx32 register info
6417 initializer.
6418 (tile_fill_gregset): Use "uint_reg_t" to represent register size.
6419 (tile_store_gregset): Likewise.
6420
d171ca78
YQ
64212013-02-27 Yao Qi <yao@codesourcery.com>
6422
6423 * server.c (process_point_options): Print debug message when
6424 debug_threads is true.
6425
282bbdf3
YQ
64262013-02-26 Yao Qi <yao@codesourcery.com>
6427
6428 * tracepoint.c (cmd_qtbuffer): Don't set '\0' in OWN_BUF.
6429
aca22551
PA
64302013-02-19 Pedro Alves <palves@redhat.com>
6431 Kai Tietz <ktietz@redhat.com>
6432
6433 PR gdb/15161
6434
6435 * server.c (handle_query) <CRC check>: Use unpack_varlen_hex
6436 instead of strtoul to extract address from packet.
6437 (process_serial_event) <'z'>: Likewise.
6438
4f3cee1c
YQ
64392013-02-18 Yao Qi <yao@codesourcery.com>
6440
6441 * linux-bfin-low.c (the_low_target): Use NULL instead of 0.
6442
8e1d55a3
PA
64432013-02-14 Pedro Alves <palves@redhat.com>
6444
6445 Plug memory leak.
6446
6447 * tracepoint.c (cmd_qtnotes): Free TRACING_USER_NAME,
6448 TRACING_NOTES and TRACING_STOP_NOTE before clobbering.
6449
458820da
PA
64502013-02-14 Pedro Alves <palves@redhat.com>
6451
6452 * tracepoint.c (cmd_qtdpsrc): Use savestring.
6453
baea0dae
PA
64542013-02-14 Pedro Alves <palves@redhat.com>
6455
6456 * tracepoint.c (save_string): Delete.
6457 (add_tracepoint_action): Use savestring instead of save_string.
6458
0b1afbb3
PA
64592013-02-12 Pedro Alves <palves@redhat.com>
6460
6461 * linux-xtensa-low.c: Ditto.
6462 * xtensa-xtregs.c: Ditto.
6463
8a4ac37e
PA
64642013-02-12 Sanimir Agovic <sanimir.agovic@intel.com>
6465
6466 * thread-db.c (thread_db_get_tls_address): NULL pointer check
6467 thread_db.
6468
148de6bb
MS
64692013-02-07 Marcus Shawcroft <marcus.shawcroft@arm.com>
6470
6471 * linux-aarch64-low.c (aarch64_arch_setup): Clamp
6472 aarch64_num_wp_regs and aarch64_num_bp_regs to
6473 AARCH64_HWP_MAX_NUM and AARCH64_HBP_MAX_NUM respectively.
6474
55fac6e0
MS
64752013-02-07 Marcus Shawcroft <marcus.shawcroft@arm.com>
6476
6477 * linux-aarch64-low.c (ps_get_thread_area): Replace
6478 PTRACE_GET_THREAD_AREA with PTRACE_GETREGSET.
6479
176eb98c
MS
64802013-02-04 Jim MacArthur <jim.macarthur@arm.com>
6481 Marcus Shawcroft <marcus.shawcroft@arm.com>
6482 Nigel Stephens <nigel.stephens@arm.com>
6483 Yufeng Zhang <yufeng.zhang@arm.com>
6484
6485 * Makefile.in (clean): Remove aarch64.c and aarch64-without-fpu.c.
6486 (aarch64.c, aarch64-without-fpu.c): New targets.
6487 * configure.srv (aarch64*-*-linux*): New.
6488 * linux-aarch64-low.c: New file.
6489
56f7af9c
MS
64902013-02-04 Marcus Shawcroft <marcus.shawcroft@arm.com>
6491
43aaf8b6 6492 * linux-low.c (handle_extended_wait, linux_create_inferior)
56f7af9c
MS
6493 (linux_attach_lwp_1, linux_kill_one_lwp, linux_attach_one_lwp)
6494 (dequeue_one_deferred_signal, linux_resume_one_thread)
6495 (fetch_register, linux_write_memory, linux_enable_event_reporting)
6496 (linux_tracefork_grandchild, linux_test_for_tracefork)
6497 (linux_read_offsets, linux_xfer_siginfo, linux_xfer_siginfo): Add
6498 PTRACE_ARG3_TYPE and PTRACE_ARG4_TYPE cast to ptrace arguments
6499 where the argument is 0.
6500
60f662b0
YQ
65012013-01-25 Yao Qi <yao@codesourcery.com>
6502
6503 * event-loop.c: Include "queue.h".
6504 (gdb_event_p): New typedef.
6505 (struct gdb_event) <next_event>: Remove.
6506 (event_queue): Change to QUEUE(gdb_event_p).
6507 (async_queue_event): Remove.
6508 (gdb_event_xfree): New.
6509 (initialize_event_loop): New.
6510 (process_event): Use API from QUEUE.
6511 (wait_for_event): Likewise.
6512 * server.c (main): Call initialize_event_loop.
6513 * server.h (initialize_event_loop): Declare.
6514
5ae4861a
YQ
65152013-01-18 Yao Qi <yao@codesourcery.com>
6516
6517 * ax.h (struct eval_agent_expr_context): New.
6518 (gdb_eval_agent_expr): Update declaration.
6519 * ax.c (gdb_eval_agent_expr): Remove argument REGCACHE and
6520 TFRAME. Add new argument CTX.
6521 * server.h (struct eval_agent_expr_context): Declare.
6522 (agent_mem_read, agent_tsv_read): Update declaration.
6523 (agent_mem_read_string): Likewise.
6524 * tracepoint.c (eval_tracepoint_agent_expr): Remove.
6525 (add_traceframe_block): Add new argument TPOINT.
6526 Increase TPOINT->traceframe_usage.
6527 (do_action_at_tracepoint): Call gdb_eval_agent_expr instead of
6528 eval_tracepoint_agent_expr.
6529 (condition_true_at_tracepoint): Likewise.
6530 (agent_mem_read): Remove argument TFRAME. Add argument CTX.
6531 (agent_mem_read_string, agent_tsv_read): Likewise.
6532
85e00e85
YQ
65332013-01-16 Yao Qi <yao@codesourcery.com>
6534
6535 * linux-low.c (linux_resume_one_lwp): Don't check
6536 'lwp->bp_reinsert != 0'.
6537
4039cf45
JB
65382013-01-07 Joel Brobecker <brobecker@adacore.com>
6539 Pedro Alves <palves@redhat.com>
6540
6541 * lynx-low.c (ptrace_request_to_str): Define a temporary
6542 macro and use it to simplify this function's implementation.
6543
9044dee2
JB
65442013-01-07 Joel Brobecker <brobecker@adacore.com>
6545
6546 * lynx-low.c (lynx_resume): Call perror_with_name if lynx_ptrace
6547 sets errno.
6548
e6352c8f
JB
65492013-01-07 Joel Brobecker <brobecker@adacore.com>
6550
6551 * configure.srv (i[34567]86-*-lynxos*): Set srv_xmlfiles.
6552
50681a27
JB
65532013-01-07 Joel Brobecker <brobecker@adacore.com>
6554
6555 * configure.srv (powerpc-*-lynxos*): Set srv_xmlfiles.
6556
3f6e77ef
JB
65572013-01-07 Joel Brobecker <brobecker@adacore.com>
6558
6559 * lynx-low.c (lynx_resume): Use the resume_info parameter
6560 to determine the ptid for the lynx_ptrace call, unless
6561 it is equal to minus_one_ptid, in which case we use the
6562 ptid of the current_inferior.
6563 (lynx_wait_1): After having received a thread create/exit
6564 event, resume the inferior's execution using the signaling
6565 thread's ptid, rather than the old ptid.
6566
7fda33ae
JB
65672013-01-07 Joel Brobecker <brobecker@adacore.com>
6568
6569 * lynx-low.c (lynx_resume): Delete variable ret.
6570
b9786c74
JB
65712013-01-01 Joel Brobecker <brobecker@adacore.com>
6572
6573 * gdbreplay.c (gdbreplay_version): Update copyright year.
6574 * server.c (gdbserver_version): Likewise.
6575
8b93d60f
JB
65762012-12-17 Joel Brobecker <brobecker@adacore.com>
6577
6578 * lynx-low.c (lynx_wait_1): Add debug trace before adding
6579 new thread.
6580
037335a7
JB
65812012-12-17 Joel Brobecker <brobecker@adacore.com>
6582
6583 * lynx-low.c (ptrace_request_to_str): Add handling for
6584 PTRACE_GETTRACESIG.
6585
52d4cbd8
JB
65862012-12-17 Joel Brobecker <brobecker@adacore.com>
6587
6588 * lynx-low.c (lynx_attach): Delete variable new_process.
6589
ab8f6ca9
JB
65902012-12-17 Joel Brobecker <brobecker@adacore.com>
6591
6592 * lynx-low.c (lynx_create_inferior): Delete variable
6593 new_process.
6594
78cbc024
JB
65952012-12-17 Joel Brobecker <brobecker@adacore.com>
6596
6597 * lynx-low.c (ptrace_request_to_str): Do not handle
6598 PTRACE_GETTHREADLIST if this macro does not exist.
6599
14a00470
YQ
66002012-12-15 Yao Qi <yao@codesourcery.com>
6601
6602 * Makefile.in (OBS): Add notif.o.
6603 * notif.c, notif.h: New.
6604 * server.c: Include "notif.h".
6605 (struct vstop_notif) <next>: Remove.
6606 <base>: New field.
6607 (queue_stop_reply): Update.
6608 (push_event, send_next_stop_reply): Remove.
6609 (discard_queued_stop_replies): Update.
6610 (notif_stop): New variable.
6611 (handle_v_stopped): Remove.
6612 (handle_v_requests): Don't call handle_v_stopped. Call
6613 handle_ack_notif instead.
6614 (queue_stop_reply_callback): Call notif_event_enque instead
6615 of queue_stop_reply.
6616 (handle_status): Don't call send_next_stop_reply, call
6617 notif_write_event instead.
6618 (kill_inferior_callback): Likewise.
6619 (detach_or_kill_inferior_callback): Likewise.
6620 (main): Call initialize_notif.
6621 (process_serial_event): Call QUEUE_is_empty.
6622 (handle_target_event): Call notif_push instead of push event.
6623 * server.h (push_event): Remove declaration.
6624
61c125b9
TT
66252012-12-10 Tom Tromey <tromey@redhat.com>
6626
6627 * Makefile.in (DEPMODE, DEPDIR, depcomp, COMPILE.pre)
6628 (COMPILE.post, COMPILE, POSTCOMPILE, IPAGENT_COMPILE): New
6629 macros.
6630 (.c.o): Rewrite.
6631 (ax-ipa.o, tracepoint-ipa.o, utils-ipa.o, format-ipa.o)
6632 (common-utils-ipa.o, remote-utils-ipa.o, regcache-ipa.o)
6633 (i386-linux-ipa.o, linux-i386-ipa.o, linux-amd64-ipa.o)
6634 (amd64-linux-ipa.o, ax.o): Rewrite.
6635 (event-loop.o, hostio.o, hostio-errno.o, inferiors.o, mem-break.o)
6636 (proc-service.o, regcache.o, remote-utils.o, server.o, target.o)
6637 (thread-db.o, tracepoint.o, utils.o, gdbreplay.o, dll.o): Remove.
6638 (signals.o, linux-procfs.o, linux-ptrace.o, common-utils.o, vec.o)
6639 (gdb_vecs.o, xml-utils.o, linux-osdata.o, ptid.o, buffer.o)
6640 (format.o, agent.o, vasprintf.o, vsnprintf.o): Rewrite.
6641 (i386-low.o, i387-fp.o, linux-low.o, linux-arm-low.o)
6642 (linux-bfin-low.o, linux-cris-low.o, linux-crisv32-low.o)
6643 (linux-ia64-low.o, linux-m32r-low.o, linux-mips-low.o)
6644 (linux-ppc-low.o, linux-s390-low.o, linux-sh-low.o)
6645 (linux-tic6x-low.o, linux-x86-low.o, linux-xtensa-low.o)
6646 (linux-tile-low.o, lynx-low.o, lynx-ppc-low.o, nto-low.o)
6647 (nto-x86-low.o, linux-low.o, win32-low.o, win32-arm-low.o)
6648 (win32-i386-low.o, spu-low.o, reg-arm.o, arm-with-iwmmxt.o)
6649 (arm-with-vfpv2.o, arm-with-vfpv3.o, arm-with-neon.o, reg-bfin.o)
6650 (reg-cris.o, reg-crisv32.o, i386.o, i386-linux.o, i386-avx.o)
6651 (i386-avx-linux.o, i386-mmx.o, i386-mmx-linux.o, reg-ia64.o)
6652 (reg-m32r.o, reg-m68k.o, reg-cf.o, mips-linux.o, mips-dsp-linux.o)
6653 (mips64-linux.o, mips64-dsp-linux.o, powerpc-32.o, powerpc-32l.o)
6654 (powerpc-altivec32l.o, powerpc-cell32l.o, powerpc-vsx32l.o)
6655 (powerpc-isa205-32l.o, powerpc-isa205-altivec32l.o)
6656 (powerpc-isa205-vsx32l.o, powerpc-e500l.o, powerpc-64l.o)
6657 (powerpc-altivec64l.o, powerpc-cell64l.o, powerpc-vsx64l.o)
6658 (powerpc-isa205-64l.o, powerpc-isa205-altivec64l.o)
6659 (powerpc-isa205-vsx64l.o, s390-linux32.o, s390-linux32v1.o)
6660 (s390-linux32v2.o, s390-linux64.o, s390-linux64v1.o)
6661 (s390-linux64v2.o, s390x-linux64.o, s390x-linux64v1.o)
6662 (s390x-linux64v2.o, tic6x-c64xp-linux.o, tic6x-c64x-linux.o)
6663 (tic6x-c62x-linux.o, reg-sh.o, reg-sparc64.o, reg-spu.o, amd64.o)
6664 (amd64-linux.o, amd64-avx.o, amd64-avx-linux.o, x32.o)
6665 (x32-linux.o, x32-avx.o, x32-avx-linux.o, reg-xtensa.o)
6666 (reg-tilegx.o): Remove.
6667 (all_object_files): New macro.
6668 Include .deps files.
6669 * aclocal.m4, configure: Rebuild.
6670 * acinclude.m4: Include depstand.m4, lead-dot.m4.
6671 * configure.ac: Invoke ZW_CREATE_DEPDIR,
6672 ZW_PROG_COMPILER_DEPENDENCIES. Compute GMAKE condition.
6673
e90e9ad9
TT
66742012-12-05 Tom Tromey <tromey@redhat.com>
6675
6676 PR gdb/14917:
6677 * server.h (current_insn_ptr, emit_error): Declare 'extern'.
6678
02d403bf 66792012-11-28 Markus Metzger <markus.t.metzger@intel.com>
945bf713
MM
6680
6681 * configure.ac: Check for linux/perf_event.h.
6682 * config.in: Regenerated.
6683 * configure: Regenerated.
6684
0270a750
PA
66852012-11-26 Maxime Villard <rustyBSD@gmx.fr>
6686
6687 * hostio.c (handle_readlink): Decrease buffer size
6688 parameter passed to readlink by one byte.
6689
8c29b58e
YQ
66902012-11-26 Yao Qi <yao@codesourcery.com>
6691
6692 * configure.ac (build_warnings): Append '-Wempty-body'.
6693 * configure: Regenerated.
6694 * linux-low.c (linux_create_inferior): Use braces for empty 'if'
6695 body.
6696
8bdce1ff
PM
66972012-11-15 Pierre Muller <muller@sourceware.org>
6698
6699 * configure.ac (AC_CHECK_HEADERS): Add wait.h header.
6700 * config.in: Regenerate.
6701 * configure: Regenerate.
6702 * linux-low.c: Use "gdb_stat.h" header instead of <sys/stat.h> header.
6703 Use "gdb_wait.h" header instead of <sys/wait.h> header.
6704 * lynx-low.c: Use "gdb_wait.h" header instead of <sys/wait.h> header.
6705 * remote-utils.c: Use "gdb_stat.h" header instead of <sys/stat.h>
6706 header.
6707 * server.c: Remove HAVE_WAIT_H conditional. Use "gdb_wait.h" header
6708 instead of <sys/wait.h> header.
6709 * spu-low.c: Use "gdb_wait.h" header instead of <sys/wait.h> header.
6710
02d403bf 67112012-11-13 Markus Metzger <markus.t.metzger@intel.com>
3ba6ad0f
MM
6712
6713 * Makefile.in: (INTERNAL_CFLAGS): Add -DGDBSERVER
6714 (various make rules): Remove -DGDBSERVER
6715
fbd5db48
YQ
67162012-11-09 Yao Qi <yao@codesourcery.com>
6717
6718 * spu-low.c (current_ptid): Move it to ..
6719 * gdbthread.h: ... here. New.
6720 * remote-utils.c (read_ptid): Use macro 'current_ptid'.
6721 * server.c (myresume, process_serial_event): Likewise.
6722 * thread-db.c (thread_db_find_new_threads): Likewise.
6723 * tracepoint.c (run_inferior_command): Likewise.
6724
b3dc46ff
AB
67252012-10-01 Andrew Burgess <aburgess@broadcom.com>
6726
6727 * server.c (handle_search_memory_1): Include access length in
6728 warning message.
6729
07c04788
HPN
67302012-09-05 Michael Brandt <michael.brandt@axis.com>
6731
6732 * linux-crisv32-low.c: Fix compile errors.
6733
918d227b
YQ
67342012-09-04 Yao Qi <yao@codesourcery.com>
6735
6736 * tracepoint.c (cmd_qtsv): Adjust debug message.
6737 Don't check CUR_TPOINT.
6738
18c1b81a
YQ
67392012-08-28 Yao Qi <yao@codesourcery.com>
6740
6741 * ax.c, tracepoint.c: Replace ATTR_FORMAT with ATTRIBUTE_PRINTF.
6742 * server.h: Include 'libiberty.h' and 'ansidecl.h'.
6743 (ATTR_NORETURN, ATTR_FORMAT, ATTR_MALLOC): Remove.
6744 Remove declarations of xmalloc, xreallloc, xstrdup and
6745 freeargv.
6746 * Makefile.in (libiberty_h): New.
6747 (server_h): Append dependencies 'libiberty.h' and 'ansidecl.h'.
6748 (linux-bfin-low.o): Append dependency 'libiberty.h'.
6749
dc82f37b
YQ
67502012-08-23 Yao Qi <yao@codesourcery.com>
6751
6752 * server.h: Remove declaration of 'xsnprintf'.
6753
406b1477
KS
67542012-08-22 Keith Seitz <keiths@redhat.com>
6755
6756 * server.h: Include build-gnulib-gbserver/config.h.
6757 * gdbreplay.c: Likewise.
6758
e6712ff1
DE
67592012-08-08 Doug Evans <dje@google.com>
6760
6761 * Makefile.in (SFILES): Add gdb_vecs.c.
6762 (OBS): Add gdb_vecs.o.
6763 (gdb_vecs_h, host_defs_h): New variables.
6764 (thread-db.o): Add $(gdb_vecs_h) dependency.
6765 (gdb_vecs.o): New rule.
6766 * thread-db.c: #include "gdb_vecs.h".
6767 (thread_db_load_search): Use a vector to iterate over path elements.
6768 Handle text appearing after "$pdir".
6769
6770 * configure.ac: Add check for strstr.
6771 * config.in: Regenerate.
6772 * configure: Regenerate.
6773
7c3270ae
UW
67742012-08-02 Ulrich Weigand <ulrich.weigand@linaro.org>
6775
6776 * hostio.c (handle_pread): If pread fails, fall back to attempting
6777 lseek/read.
6778 (handle_pwrite): Likewise for pwrite.
6779
b62e2b27
UW
67802012-08-01 Ulrich Weigand <ulrich.weigand@linaro.org>
6781
6782 * linux-arm-low.c (arm_linux_hw_point_initialize): Distinguish
6783 between unsupported TYPE and unimplementable ADDR/LEN combination.
6784 (arm_insert_point): Act on new return value.
6785
78a99e91
PA
67862012-07-31 Pedro Alves <palves@redhat.com>
6787
6788 * server.c (process_point_options): Only skip tokens if we find
6789 one that is unrecognized. Don't treat 'X' specially while
6790 skipping unrecognized tokens.
6791
fcf303ab
UW
67922012-07-30 Ulrich Weigand <ulrich.weigand@linaro.org>
6793
6794 * linux-arm-low.c (arm_linux_hw_point_initialize): Do not attempt
6795 to 4-byte-align HW breakpoint addresses for Thumb.
6796
7255706c
YQ
67972012-07-27 Yao Qi <yao@codesourcery.com>
6798
6799 PR remote/14161.
6800
6801 * server.h: Declare gdb_agent_about_to_close.
6802 * target.c (kill_inferior): Include "agent.h".
6803 New. Send command 'kill'.
6804 * target.h (kill_inferior): Removed macro.
6805 * tracepoint.c (gdb_agent_about_to_close): New.
6806 (gdb_agent_helper_thread): Handle command 'close'.
6807 Wait endlessly until the inferior stops.
6808 Install gdb_agent_remove_socket to atexit hook.
6809 (agent_socket_name): New static variable.
6810 (gdb_agent_socket_init): Replace local variable 'name' with
6811 'agent_socket_name'.
6812 (gdb_agent_remove_socket): New.
6813
5a3f286f
YQ
68142012-07-27 Yao Qi <yao@codesourcery.com>
6815
6816 * server.c (process_point_options): Stop at 'X' when parsing.
6817
961bd387
ME
68182012-07-19 Michael Eager <eager@eagercon.com>
6819
a261b8f5 6820 * i386-low.c (Z_packet_to_hw_type): Add Z_PACKET_HW_BP, translate
961bd387
ME
6821 to hw_execute.
6822 * linux-x86-low.c (x86_insert_point, x86_remove_point):
6823 Call i386_low_insert_watchpoint, i386_low_remove_watchpoint to add/del
6824 hardware breakpoint.
6825
aa7c7447
JK
68262012-07-07 Jan Kratochvil <jan.kratochvil@redhat.com>
6827
6828 * gdbserver/linux-low.c (initialize_low): Call
6829 linux_ptrace_init_warnings.
6830
7f216e7c
DE
68312012-07-02 Doug Evans <dje@google.com>
6832
6833 * mem-break.c (gdb_no_commands_at_breakpoint): Fix cast from
6834 pointer to int.
6835
d3ce09f5
SS
68362012-07-02 Stan Shebs <stan@codesourcery.com>
6837
6838 * Makefile.in (WARN_CFLAGS_NO_FORMAT): Define.
6839 (ax.o): Add it to build rule.
6840 (ax-ipa.o): Ditto.
6841 (OBS): Add format.o.
6842 (IPA_OBS): Add format.o.
6843 * server.c (handle_query): Claim support for breakpoint commands.
6844 (process_point_options): Add command case.
6845 (process_serial_event): Leave running if there are printfs in
6846 effect.
6847 * mem-break.h (any_persistent_commands): Declare.
6848 (add_breakpoint_commands): Declare.
6849 (gdb_no_commands_at_breakpoint): Declare.
6850 (run_breakpoint_commands): Declare.
6851 * mem-break.c (struct point_command_list): New struct.
6852 (struct breakpoint): New field command_list.
6853 (any_persistent_commands): New function.
6854 (add_commands_to_breakpoint): New function.
6855 (add_breakpoint_commands): New function.
6856 (gdb_no_commands_at_breakpoint): New function.
6857 (run_breakpoint_commands): New function.
6858 * linux-low.c (linux_wait_1): Test for and run breakpoint commands
6859 locally.
6860 * ax.c: Include format.h.
6861 (ax_printf): New function.
6862 (gdb_eval_agent_expr): Add printf opcode.
6863
2f8f6aed
YQ
68642012-06-13 Yao Qi <yao@codesourcery.com>
6865
6866 * server.c (start_inferior): Remove duplicated writes to fields
6867 'last_resume_kind' and 'last_status' of 'current_inferior'.
6868
0c9070b3
YQ
68692012-06-12 Yao Qi <yao@codesourcery.com>
6870 Pedro Alves <palves@redhat.com>
6871
6872 * linux-low.c (linux_set_resume_request): Simplify predicate. Add
6873 comment.
6874 * server.c (handle_v_cont): Extend comment.
6875
c52daf70
YQ
68762012-06-11 Yao Qi <yao@codesourcery.com>
6877
6878 * linux-low.c (linux_attach): Add 'static'.
6879
d38bbb0a
YQ
68802012-06-06 Yao Qi <yao@codesourcery.com>
6881
6882 * ax.c (gdb_eval_agent_expr): Print `top' in hex.
6883
89dc0afd
JK
68842012-06-01 Jan Kratochvil <jan.kratochvil@redhat.com>
6885
6886 Fix gcc -flto compilation warning.
6887 * server.c (main): Make variable multi_mode and attach volatile.
6888
75f62ce7
TJB
68892012-05-30 Thiago Jung Bauermann <thiago.bauermann@linaro.org>
6890
6891 * linux-low.c (get_r_debug): Disable code using DT_MIPS_RLD_MAP
6892 if the platform doesn't know about it.
6893
65f479b6
PA
68942012-05-30 Jeff Kenton <jkenton@tilera.com>
6895
6896 * Makefile.in (SFILES): Add linux-tile-low.c.
6897 (linux-tile-low.o, reg-tilegx.o, reg-tilegx.c): New rules.
6898 * configure.srv: Handle tilegx-*-linux*.
6899 * linux-tile-low.c: New file.
6900
0c5bf5a9
JK
69012012-05-28 Jan Kratochvil <jan.kratochvil@redhat.com>
6902
6903 * linux-low.c (linux_qxfer_libraries_svr4): Return -1 if R_DEBUG is -1.
6904
a493e3e2
PA
69052012-05-24 Pedro Alves <palves@redhat.com>
6906
6907 PR gdb/7205
6908
43aaf8b6 6909 Replace TARGET_SIGNAL_ with GDB_SIGNAL_ throughout.
a493e3e2 6910
2ea28649
PA
69112012-05-24 Pedro Alves <palves@redhat.com>
6912
6913 PR gdb/7205
6914
6915 Replace target_signal with gdb_signal throughout.
6916
8d409d16
MR
69172012-05-22 Maciej W. Rozycki <macro@codesourcery.com>
6918
6919 * linux-low.c (linux_store_registers): Avoid the copying sequence
6920 when no data has been retrieved by ptrace.
6921
23512c01
MGD
69222012-05-22 Will Deacon <will.deacon@arm.com>
6923
6924 * linux-low (__UCLIBC__ && !(__UCLIBC_HAS_MMU__ || __ARCH_HAS_MMU__)):
6925 Include asm/ptrace.h.
6926 (PT_TEXT_ADDR, PT_DATA_ADDR, PT_TEXT_END_ADDR): Define only if not
6927 already defined.
6928
4934b29e
MR
69292012-05-21 Maciej W. Rozycki <macro@codesourcery.com>
6930
6931 * linux-low.c (linux_store_registers): Don't re-retrieve data
6932 with ptrace that has already been obtained from /proc. Always
6933 copy any data retrieved with ptrace to the buffer supplied.
6934
bde24c0a
PA
69352012-05-11 Yao Qi <yao@codesourcery.com>
6936 Pedro Alves <palves@redhat.com>
6937
6938 * linux-low.c (enum stopping_threads_kind): New.
6939 (stopping_threads): Change type to `enum stopping_threads_kind'.
6940 (handle_extended_wait): If stopping and suspending threads, leave
6941 the new_lwp suspended too.
6942 (linux_wait_for_event): Adjust.
6943 (stop_all_lwps): Set `stopping_threads' to
6944 STOPPING_AND_SUSPENDING_THREADS or STOPPING_THREADS depending on
6945 whether we're suspending threads or just stopping them. Assert no
6946 recursion happens.
6947
623b6bdf
YQ
69482012-04-29 Yao Qi <yao@codesourcery.com>
6949
6950 * server.h: Move some code to ...
6951 * gdbthread.h: ... here. New.
6952 * Makefile.in (inferiors.o, regcache.o): Depends on gdbthread.h
6953 (remote-utils.o, server.o, target.o tracepoint.o): Likewise.
6954 (nto-low.o, win32-low.o): Likewise.
6955 * inferiors.c, linux-low.h, nto-low.c: Include gdbthread.h.
6956 * regcache.c, remote-utils.c, server.c: Likewise.
6957 * target.c, tracepoint.c, win32-low.c: Likewise.
6958
f15f9948
TJB
69592012-04-24 Thiago Jung Bauermann <thiago.bauermann@linaro.org>
6960
6961 * linux-low.h (PTRACE_ARG3_TYPE): Move macro from linux-low.c.
6962 (PTRACE_ARG4_TYPE): Likewise.
6963 (PTRACE_XFER_TYPE): Likewise.
6964 * linux-arm-low.c (arm_prepare_to_resume): Cast third argument of
6965 ptrace to PTRACE_ARG3_TYPE.
6966 * linux-low.c (PTRACE_ARG3_TYPE): Move macro to linux-low.h.
6967 (PTRACE_ARG4_TYPE): Likewise.
6968 (PTRACE_XFER_TYPE): Likewise.
6969 (linux_detach_one_lwp): Cast fourth argument of
6970 ptrace to long then PTRACE_ARG4_TYPE.
6971 (regsets_fetch_inferior_registers): Cast third argument of
6972 ptrace to long then PTRACE_ARG3_TYPE.
6973 (regsets_store_inferior_registers): Likewise.
6974
38ea300a
PA
69752012-04-20 Pedro Alves <palves@redhat.com>
6976
6977 * configure: Regenerate.
6978
c971b7fa
PA
69792012-04-19 Pedro Alves <palves@redhat.com>
6980
43aaf8b6 6981 * Makefile.in (GNULIB_BUILDDIR): New.
c971b7fa 6982 (LIBGNU, INCGNU, GNULIB_H): Adjust.
43aaf8b6
PA
6983 (SUBDIRS, CLEANDIRS, REQUIRED_SUBDIRS): New.
6984 (all, install-only, uninstall, clean-info, all-lib, clean): No
6985 longer pass GNULIB_FLAGS_TO_PASS. Use subdir_do.
6986 (maintainer-clean realclean distclean): Use subdir_do.
6987 (subdir_do): New.
6988 (gnulib/import/Makefile): Adjust. Replace gnulib/import with
c971b7fa 6989 $(GNULIB_BUILDDIR). Don't pass argument to config.status.
43aaf8b6
PA
6990 * acinclude.m4: Include acx_configure_dir.m4.
6991 * configure.ac: Remove gl_EARLY, gl_INIT, and AM_INIT_AUTOMAKE
6992 calls. Call AC_PROG_RANLIB. Configure gnulib using
6993 ACX_CONFIGURE_DIR.
6994 (GNULIB): New.
6995 (GNULIB_STDINT_H): Adjust.
6996 (AC_OUTPUT): Don't output gnulib/Makefile anymore.
6997 * gdbreplay.c: Include build-gnulib/config.h.
6998 * server.h: Likewise.
6999 * aclocal.m4: Regenerate.
7000 * config.in: Regenerate.
7001 * configure: Regenerate.
c971b7fa 7002
809277f8
PA
70032012-04-19 Pedro Alves <palves@redhat.com>
7004
7005 * Makefile.in (LIBGNU, INCGNU): Adjust.
7006 (GNULIB_FLAGS_TO_PASS, GNULIB_H): Adjust.
7007 (all, install-only, uninstall, clean-info, all-lib, clean)
7008 (maintainer-clean, Makefile, gnulib/Makefile): Adjust.
7009 * configure.ac: Adjust AC_OUTPUT output.
7010 * aclocal.m4: Regenerate.
7011 * configure: Regenerate.
7012
fd9bb8b8
PA
70132012-04-19 Pedro Alves <palves@redhat.com>
7014
7015 * Makefile.in (generated_files): New.
7016 (server_h): Remove the explicit dependency on config.h, and depend
7017 on $generated_files.
7018
1c298c66
PA
70192012-04-19 Pedro Alves <palves@redhat.com>
7020
7021 * Makefile.in (INCGNU): Add -Ignulib.
7022
57c4b50b
PA
70232012-04-19 Pedro Alves <palves@redhat.com>
7024
7025 * Makefile.in (GNULIB_INCLUDE_DIR): Rename to ...
7026 (INCGNU): ... this, and spell out -I here.
7027 (GNULIB_LIB): Rename to ...
7028 (LIBGNU): ... this.
7029 (INCLUDE_CFLAGS, gdbserver$(EXEEXT), $(GNULIB_LIB) rule): Adjust.
7030
1030e047
PA
70312012-04-19 Pedro Alves <palves@redhat.com>
7032
7033 * config.in: Regenerate.
7034
447d4319
PA
70352012-04-19 Pedro Alves <palves@redhat.com>
7036
7037 * configure.ac: Remove AC_CHECK_DECLS check for memmem.
7038 * server.h (memmem): Remove declaration.
7039 * config.in: Regenerate.
7040 * configure: Regenerate.
7041
aad9eab9
YQ
70422012-04-19 Yao Qi <yao@codesourcery.com>
7043
7044 * Makefile.in (SFILES): Add common/vec.c.
7045 (OBS): Add vec.o.
7046 (vec.o): New rule.
7047
3e10640f
YQ
70482012-04-19 Yao Qi <yao@codesourcery.com>
7049
7050 * remote-utils.c (prepare_resume_reply): Replace with macro
7051 target_core_of_thread.
7052 * server.c (handle_qxfer_threads_proper): Likewise.
7053 * target.h (traget_core_of_thread): New macro.
7054
71622373
PA
70552012-04-18 Pedro Alves <palves@redhat.com>
7056
7057 * aclocal.m4: Regenerate.
7058 * configure: Regenerate.
7059
80d26939
YQ
70602012-04-16 Yao Qi <yao@codesourcery.com>
7061
7062 * tracepoint.c (cmd_qtstart): Download tracepoints even when they are
7063 duplicated on address.
7064
42476b70
YQ
70652012-04-16 Yao Qi <yao@codesourcery.com>
7066
7067 * tracepoint.c (COPY_FIELD_TO_BUF): New macro.
7068 (struct tracepoint_action_ops) <send>: New field.
7069 (m_tracepoint_action_send, r_tracepoint_action_send): New.
7070 (agent_expr_send, x_tracepoint_action_send): New.
7071 (l_tracepoint_action_send): New.
7072 (cmd_qtdp): Download and install tracepoint
7073 according to `use_agent'.
7074 (run_inferior_command): Add one more parameter `len'.
7075 Update callers.
7076 (tracepoint_send_agent): New.
7077 (cmd_qtdp, cmd_qtstart): Call tracepoint_send_agent.
7078
7bc83639
YQ
70792012-04-16 Yao Qi <yao@codesourcery.com>
7080
7081 * tracepoint.c (download_tracepoints): Moved to ...
7082 (cmd_qtstart): ... here.
7083
5f18041e
YQ
70842012-04-14 Yao Qi <yao@codesourcery.com>
7085
7086 * tracepoint.c: Include inttypes.h.
7087 (struct collect_memory_action): Use sized types.
7088 (struct tracepoint): Likewise.
7089 (cmd_qtdp, stop_tracing): Update print specifiers.
7090 (cmd_qtp, response_tracepoint): Likewise.
7091 (collect_data_at_tracepoint): Likewise.
7092 (collect_data_at_step): Likewise.
7093
55a8c076
YQ
70942012-04-14 Yao Qi <yao@codesourcery.com>
7095
7096 Import gnulib module inttypes.
7097 * aclocal.m4, config.in, configure: Regenerated.
7098
dc750257
YQ
70992012-04-14 Yao Qi <yao@codesourcery.com>
7100
7101 * Makefile.in (maintainer-clean, realclean, distclean): Remove
7102 Makefile and config.status at last.
7103
0ab5faf9
YQ
71042012-04-13 Yao Qi <yao@codesourcery.com>
7105
7106 * tracepoint.c: Include stdint.h unconditionally.
7107
18f5fd81
TJB
71082012-04-13 Thiago Jung Bauermann <thiago.bauermann@linaro.org>
7109
7110 * acinclude.m4 (GDBSERVER_HAVE_THREAD_DB_TYPE): New macro based
7111 on BFD_HAVE_SYS_PROCFS_TYPE.
7112 * configure.ac: Look for lwpid_t and psaddr_t in libthread_db.h.
7113 * configure: Regenerate.
7114 * config.in: Likewise.
7115
4d47af5c
L
71162012-04-13 H.J. Lu <hongjiu.lu@intel.com>
7117
7118 * Makefile.in (clean): Also remove x32.c x32-linux.c
7119 x32-avx.c x32-avx-linux.c.
7120 (x32.o): New target.
7121 (x32.c): Likewise.
7122 (x32-linux.o): Likewise.
7123 (x32-linux.c): Likewise.
7124 (x32-avx.o): Likewise.
7125 (x32-avx.c): Likewise.
7126 (x32-avx-linux.o): Likewise.
7127 (x32-avx-linux.c): Likewise.
7128
7129 * configure.srv (srv_amd64_regobj): Add x32.o x32-avx.o.
7130 (srv_amd64_linux_regobj): Add x32-linux.o x32-avx-linux.o.
7131 (srv_i386_64bit_xmlfiles): Add i386/x32-core.xml.
7132 (srv_amd64_xmlfiles): Add i386/x32.xml i386/x32-avx.xml.
7133 (srv_amd64_linux_xmlfiles): Add i386/x32-linux.xml
7134 i386/x32-avx-linux.xml.
7135
7136 * linux-x86-low.c (init_registers_x32_linux): New prototype.
7137 (init_registers_x32_avx_linux): Likwise.
7138 (x86_linux_update_xmltarget): Call init_registers_x32_linux
7139 or init_registers_x32_avx_linux if linux_is_elf64 is false.
7140
ecedbe58
PA
71412012-04-13 Pedro Alves <palves@redhat.com>
7142
7143 * Makefile.in (GNULIB_FLAGS_TO_PASS): New.
7144 (FLAGS_TO_PASS): Don't change or set $top_srcdir, $srcdir and VPATH.
7145 (all, uninstall, clean-info, all-lib, clean, maintainer-clean)
7146 (realclean, distclean): Explicitly pass $GNULIB_FLAGS_TO_PASS to
7147 the sub-make.
7148
c92b5177
L
71492012-04-12 H.J. Lu <hongjiu.lu@intel.com>
7150
7151 * linux-x86-low.c (compat_x32_clock_t): New.
7152 (compat_x32_siginfo_t): Likewise.
7153 (compat_x32_siginfo_from_siginfo): Likewise.
7154 (siginfo_from_compat_x32_siginfo): Likewise.
7155 (linux_is_elf64): Likewise.
7156 (x86_siginfo_fixup): Call compat_x32_siginfo_from_siginfo
7157 and siginfo_from_compat_x32_siginfo for x32.
7158 (x86_arch_setup): Set linux_is_elf64.
7159
214d508e
L
71602012-04-12 H.J. Lu <hongjiu.lu@intel.com>
7161
7162 PR gdb/13969
7163 * linux-low.c (linux_pid_exe_is_elf_64_file): Also return the
7164 e_machine field.
7165 (linux_qxfer_libraries_svr4): Update call to elf_64_file_p.
7166 * linux-low.h (linux_pid_exe_is_elf_64_file): Updated.
7167 * linux-x86-low.c (x86_arch_setup): Check if GDBserver is
7168 compatible with process.
7169
c9a1864a
YQ
71702012-04-12 Yao Qi <yao@codesourcery.com>
7171
7172 * Makefile.in: Define abs_top_srcdir and abs_srcdir.
7173 (INCLUDE_CFLAGS): Append GNULIB_INCLUDE_DIR.
7174 (install-only, install-info, clean): Handle sub dir gnulib.
7175 (all-lib, am--refresh): New targets.
7176 (memmem.o): Remove target.
7177 * configure.ac: Remove AC_CONFIG_LIBOBJ_DIR.
7178 Invoke gl_EARLY. Invoke AC_CHECK_PROGS for make.
7179 (AC_REPLACE_FUNCS): Remove memmem.
7180 Invoke gl_INIT and AM_INIT_AUTOMAKE.
7181 (AC_OUTPUT): Generate Makefile in gnulib/.
7182 * aclocal.m4, config.in, configure: Regenerated.
7183
367ba2c2
MR
71842012-04-10 Maciej W. Rozycki <macro@codesourcery.com>
7185
7186 * linux-low.c (get_r_debug): Handle DT_MIPS_RLD_MAP.
7187
9d236627
PA
71882012-04-05 Pedro Alves <palves@redhat.com>
7189
7190 -Werror=strict-aliasing
7191
7192 * spu-low.c (parse_spufs_run): Avoid dereferencing type-punned
7193 pointer.
7194
111217b3
PA
71952012-04-04 Pedro Alves <palves@redhat.com>
7196
7197 * linux-sparc-low.c (sparc_fill_gregset_to_stack)
7198 (sparc_store_gregset_from_stack, sparc_store_gregset)
7199 (sparc_breakpoint_at): Fix formatting.
7200
8365dcf5
TJB
72012012-03-30 Thiago Jung Bauermann <thiago.bauermann@linaro.org>
7202
7203 * configure.ac: Check whether Elf32_auxv_t and Elf64_auxv_t
7204 are available.
7205 * linux-low.c [HAVE_ELF32_AUXV_T] (Elf32_auxv_t): Add typedef.
7206 [HAVE_ELF64_AUXV_T] (Elf64_auxv_t): Likewise.
7207 * config.in: Regenerate.
7208 * configure: Likewise.
7209
689cc2ae
PA
72102012-03-29 Pedro Alves <palves@redhat.com>
7211
7212 * linux-low.c (regsets_store_inferior_registers) [__sparc__]:
7213 Correct ptrace arguments.
7214
c14dfd32
PA
72152012-03-28 Pedro Alves <palves@redhat.com>
7216
7217 * linux-ia64-low.c (ia64_regmap): Map IA64_EC_REGNUM to PT_AR_EC.
7218 (IA64_GR0_REGNUM, IA64_FR0_REGNUM)
7219 (IA64_FR1_REGNUM): New defines.
7220 (ia64_fetch_register): New.
7221 (the_low_target): Install it.
7222 * linux-low.h (struct linux_target_ops) <fetch_register>: New
7223 field.
7224 * linux-low.c (linux_fetch_registers): Try the
7225 the_low_target.fetch_register hook first.
7226
7227 * linux-arm-low.c (the_low_target): Adjust.
7228 * linux-bfin-low.c (the_low_target): Adjust.
7229 * linux-cris-low.c (the_low_target): Adjust.
7230 * linux-crisv32-low.c (the_low_target): Adjust.
7231 * linux-m32r-low.c (the_low_target): Adjust.
7232 * linux-m68k-low.c (the_low_target): Adjust.
7233 * linux-mips-low.c (the_low_target): Adjust.
7234 * linux-ppc-low.c (the_low_target): Adjust.
7235 * linux-s390-low.c (the_low_target): Adjust.
7236 * linux-sh-low.c (the_low_target): Adjust.
7237 * linux-sparc-low.c (the_low_target): Adjust.
7238 * linux-tic6x-low.c (the_low_target): Adjust.
7239 * linux-x86-low.c (the_low_target): Adjust.
7240 * linux-xtensa-low.c (the_low_target): Adjust.
7241
63c88e13
PA
72422012-03-26 Pedro Alves <palves@redhat.com>
7243
7244 * server.c (handle_qxfer_libraries): Don't bail early if
7245 the_target->qxfer_libraries_svr4 is not NULL.
7246
fb723180
PA
72472012-03-26 Pedro Alves <palves@redhat.com>
7248
7249 * linux-low.c (linux_qxfer_libraries_svr4): Fix pasto in comment.
7250
0afae3cf
PA
72512012-03-23 Pedro Alves <palves@redhat.com>
7252
7253 * linux-low.c (linux_qxfer_libraries_svr4): Terminate the
7254 "library-list-svr4" element's start tag when the the DSO list is
7255 empty.
7256
485f1ee4
PA
72572012-03-23 Pedro Alves <palves@redhat.com>
7258
7259 * linux-low.c (read_one_ptr): Read the inferior's pointer through
7260 a variable whose type size is the same as the inferior's pointer
7261 size.
7262
a5362b9a
TS
72632012-03-21 Thomas Schwinge <thomas@codesourcery.com>
7264
7265 * linux-arm-low.c (arm_stopped_by_watchpoint): Use siginfo_t instead of
7266 struct siginfo.
7267 * linux-low.c (siginfo_fixup, linux_xfer_siginfo): Likewise.
7268 * linux-x86-low.c (x86_siginfo_fixup): Likewise.
7269 * linux-low.h: Include <signal.h>.
7270 (struct siginfo): Remove forward declaration.
7271 (struct linux_target_ops) <siginfo_fixup>: Use siginfo_t instead of
7272 struct siginfo.
7273
d226c142
MF
72742012-03-21 Mike Frysinger <vapier@gentoo.org>
7275
7276 * .gitignore: Ignore more files.
7277
122f36ef
PA
72782012-03-19 Pedro Alves <palves@redhat.com>
7279 Jan Kratochvil <jan.kratochvil@redhat.com>
7280
7281 * server.c (cont_thread, general_thread): Add describing comments.
7282 (start_inferior): Clear `cont_thread'.
7283 (handle_v_cont): Don't set `cont_thread' if resuming all threads
7284 of a process.
7285
fc3e5175
YQ
72862012-03-15 Yao Qi <yao@codesourcery.com>
7287
7288 * tracepoint.c (install_tracepoint): Move duplicated tracepoint
7289 handling to ...
7290 (cmd_qtdp): ... here.
7291
8d0d92cd
YQ
72922012-03-15 Yao Qi <yao@codesourcery.com>
7293
7294 * tracepoint.c (struct tracepoint_action_ops): New.
7295 (struct tracepoint_action) [!IN_PROCESS_AGENT] <ops>: New field.
7296 (m_tracepoint_action_download): New.
7297 (r_tracepoint_action_download): New.
7298 (x_tracepoint_action_download): New.
7299 (l_tracepoint_action_download): New.
7300 (add_tracepoint_action): Install `action->ops' according type.
7301 (download_tracepoint_1): Move code `download' function pointer
7302 of various tracepoint_action_ops.
7303
87b0bb13
JK
73042012-03-13 Jan Kratochvil <jan.kratochvil@redhat.com>
7305
7306 * linux-low.c (linux_attach_lwp_1): New variable buffer. Call
7307 linux_ptrace_attach_warnings.
7308
5f572dec
JK
73092012-03-13 Jan Kratochvil <jan.kratochvil@redhat.com>
7310
7311 * Makefile.in (linux-ptrace.o): New.
7312 * configure.srv (arm*-*-linux*, bfin-*-*linux*, crisv32-*-linux*)
7313 (cris-*-linux*, i[34567]86-*-linux*, ia64-*-linux*, m32r*-*-linux*)
7314 (m68*-*-linux*, m68*-*-uclinux*, mips*-*-linux*, powerpc*-*-linux*)
7315 (s390*-*-linux*, sh*-*-linux*, sparc*-*-linux*, tic6x-*-uclinux)
7316 (x86_64-*-linux*, xtensa*-*-linux*): Add linux-ptrace.o to SRV_TGTOBJ
7317 of these targets.
7318 * linux-low.c (linux_attach_lwp_1): Remove redundent else clause.
7319
f4647387
YQ
73202012-03-08 Yao Qi <yao@codesourcery.com>
7321 Pedro Alves <palves@redhat.com>
7322
7323 Fix PR server/13392.
7324 * linux-x86-low.c (amd64_install_fast_tracepoint_jump_pad): Check
7325 offset of JMP insn.
7326 * tracepoint.c (remove_tracepoint): New.
7327 (cmd_qtdp): Call remove_tracepoint when failed to install.
7328
9b224c5e
PA
73292012-03-07 Pedro Alves <palves@redhat.com>
7330
7331 * linux-low.c (get_detach_signal): New.
7332 (linux_detach_one_lwp): Get rid of a pending SIGSTOP with SIGCONT.
7333 Pass on pending signals to PTRACE_DETACH. Check the result of the
7334 ptrace call.
7335 * server.c (program_signals, program_signals_p): New.
7336 (handle_general_set): Handle QProgramSignals.
7337 * server.h (program_signals, program_signals_p): Declare.
7338
e237a7e2
JK
73392012-03-05 Pedro Alves <palves@redhat.com>
7340 Jan Kratochvil <jan.kratochvil@redhat.com>
7341
7342 * linux-low.c (get_dynamic): Don't warn when PT_PHDR isn't found.
7343 New comment why.
7344
5808517f
YQ
73452012-03-03 Yao Qi <yao@codesourcery.com>
7346
7347 * tracepoint.c (tracepoint_look_up_symbols): Update call to
7348 agent_look_up_symbols.
7349
58b4daa5
YQ
73502012-03-03 Yao Qi <yao@codesourcery.com>
7351
7352 * Makefile.in (linux-low.o): Keep dependence on agent.h.
7353 (linux-x86-low.o): Likewise.
7354 * server.h: Remove in_process_agent_loaded.
7355 * tracepoint.c (in_process_agent_loaded): Removed. Moved it
7356 common/agent.c.
7357 Update callers.
7358
8ffcbaaf
YQ
73592012-03-03 Yao Qi <yao@codesourcery.com>
7360
7361 * tracepoint.c (gdb_agent_capability): New global.
7362 (in_process_agent_loaded_ust): Renamed to
7363 `in_process_agent_supports_ust'.
7364 Update callers.
7365 (in_process_agent_supports_ust): Call agent_capability_check.
7366 (clear_installed_tracepoints): Assert that agent supports
7367 agent.
7368
d1feda86
YQ
73692012-03-03 Yao Qi <yao@codesourcery.com>
7370
7371 * linux-low.c (linux_supports_agent): New.
7372 (linux_target_ops): Initialize field `supports_agent' with
7373 linux_supports_agent.
7374 * target.h (struct target_ops) <supports_agent>: New.
7375 (target_supports_agent): New macro.
7376 * server.c (handle_general_set): Handle packet 'QAgent'.
7377 (handle_query): Send `QAgent+'.
7378 * Makefile.in (server.o): Depends on agent.h.
7379
2fa291ac
YQ
73802012-03-03 Yao Qi <yao@codesourcery.com>
7381
7382 * Makefile.in (OBS): Add agent.o.
7383 Add new rule for agent.o.
7384 Track dependence of tracepoint.c on agent.h.
7385 * tracepoint.c (run_inferior_command_1):
7386 (run_inferior_command): Call agent_run_command.
7387 (gdb_ust_connect_sync_socket): Deleted. Move it to
7388 common/agent.c.
7389 (resume_thread, stop_thread): Likewise.
7390 (gdb_ust_socket_init): Renamed to ...
7391 (gdb_agent_socket_init): ... New.
7392 (gdb_ust_thread): Renamed to ...
7393 (gdb_agent_helper_thread): ... New.
7394 (gdb_ust_init): Move some code to ...
7395 (gdb_agent_init): ... here. New.
7396 [HAVE_UST]: Call gdb_ust_init.
7397 (initialize_tracepoint_ftlib): Call gdb_agent_init.
7398 * configure.ac: Add `sys/un.h' to AC_CHECK_HEADERS.
7399 * config.in, configure: Regenerated.
7400
05044653
PA
74012012-03-02 Pedro Alves <palves@redhat.com>
7402
7403 * inferiors.c (add_pid_to_list, pull_pid_from_list): Delete.
7404 * linux-low.c (struct simple_pid_list): New.
7405 (stopped_pids): New a struct simple_pid_list pointer.
7406 (add_to_pid_list, pull_pid_from_list): New.
7407 (handle_extended_wait): Don't assume the first signal new children
7408 report is SIGSTOP. Adjust call to pull_pid_from_list.
7409 (linux_wait_for_lwp): Adjust.
7410
8d00225b
YQ
74112012-03-02 Yao Qi <yao@codesourcery.com>
7412
7413 * tracepoint.c (do_action_at_tracepoint): Write `stop_pc' in
7414 debug log.
7415
19560ba5
YQ
74162012-03-02 Yao Qi <yao@codesourcery.com>
7417
7418 * tracepoint.c (collect_ust_data_at_tracepoint): Remove parameters
7419 `stop_pc' and `tpoint'. Update caller.
7420
1faeff08
MR
74212012-03-01 Maciej W. Rozycki <macro@codesourcery.com>
7422
7423 * linux-low.h (linux_target_ops): Add regset_bitmap member.
7424 * linux-low.c (use_linux_regsets): New macro.
7425 [!HAVE_LINUX_REGSETS] (regsets_fetch_inferior_registers): Likewise.
7426 [!HAVE_LINUX_REGSETS] (regsets_store_inferior_registers): Likewise.
7427 (linux_register_in_regsets): New function.
7428 (usr_fetch_inferior_registers): Skip registers covered by
7429 regsets.
7430 (usr_store_inferior_registers): Likewise.
7431 (usr_fetch_inferior_registers): New macro.
7432 (usr_store_inferior_registers): Likewise.
7433 (linux_fetch_registers): Handle mixed regset/non-regset targets.
7434 (linux_store_registers): Likewise.
7435 * linux-mips-low.c (init_registers_mips_dsp_linux): New
7436 prototype.
7437 (init_registers_mips64_dsp_linux): Likewise.
7438 (init_registers_mips_linux): New macro.
7439 (init_registers_mips_dsp_linux): Likewise.
7440 (mips_dsp_num_regs): Likewise.
7441 (DSP_BASE, DSP_CONTROL): New fallback macros.
7442 (mips_base_regs): New macro.
7443 (mips_regmap): Use it. Fix the size.
7444 (mips_dsp_regmap): New variable.
7445 (mips_dsp_regset_bitmap): Likewise.
7446 (mips_arch_setup): New function.
7447 (mips_cannot_fetch_register): Use the_low_target.regmap rather
7448 than mips_regmap.
7449 (mips_cannot_store_register): Likewise.
7450 (the_low_target): Update .arch_setup, .num_regs and .regmap
7451 initializers. Add .regset_bitmap initializer.
7452 * linux-arm-low.c (the_low_target): Add .regset_bitmap
7453 initializer.
7454 * linux-bfin-low.c (the_low_target): Likewise.
7455 * linux-cris-low.c (the_low_target): Likewise.
7456 * linux-crisv32-low.c (the_low_target): Likewise.
7457 * linux-ia64-low.c (the_low_target): Likewise.
7458 * linux-m32r-low.c (the_low_target): Likewise.
7459 * linux-m68k-low.c (the_low_target): Likewise.
7460 * linux-ppc-low.c (the_low_target): Likewise.
7461 * linux-s390-low.c (the_low_target): Likewise.
7462 * linux-sh-low.c (the_low_target): Likewise.
7463 * linux-sparc-low.c (the_low_target): Likewise.
7464 * linux-tic6x-low.c (the_low_target): Likewise.
7465 * linux-x86-low.c (the_low_target): Likewise.
7466 * linux-xtensa-low.c (the_low_target): Likewise.
7467 * configure.srv <mips*-*-linux*>: Add mips-dsp-linux.o and
7468 mips64-dsp-linux.o to srv_regobj. Add mips-dsp-linux.xml,
7469 mips64-dsp-linux.xml, mips-dsp.xml and mips64-dsp.xml to
7470 srv_xmlfiles.
7471 * Makefile.in (mips-dsp-linux.o, mips-dsp-linux.c): New targets.
7472 (mips64-dsp-linux.o, mips64-dsp-linux.c): Likewise.
7473
c03e6ccc
YQ
74742012-02-29 Yao Qi <yao@codesourcery.com>
7475 Pedro Alves <palves@redhat.com>
7476
7477 * linux-low.c: (linux_wait_1): Call unsuspend_all_lwps when
7478 `step_over_finished' is true.
7479
644cebc9
PA
74802012-02-27 Pedro Alves <palves@redhat.com>
7481
7482 * linux-low.c (pid_is_stopped): Delete, moved to common/.
7483 (linux_attach_lwp_1): Adjust to use linux_proc_pid_is_stopped.
7484
c14d7ab2
PA
74852012-02-27 Pedro Alves <palves@redhat.com>
7486
7487 PR server/9684
7488 * linux-low.c (pid_is_stopped): New.
7489 (linux_attach_lwp_1): Handle attaching to 'T (stopped)' processes.
7490
412c89dd
LM
74912012-02-25 Luis Machado <lgustavo@codesourcery.com>
7492
7493 * mem-break.c (clear_gdb_breakpoint_conditions): Fix de-allocation
7494 of conditions.
7495
b745defe
MR
74962012-02-24 Maciej W. Rozycki <macro@codesourcery.com>
7497
7498 * linux-mips-low.c (mips_regmap): Correct the index of $f9.
7499
9f3a5c85
LM
75002012-02-24 Luis Machado <lgustavo@codesourcery>
7501
7502 * server.c (handle_query): Advertise support for target-side
7503 breakpoint condition evaluation.
7504 (process_point_options): New function.
7505 (process_serial_event): When inserting a breakpoint, check for
7506 a target-side condition that should be evaluated.
7507
7508 * mem-break.c: Include regcache.h and ax.h.
7509 (point_cond_list_t): New data structure.
7510 (breakpoint) <cond_list>: New field.
7511 (find_gdb_breakpoint_at): Make non-static.
7512 (delete_gdb_breakpoint_at): Clear any target-side
7513 conditions.
7514 (clear_gdb_breakpoint_conditions): New function.
7515 (add_condition_to_breakpoint): Likewise.
7516 (add_breakpoint_condition): Likewise.
7517 (gdb_condition_true_at_breakpoint): Likewise.
7518 (gdb_breakpoint_here): Return result directly instead
7519 of going through a local variable.
7520
7521 * mem-break.h (find_gdb_breakpoint_at): New prototype.
7522 (clear_gdb_breakpoint_conditions): Likewise.
7523 (add_breakpoint_condition): Likewise.
7524 (gdb_condition_true_at_breakpoint): Likewise.
7525
7526 * linux-low.c (linux_wait_1): Evaluate target-side breakpoint condition.
7527 (need_step_over_p): Take target-side breakpoint condition into
7528 consideration.
7529
5e1dc496
LM
75302012-02-24 Luis Machado <lgustavo@codesourcery>
7531
7532 * server.h: Include tracepoint.h.
7533 (agent_mem_read, agent_get_trace_state_variable_value,
7534 agent_set_trace_state_variable_value,
7535 agent_tsv_read, agent_mem_read_string, get_get_tsv_func_addr,
7536 get_set_tsv_func_addr): New prototypes.
7537
7538 * ax.h: New include file.
7539 * ax.c: New source file.
7540
7541 * tracepoint.c: Include ax.h.
7542 (gdb_agent_op, gdb_agent_op_names, gdb_agent_op_sizes,
7543 agent_expr, eval_result_type): Move to ax.h.
7544 (parse_agent_expr): Rename to ...
7545 (gdb_parse_agent_expr): ... this, make it non-static and move
7546 to ax.h.
7547 (unparse_agent_expr) Rename to ...
7548 (gdb_unparse_agent_expr): ... this, make it non-static and move
7549 to ax.h.
7550 (eval_agent_expr): Rename to ...
7551 (eval_tracepoint_agent_expr): ... this.
7552 (agent_mem_read, agent_mem_read_string, agent_tsv_read): Remove
7553 forward declarations.
7554 (add_tracepoint_action): Call gdb_parse_agent_expr (...).
7555 (agent_get_trace_state_variable_value): New function.
7556 (agent_set_trace_state_variable_value): New function.
7557 (cmd_qtdp): Call gdb_parse_agent_expr (...).
7558 (response_tracepoint): Call gdb_unparse_agent_expr (...).
7559 (do_action_at_tracepoint): Call eval_tracepoint_agent_expr (...).
7560 (condition_true_at_tracepoint): Likewise.
7561 (parse_agent_expr): Rename to ...
7562 (gdb_parse_agent_expr): ... this and move to ax.c.
7563 (unparse_agent_expr): Rename to ...
7564 (gdb_unparse_agent_expr): ... this and move to ax.c.
7565 (gdb_agent_op_name): Move to ax.c.
7566 (eval_agent_expr): Rename to ...
7567 (gdb_eval_agent_expr): ... this, use regcache passed as parameter
7568 and move to ax.c.
7569 (eval_tracepoint_agent_expr): New function.
7570 (agent_mem_read, agent_mem_read_string, agent_tsv_read): Make
43aaf8b6 7571 non-static.
5e1dc496
LM
7572 (current_insn_ptr, emit_error, struct bytecode_address): Move to
7573 ax.c.
7574 (emit_prologue, emit_epilogue, emit_add, emit_sub, emit_mul, emit_lsh,
7575 emit_rsh_signed, emit_rsh_unsigned, emit_ext, emit_log_not,
7576 emit_bit_and, emit_bit_or, emit_bit_xor, emit_bit_not, emit_equal,
7577 emit_less_signed, emit_less_unsigned, emit_ref, emit_if_goto,
7578 emit_goto, write_goto_address, emit_const, emit_reg, emit_pop,
7579 emit_stack, emit_zero_ext, emit_swap, emit_stack_adjust,
7580 emit_int_call_1, emit_void_call_2, emit_eq_goto, emit_ne_goto,
7581 emit_lt_goto, emit_ge_goto, emit_gt_goto, emit_le_goto): Move to ax.c.
7582 (get_get_tsv_func_addr, get_set_tsv_func_addr): New functions.
7583 (compile_bytecodes): Remove forward declaration.
7584 (is_goto_target): Move to ax.c.
7585 (compile_bytecodes): Move to ax.c and call
7586 agent_get_trace_state_variable_value (...) and
7587 agent_set_trace_state_variable_value (...).
7588
7589 * Makefile.in: Update ax.c and IPA dependencies.
7590
277e4e52
PA
75912012-02-24 Pedro Alves <palves@redhat.com>
7592
7593 * tracepoint.c (cmd_bigqtbuffer): Rename as ...
7594 (cmd_bigqtbuffer_circular): ... this. Only handle
7595 'QTBuffer:circular:'.
7596 (handle_tracepoint_general_set): Adjust.
7597
bf4c19f7
YQ
75982012-02-16 Yao Qi <yao@codesourcery.com>
7599
7600 * inferiors.c: Move code to ...
7601 * dll.c: .... here. New.
7602 * server.h: Declare clear_dlls.
7603 * Makefile.in (SFILES): Add dll.c.
7604 (OBS): Add dll.o
7605 (dll.o): New rule.
7606
d73f2619
YQ
76072012-02-11 Yao Qi <yao@codesourcery.com>
7608
7609 * server.c: (handle_monitor_command): Add a new parameter
7610 `own_buf'.
7611 (handle_query): Update caller.
7612
f8255c2a
JB
76132012-02-09 Joel Brobecker <brobecker@adacore.com>
7614
7615 * configure.ac: Add readlink to AC_CHECK_FUNCS list.
7616 * configure, config.in: Regenerate.
7617 * hostio.c: Provide an alternate implementation if HAVE_READLINK
7618 is not defined.
7619
da84f473
PA
76202012-02-02 Pedro Alves <palves@redhat.com>
7621
7622 Try SIGKILL first, then PTRACE_KILL.
7623 * linux-low.c (linux_kill_one_lwp): New.
7624 (linux_kill_one_lwp): Rename to ...
7625 (kill_one_lwp_callback): ... this. Use the new
7626 linux_kill_one_lwp.
7627
e886a173
PA
76282012-02-02 Pedro Alves <palves@redhat.com>
7629
7630 * tracepoint.c (cmd_qtminftpilen): Return 0 if there's no current
7631 inferior.
7632
be07f1a2
PA
76332012-01-27 Pedro Alves <palves@redhat.com>
7634
7635 * linux-low.c (linux_child_pid_to_exec_file): Delete.
7636 (elf_64_file_p): Make static.
7637 (linux_pid_exe_is_elf_64_file): New.
7638 * linux-low.h (linux_child_pid_to_exec_file, elf_64_file_p):
7639 Delete declarations.
7640 (linux_pid_exe_is_elf_64_file): Declare.
7641 * linux-x86-low.c (x86_arch_setup): Use
7642 linux_pid_exe_is_elf_64_file.
7643
d8301ad1
JK
76442012-01-25 Jan Kratochvil <jan.kratochvil@redhat.com>
7645
7646 * linux-low.c (linux_wait_for_event_1): Rename to ...
7647 (linux_wait_for_event): ... here and merge it with former
7648 linux_wait_for_event - new variable wait_ptid, use it.
7649 (linux_wait_for_event): Remove - merge it to linux_wait_for_event_1.
7650
01b17894
PA
76512012-01-23 Pedro Alves <palves@redhat.com>
7652
7653 * server.c (main): Avoid yet another case of infinite loop while
7654 detaching/killing after a longjmp.
7655
e825046f
JK
76562012-01-20 Jan Kratochvil <jan.kratochvil@redhat.com>
7657
7658 Code cleanup.
7659 * linux-low.c (linux_wait_for_event_1): Use ptid_is_pid.
7660
b9e7b9c3
UW
76612012-01-20 Ulrich Weigand <ulrich.weigand@linaro.org>
7662
7663 * hostio.c (handle_readlink): New function.
7664 (handle_vFile): Call it to handle "vFile:readlink" packets.
7665
901f9912
UW
76662012-01-20 Pedro Alves <palves@redhat.com>
7667 Ulrich Weigand <ulrich.weigand@linaro.org>
7668
7669 * server.c (handle_v_requests): Only support vAttach and vRun to
7670 start multiple processes when in extended protocol mode.
7671
fc1ab1a0
PA
76722012-01-17 Pedro Alves <palves@redhat.com>
7673
7674 * tracepoint.c (initialize_tracepoint): Use mmap instead of
7675 memalign plus mprotect to allocate the scratch buffer.
7676
7d5d4e98
PA
76772012-01-13 Pedro Alves <palves@redhat.com>
7678
7679 * server.c (attach_inferior): Clear `cont_thread'.
7680
f128d5e9
PA
76812012-01-13 Pedro Alves <palves@redhat.com>
7682
7683 * server.c (main): Avoid infinite loop while detaching/killing
7684 after a longjmp.
7685
06db92f0
DE
76862012-01-09 Doug Evans <dje@google.com>
7687
7688 * server.c (start_inferior): Set last_ptid in --wrapper case.
7689
32d92999
YQ
76902012-01-06 Yao Qi <yao@codesourcery.com>
7691
7692 * tracepoint.c [IN_PROCESS_AGENT] (debug_threads): Macro
7693 defined.
7694 [IN_PROCESS_AGENT] (debug_agent): New global variable.
7695
5e0a92a9
YQ
76962012-01-04 Yao Qi <yao@codesourcery.com>
7697
7698 * tracepoint.c (cmd_qtdp): Print debug message
7699 for static tracepoint.
7700
ae639e8c
YQ
77012012-01-04 Yao Qi <yao@codesourcery.com>
7702
7703 * tracepoint.c (trace_vdebug): Differentiate debug message
7704 between gdbserver and IPA.
7705
f72429c5
YQ
77062012-01-03 Yao Qi <yao@codesourcery.com>
7707
7708 * tracepoint.c (tracepoint_was_hit): Don't collect for
7709 static tracepoint.
7710
12c3e59c
JB
77112012-01-02 Joel Brobecker <brobecker@adacore.com>
7712
7713 * terminal.h: Reformat copyright header.
7714
67827812
JB
77152012-01-02 Joel Brobecker <brobecker@adacore.com>
7716
7717 * server.c (gdbserver_version): Update copyright year.
7718 * gdbreplay.c (gdbreplay_version): Likewise.
7719
3e52c33d
JK
77202011-12-18 Jan Kratochvil <jan.kratochvil@redhat.com>
7721
7722 * linux-low.c (linux_create_inferior): Put empty if clause for write.
7723
7724 Revert:
7725 2011-12-18 Hui Zhu <teawater@gmail.com>
7726 * linux-low.c (linux_create_inferior): Save return value to ret.
7727
66f1260e
HZ
77282011-12-18 Hui Zhu <teawater@gmail.com>
7729
7730 * linux-low.c (linux_create_inferior): Save return value to ret.
7731
e77616d7
DE
77322011-12-16 Doug Evans <dje@google.com>
7733
e7b06c57
DE
7734 * linux-low.c (linux_create_inferior): If stdio connection,
7735 redirect stdin from /dev/null, stdout to stderr.
7736 * remote-utils.c (remote_is_stdio): New static global.
7737 (remote_connection_is_stdio): New function.
7738 (remote_prepare): Handle stdio connection.
7739 (remote_open): Ditto.
7740 (remote_close): Don't close stdin for stdio connections.
7741 (read_prim,write_prim): New functions. Replace all calls to
7742 read/write to these.
7743 * server.c (main): Watch for "-" argument. Move call to
7744 remote_prepare before start_inferior.
7745 * server.h (STDIO_CONNECTION_NAME): New macro.
7746 (remote_connection_is_stdio): Declare.
7747
e77616d7
DE
7748 * remote-utils.c (prepare_resume_reply): Remove extraneous \n
7749 in debugging output.
7750
82067193
YQ
77512011-12-15 Yao Qi <yao@codesourcery.com>
7752
7753 * tracepoint.c: Include sys/syscall.h.
7754 (gdb_ust_thread): Remove preprocessor conditional.
7755
82bfbe7e
PA
77562011-12-14 Pedro Alves <pedro@codesourcery.com>
7757
7758 * linux-low.c (linux_detach_one_lwp): Call
7759 the_low_target.prepare_to_resume before detaching.
7760
712c6575
YQ
77612011-12-14 Yao Qi <yao@codesourcery.com>
7762
7763 * tracepoint.c (gdb_ust_thread): Don't ignore return value
7764 of write.
7765
d54d1edf
YQ
77662011-12-14 Yao Qi <yao@codesourcery.com>
7767
7768 * i386-low.c (i386_low_stopped_data_address): Initialize local
7769 variable `control'.
7770
6210a125
PA
77712011-12-13 Pedro Alves <pedro@codesourcery.com>
7772
7773 PR remote/13492
7774
7775 * i386-low.c (i386_low_stopped_data_address): Avoid fetching
7776 DR_CONTROL unless necessary. Extend comments.
7777 * linux-x86-low.c (x86_linux_prepare_to_resume): Don't write to
7778 DR0-3 if not used. If any watchpoint was set, clear DR_STATUS.
7779
2ece8244
YQ
77802011-12-13 Yao Qi <yao@codesourcery.com>
7781
7782 * tracepoint.c (trace_buffer_alloc): Replace magic numbers with
7783 macros.
7784 (upload_fast_traceframes, upload_fast_traceframes): Likewise.
7785
784867a5
JK
77862011-12-08 Jan Kratochvil <jan.kratochvil@redhat.com>
7787
7788 * linux-low.c (linux_kill): Skip PTRACE_KILL if LWP does not exist.
7789 Print new debug message for such case.
7790
6bf36717
JK
77912011-12-06 Jan Kratochvil <jan.kratochvil@redhat.com>
7792
7793 Fix overlapping memcpy.
7794 * mem-break.c (set_raw_breakpoint_at): New variable buf. Use it for
7795 the read_inferior_memory transfer.
7796 (delete_fast_tracepoint_jump): New variable buf. Use it for the
7797 write_inferior_memory transfer.
7798 (set_fast_tracepoint_jump): New variable buf. Use it for the
7799 read_inferior_memory and write_inferior_memory transfers.
7800 (uninsert_fast_tracepoint_jumps_at, reinsert_fast_tracepoint_jumps_at)
7801 (delete_raw_breakpoint, uninsert_raw_breakpoint): New variable buf.
7802 Use it for the write_inferior_memory transfer.
7803 (check_mem_read, check_mem_write): New gdb_asserts for overlapping
7804 buffers.
7805
50275556
MR
78062011-12-06 Maciej W. Rozycki <macro@codesourcery.com>
7807
7808 * linux-low.c (fetch_register, store_register): Make code
7809 consistent, fix formatting.
7810
7325beb4
MR
78112011-12-06 Maciej W. Rozycki <macro@codesourcery.com>
7812
7813 * linux-low.c (usr_store_inferior_registers): Factor out code
7814 to handle individual registers into...
7815 (store_register): ... this new function.
7816
c642a434
UW
78172011-12-06 Ulrich Weigand <uweigand@de.ibm.com>
7818
7819 * Makefile.in (s390-linux32v1.o, s390-linux32v1.c): New rules.
7820 (s390-linux32v2.o, s390-linux32v2.c): Likewise.
7821 (s390-linux64v1.o, s390-linux64v1.c): Likewise.
7822 (s390-linux64v2.o, s390-linux64v2.c): Likewise.
7823 (s390x-linux64v1.o, s390x-linux64v1.c): Likewise.
7824 (s390x-linux64v2.o, s390x-linux64v2.c): Likewise.
7825 * configure.srv [s390*-*-linux*] (srv_regobj): Add new objects.
7826 (srv_xmlfiles): Add new XML files.
7827
7828 * linux-s390-low.c: Include "elf/common.h", <sys/ptrace.h>,
7829 and <sys/uio.h>.
7830 (PTRACE_GETREGSET, PTRACE_SETREGSET): Define if undefined.
7831 (init_registers_s390_linux32v1): Add prototype.
7832 (init_registers_s390_linux32v2): Likewise.
7833 (init_registers_s390_linux64v1): Likewise.
7834 (init_registers_s390_linux64v2): Likewise.
7835 (init_registers_s390x_linux64v1): Likewise.
7836 (init_registers_s390x_linux64v2): Likewise.
7837 (s390_num_regs): Increment to 52.
7838 (s390_regmap): Add orig_r2 register.
7839 (s390_num_regs_3264): Increment to 68.
7840 (s390_regmap_3264): Add orig_r2 register.
7841 (s390_collect_ptrace_register): Handle orig_r2 register.
7842 (s390_supply_ptrace_register): Likewise.
7843 (s390_fill_last_break): New function.
7844 (s390_store_last_break): Likewise.
7845 (s390_fill_system_call): New function.
7846 (s390_store_system_call): Likewise.
7847 (target_regsets): Handle NT_S390_LAST_BREAK and NT_S390_SYSTEM_CALL
7848 register sets.
7849 (s390_check_regset): New function.
7850 (s390_arch_setup): Check for presence of NT_S390_LAST_BREAK and
7851 NT_S390_SYSTEM_CALL regsets and use appropriate description.
7852 Update target_regsets for available register sets.
7853
2268b414
JK
78542011-12-02 Paul Pluzhnikov <ppluzhnikov@google.com>
7855 Jan Kratochvil <jan.kratochvil@redhat.com>
7856
7857 * linux-low.c (get_phdr_phnum_from_proc_auxv, get_dynamic, get_r_debug)
7858 (read_one_ptr, struct link_map_offsets, linux_qxfer_libraries_svr4):
7859 New.
7860 (struct linux_target_ops): Install linux_qxfer_libraries_svr4.
7861 * linux-low.h (struct process_info_private): New member r_debug.
7862 * server.c (handle_qxfer_libraries): Call
7863 the_target->qxfer_libraries_svr4.
7864 (handle_qxfer_libraries_svr4): New function.
7865 (qxfer_packets): New entry "libraries-svr4".
7866 (handle_query): Check QXFER_LIBRARIES_SVR4 and report libraries-svr4.
7867 * target.h (struct target_ops): New member qxfer_libraries_svr4.
7868 * remote.c (remote_xfer_partial): Call add_packet_config_cmd for
7869 PACKET_qXfer_libraries_svr4.
7870
d6db1fab
UW
78712011-11-30 Ulrich Weigand <uweigand@de.ibm.com>
7872
7873 * linux-s390-low.c (s390_collect_ptrace_register): Fully convert
7874 PSW address/mask between 8-byte and 16-byte formats.
7875 (s390_supply_ptrace_register): Likewise.
7876 (s390_get_pc, s390_set_pc): 4-byte PSW address always includes
7877 basic addressing mode bit.
7878
242f5f1c
SS
78792011-11-24 Stan Shebs <stan@codesourcery.com>
7880
7881 * tracepoint.c (cmd_qtstatus): Use plongest instead of %llx.
7882
f196051f
SS
78832011-11-17 Stan Shebs <stan@codesourcery.com>
7884
7885 * tracepoint.c (struct tracepoint): New field traceframe_usage.
7886 (tracing_start_time): New global.
7887 (tracing_stop_time): New global.
7888 (tracing_user_name): New global.
7889 (tracing_notes): New global.
7890 (tracing_stop_note): New global.
7891 (cmd_qtstart): Set traceframe_usage, start_time.
7892 (stop_tracing): Set stop_time.
7893 (cmd_qtstatus): Report additional status.
7894 (cmd_qtp): New function.
7895 (handle_tracepoint_query): Call it.
7896 (cmd_qtnotes): New function.
7897 (handle_tracepoint_general_set): Call it.
7898 (get_timestamp): Rename from tsv_get_timestamp.
7899
405f8e94
SS
79002011-11-14 Stan Shebs <stan@codesourcery.com>
7901 Kwok Cheung Yeung <kcy@codesourcery.com>
7902
7903 * linux-x86-low.c (small_jump_insn): New.
7904 (i386_install_fast_tracepoint_jump_pad): Add arguments for
7905 trampoline and error message, build a trampoline and issue a small
7906 jump instruction to it.
7907 (x86_install_fast_tracepoint_jump_pad): Add arguments for
7908 trampoline and error message.
7909 (x86_get_min_fast_tracepoint_insn_len): New.
7910 (the_low_target): Add call to x86_get_min_fast_tracepoint_insn_len.
7911 * linux-low.h (struct linux_target_ops): Add arguments to
7912 install_fast_tracepoint_jump_pad operation, add new operation.
7913 * linux-low.c (linux_install_fast_tracepoint_jump_pad): Add
7914 arguments.
7915 (linux_get_min_fast_tracepoint_insn_len): New function.
7916 (linux_target_op): Add new operation.
7917 * tracepoint.c (gdb_trampoline_buffer): New IPA variable.
7918 (gdb_trampoline_buffer_end): Ditto.
7919 (gdb_trampoline_buffer_error): Ditto.
7920 (struct ipa_sym_addresses): Add fields for new IPA variables.
7921 (symbol_list): Add entries for new IPA variables.
7922 (struct tracepoint): Add fields to hold the address range of the
7923 trampoline used by the tracepoint.
7924 (trampoline_buffer_head): New static variable.
7925 (trampoline_buffer_tail): Ditto.
7926 (claim_trampoline_space): New function.
7927 (have_fast_tracepoint_trampoline_buffer): New function.
7928 (clone_fast_tracepoint): Fill in trampoline fields of tracepoint
7929 structure.
7930 (install_fast_tracepoint): Ditto, also add error buffer argument.
7931 (cmd_qtminftpilen): New function.
7932 (handle_tracepoint_query): Add response to qTMinFTPILen packet.
7933 (fast_tracepoint_from_trampoline_address): New function.
7934 (fast_tracepoint_collecting): Handle trampoline as part of jump
7935 pad space.
7936 (set_trampoline_buffer_space): New function.
7937 (initialize_tracepoint): Initialize new IPA variables.
7938 * target.h (struct target_ops): Add arguments to
7939 install_fast_tracepoint_jump_pad operation, add new
7940 get_min_fast_tracepoint_insn_len operation.
7941 (target_get_min_fast_tracepoint_insn_len): New.
7942 (install_fast_tracepoint_jump_pad): Add arguments.
7943 * server.h (IPA_BUFSIZ): Define.
7944 * linux-i386-ipa.c: Include extra header files.
7945 (initialize_fast_tracepoint_trampoline_buffer): New function.
7946 (initialize_low_tracepoint): Call it.
7947 * server.h (set_trampoline_buffer_space): Declare.
7948 (claim_trampoline_space): Ditto.
7949 (have_fast_tracepoint_trampoline_buffer): Ditto.
7950
1e4d1764
YQ
79512011-11-14 Yao Qi <yao@codesourcery.com>
7952
7953 * server.c (handle_query): Handle InstallInTrace for qSupported.
7954 * tracepoint.c (add_tracepoint): Sort list.
7955 (install_tracepoint, download_tracepoint): New.
7956 (cmd_qtdp): Call them to install and download tracepoints.
7957 (sort_tracepoints): Removed.
7958 (cmd_qtstart): Update.
7959
5c73ff4e
YQ
79602011-11-14 Yao Qi <yao@codesourcery.com>
7961
7962 * mem-break.c (inc_ref_fast_tracepoint_jump): New.
7963 * mem-break.h: Declare.
7964 * tracepoint.c (cmd_qtstart): Move some code to ...
7965 (clone_fast_tracepoint, install_fast_tracepoint): ... here.
7966 New.
7967 (download_tracepoints): Move some code to ...
7968 (download_tracepoint_1): ... here. New.
7969
86a30030
YQ
79702011-11-08 Yao Qi <yao@codesourcery.com>
7971
7972 * remote-utils.c (relocate_instruction): A comment fix.
7973
8d26e50c
JB
79742011-11-07 Joel Brobecker <brobecker@adacore.com>
7975
7976 * win32-i386-low.c (dr_status_mirror, dr_control_mirror): Delete.
7977 (i386_dr_low_get_control, i386_dr_low_get_status): Use
7978 dr_status_mirror and dr_control_mirror from debug_reg_state.
7979 (i386_dr_low_get_status): Use debug_reg_state.dr_status_mirror
7980 (i386_initial_stuff): Remove use of deleted globals.
7981 (i386_get_thread_context, i386_set_thread_context,
7982 i386_thread_added): Use dr_status_mirror and dr_control_mirror
7983 from debug_reg_state.
7984
a59306a3
YQ
79852011-11-05 Yao Qi <yao@codesourcery.com>
7986
7987 * tracepoint.c (gdb_collect): Loop over tracepoints of same
7988 address as TPOINT's.
7989
3065dfb6
SS
79902011-11-02 Stan Shebs <stan@codesourcery.com>
7991
7992 * tracepoint.c (agent_mem_read_string): New function.
7993 (eval_agent_expr): Call it for tracenz.
7994 * server.c (handle_query): Report support for tracenz.
7995
fd0d8c7c
YQ
79962011-11-02 Yao Qi <yao@codesourcery.com>
7997
7998 * tracepoint.c (cmd_qtstart): Remove unused local variables.
7999
609086b1
YQ
80002011-11-02 Yao Qi <yao@codesourcery.com>
8001
8002 * target.h: Fix a typo in comment.
8003
b9fd1791
PA
80042011-10-31 Pedro Alves <pedro@codesourcery.com>
8005
8006 * mem-break.c (check_mem_write): Add `myaddr' parameter. Don't
8007 clobber the breakpoints' shadows with fast tracepoint jumps.
8008 * mem-break.h (check_mem_write): Add `myaddr' parameter.
8009 * target.c (write_inferior_memory): Also pass MYADDR down to
8010 check_mem_write.
8011
03583c20
UW
80122011-10-07 Ulrich Weigand <ulrich.weigand@linaro.org>
8013
8014 * configure.ac: Check support for personality routine.
8015 * configure: Regenerate.
8016 * config.in: Likewise.
8017 * linux-low.c: Include <sys/personality.h>.
8018 Define ADDR_NO_RANDOMIZE if necessary.
8019 (linux_create_inferior): Disable address space randomization when
8020 forking inferior, if requested.
8021 (linux_supports_disable_randomization): New function.
8022 (linux_target_ops): Install it.
8023 * server.h (disable_randomization): Declare.
8024 * server.c (disable_randomization): New global variable.
8025 (handle_general_set): Handle QDisableRandomization.
8026 (handle_query): Likewise for qSupported.
8027 (main): Support --disable-randomization and --no-disable-randomization
8028 command line arguments.
8029 * target.h (struct target_ops): Add supports_disable_randomization.
8030 (target_supports_disable_randomization): New macro.
8031
723b724b
MF
80322011-09-29 Mike Frysinger <vapier@gentoo.org>
8033
8034 * linux-low.c (target_loadseg): Add defined PTRACE_GETFDPIC to the
8035 ifdef check.
8036 [PT_GETDSBT] (target_loadmap): Wrap in a defined PT_GETDSBT check.
8037 [!PT_GETDSBT] (target_loadmap): New definition.
8038 (LINUX_LOADMAP, LINUX_LOADMAP_EXEC, LINUX_LOADMAP_INTERP): Define.
8039 (linux_read_loadmap): Change PTRACE_GETDSBT_EXEC to
8040 LINUX_LOADMAP_EXEC, PTRACE_GETDSBT_INTERP to LINUX_LOADMAP_INTERP,
8041 and PT_GETDSBT to LINUX_LOADMAP.
8042 [!PT_GETDSBT] (linux_read_loadmap): Define to NULL.
8043 (linux_target_ops): Delete unnecessary ifdef PT_GETDSBT check.
8044
55329a5c 80452011-09-21 Ulrich Weigand <ulrich.weigand@linaro.org>
71487fd7
UW
8046
8047 * linux-arm-low.c (struct arm_linux_hwbp_cap): Remove.
8048 (arm_linux_hwbp_cap): New static variable.
8049 (arm_linux_get_hwbp_cap): Replace by ...
8050 (arm_linux_init_hwbp_cap): ... this new function.
8051 (arm_linux_get_hw_breakpoint_count): Use arm_linux_hwbp_cap.
8052 (arm_linux_get_hw_watchpoint_count): Likewise.
8053 (arm_linux_get_hw_watchpoint_max_length): Likewise.
8054 (arm_arch_setup): Call arm_linux_init_hwbp_cap.
8055 (arm_prepare_to_resume): Use perror_with_name instead of error.
8056
55329a5c 80572011-09-21 Ulrich Weigand <ulrich.weigand@linaro.org>
09b4ad9f
UW
8058
8059 * linux-arm-low.c: Include <signal.h>.
8060 (PTRACE_GETHBPREGS, PTRACE_SETHBPREGS): Define if necessary.
8061 (struct arm_linux_hwbp_cap): New data type.
8062 (arm_hwbp_type, arm_hwbp_control_t): New typedefs.
8063 (struct arm_linux_hw_breakpoint): New data type.
8064 (MAX_BPTS, MAX_WPTS): Define.
8065 (struct arch_process_info, struct arch_lwp_info): New data types.
8066 (arm_linux_get_hwbp_cap): New function.
8067 (arm_linux_get_hw_breakpoint_count): Likewise.
8068 (arm_linux_get_hw_watchpoint_count): Likewise.
8069 (arm_linux_get_hw_watchpoint_max_length): Likewise.
8070 (arm_hwbp_control_initialize): Likewise.
8071 (arm_hwbp_control_is_enabled): Likewise.
8072 (arm_hwbp_control_is_initialized): Likewise.
8073 (arm_hwbp_control_disable): Likewise.
8074 (arm_linux_hw_breakpoint_equal): Likewise.
8075 (arm_linux_hw_point_initialize): Likewise.
8076 (struct update_registers_data): New data structure.
8077 (update_registers_callback: New function.
8078 (arm_insert_point): Likewise.
8079 (arm_remove_point): Likewise.
8080 (arm_stopped_by_watchpoint): Likewise.
8081 (arm_stopped_data_address): Likewise.
8082 (arm_new_process): Likewise.
8083 (arm_new_thread): Likewise.
8084 (arm_prepare_to_resume): Likewise.
8085 (the_low_target): Register arm_insert_point, arm_remove_point,
8086 arm_stopped_by_watchpoint, arm_stopped_data_address, arm_new_process,
8087 arm_new_thread, and arm_prepare_to_resume.
8088
6b9801d4
SS
80892011-09-15 Stan Shebs <stan@codesourcery.com>
8090
8091 * server.h (struct emit_ops): Add compare-goto fields.
8092 * tracepoint.c (gdb_agent_op_sizes): New table.
8093 (emit_eq_goto): New function.
8094 (emit_ne_goto): New function.
8095 (emit_lt_goto): New function.
8096 (emit_le_goto): New function.
8097 (emit_gt_goto): New function.
8098 (emit_ge_goto): New function.
8099 (is_goto_target): New function.
8100 (compile_bytecodes): Recognize special cases of compare-goto
8101 combinations and call specialized emitters for them.
8102 * linux-x86-low.c (amd64_emit_eq_goto): New function.
8103 (amd64_emit_ne_goto): New function.
8104 (amd64_emit_lt_goto): New function.
8105 (amd64_emit_le_goto): New function.
8106 (amd64_emit_gt_goto): New function.
8107 (amd64_emit_ge_goto): New function.
8108 (amd64_emit_ops): Add the new functions.
8109 (i386_emit_eq_goto): New function.
8110 (i386_emit_ne_goto): New function.
8111 (i386_emit_lt_goto): New function.
8112 (i386_emit_le_goto): New function.
8113 (i386_emit_gt_goto): New function.
8114 (i386_emit_ge_goto): New function.
8115 (i386_emit_ops): Add the new functions.
8116
bf15cbda
SS
81172011-09-08 Stan Shebs <stan@codesourcery.com>
8118
8119 * linux-x86-low.c (i386_emit_prologue): Save %ebx.
8120 (i386_emit_epilogue): Restore %ebx.
8121
943ca1dd
JZ
81222011-08-31 Jie Zhang <jzhang918@gmail.com>
8123
8124 * server.c (step_thread): Remove definition.
8125 (process_serial_event): Don't handle Hs.
8126 * server.h (step_thread): Remove declaration.
8127 * target.c (set_desired_inferior): Remove use of step_thread.
8128
e3deef73
LM
81292011-08-24 Luis Machado <lgustavo@codesourcery.com>
8130
8131 * linux-low.c: Include linux-procfs.h.
8132 (linux_attach_lwp_1): Update comments.
8133 (linux_attach): Scan for existing threads when attaching to a
8134 process that is the tgid.
8135 * Makefile.in: Update dependencies.
8136
13da1c97
LM
81372011-08-24 Luis Machado <lgustavo@codesourcery.com>
8138
8139 * configure.srv: Add linux-procfs.o dependencies.
8140
881127c9
YQ
81412011-08-14 Yao Qi <yao@codesourcery.com>
8142
8143 * target.h (struct target_ops): Fix indent.
8144 * win32-low.c (win32_target_ops): Fix comment.
8145
58dbd541
YQ
81462011-08-14 Andrew Jenner <andrew@codesourcery.com>
8147 Yao Qi <yao@codesourcery.com>
8148
8149 * Makefile.in (clean): Remove tic6x-*.c files.
8150 (linux-tic6x-low.o, tic6x-c62x-linux.o, tic6x-c64x-linux.o): New rules.
8151 (tic6x-c64xp-linux.o, tic6x-c62x-linux.c, tic6x-c64x-linux.c): Likewise.
8152 (tic6x-c64xp-linux.c): Likewise.
8153 * configure.srv: Add support for tic6x-*-uclinux.
8154 * linux-tic6x-low.c: New.
8155 * linux-low.c (PT_TEXT_ADDR, PT_DATA_ADDR, PT_TEXT_END_ADDR): Define.
8156
78d85199
YQ
81572011-08-14 Andrew Stubbs <ams@codesourcery.com>
8158 Yao Qi <yao@codesourcery.com>
8159
8160 * target.h (struct target_ops): Add read_loadmap.
8161 * linux-low.c (struct target_loadseg): New type.
8162 (struct target_loadmap): New type.
8163 (linux_read_loadmap): New function.
8164 (linux_target_ops): Add linux_read_loadmap.
8165 * server.c (handle_query): Support qXfer:fdpic:read packet.
43aaf8b6
PA
8166 * win32-low.c (win32_target_ops): Initialize field `read_loadmap'
8167 to NULL.
78d85199 8168
a959a88d
EZ
81692011-08-05 Eli Zaretskii <eliz@gnu.org>
8170
8171 * win32-low.c: Include <stdint.h>.
8172
1ced966e
PA
81732011-07-22 Pedro Alves <pedro@codesourcery.com>
8174
8175 * i386-low.c (i386_insert_aligned_watchpoint): Don't pass the info
8176 to the inferior here.
8177 (i386_remove_aligned_watchpoint): Ditto.
8178 (i386_handle_nonaligned_watchpoint): Return immediate on fail to
8179 fit part of the watchpoint in the debug registers.
8180 (i386_update_inferior_debug_regs): New.
8181 (i386_low_insert_watchpoint): Work on a local mirror of the debug
8182 registers, and only update the inferior on success.
8183 (i386_low_remove_watchpoint): Ditto.
8184
d26e3629
KY
81852011-07-22 Kwok Cheung Yeung <kcy@codesourcery.com>
8186
8187 * linux-low.c (compare_ints, unique, list_threads, show_process,
8188 linux_core_of_thread): Delete.
8189 (linux_target_ops): Change linux_core_of_thread to
8190 linux_common_core_of_thread.
8191 (linux_qxfer_osdata): Defer to linux_common_xfer_osdata.
8192 * utils.c (malloc_failure): Change type of argument.
8193 (xmalloc, xrealloc, xcalloc, xsnprintf): Delete.
8194 * Makefile.in (SFILES): Add common/common-utils.c, common/xml-utils.c,
8195 common/linux-osdata.c, common/ptid.c and common/buffer.c.
8196 (OBS): Add xml-utils.o, common-utils.o, ptid.o and buffer.o.
8197 (IPA_OBJS): Add common-utils-ipa.o.
8198 (ptid_h, linux_osdata_h): New macros.
8199 (server_h): Add common/common-utils.h, common/xml-utils.h,
8200 common/buffer.h, common/gdb_assert.h, common/gdb_locale.h and
8201 common/ptid.h.
8202 (common-utils-ipa.o, common-utils.o, xml-utils.o, linux-osdata.o,
8203 ptid.o, buffer.o): New rules.
8204 (linux-low.o): Add common/linux-osdata.h as a dependency.
8205 * configure.srv (srv_tgtobj): Add linux-osdata.o to Linux targets.
8206 * configure.ac: Add AC_HEADER_DIRENT check.
8207 * config.in: Regenerate.
8208 * configure: Regenerate.
8209 * remote-utils.c (xml_escape_text): Delete.
8210 (buffer_grow, buffer_free, buffer_init, buffer_finish,
8211 buffer_xml_printf): Move to common/buffer.c.
8212 * server.c (main): Remove call to initialize_inferiors.
8213 * server.h (struct ptid, ptid_t, minus_one_ptid, null_ptid,
8214 ptid_build, pid_to_ptid, ptid_get_pid, ptid_get_lwp, ptid_get_tid,
8215 ptid_equal, ptid_is_pid, initialize_inferiors, xml_escape_text,
8216 internal_error, gdb_assert, gdb_assert_fail): Delete.
8217 (struct buffer, buffer_grow, buffer_free, buffer_init, buffer_finish,
8218 buffer_xml_printf, buffer_grow_str, buffer_grow_str0): Move to
8219 common/buffer.h.
8220 * inferiors.c (null_ptid, minus_one_ptid, ptid_build, pid_to_ptid,
8221 ptid_get_pid, ptid_get_lwp, ptid_get_tid, ptid_equal, ptid_is_pid,
8222 initialize_inferiors): Delete.
8223
2275a1a7
PA
82242011-07-20 Pedro Alves <pedro@codesourcery.com>
8225
8226 * tracepoint.c (tracepoint_look_up_symbols): Return upon the first
8227 symbol error.
8228
0a5b1e09
PA
82292011-05-31 Pedro Alves <pedro@codesourcery.com>
8230
8231 * linux-x86-low.c (i386_dr_low_get_addr): Fix off by one in
8232 assertion.
8233 * win32-i386-low.c (i386_dr_low_get_addr): Ditto.
8234
6938fd34
YQ
82352011-05-26 Yao Qi <yao@codesourcery.com>
8236
8237 * Makefile.in (thread-db.o): Track dependence to
8238 common/gdb_thread_db.h.
8239 * thread-db.c: include gdb_thread_db.h from right place.
8240
b481f9e0
TT
82412011-05-16 Adrian Cornish <gnu@bluedreamer.com>
8242
8243 * linux-i386-ipa.c (supply_static_tracepoint_registers): Pass
8244 __FILE__ and __LINE__ to internal_error.
8245
98a5dd13
DE
82462011-05-13 Doug Evans <dje@google.com>
8247
8248 * thread-db.c (try_thread_db_load_from_sdir): New function.
8249 (try_thread_db_load_from_dir): New function.
8250 (thread_db_load_search): Handle $sdir, ignore $pdir.
8251 Remove trying of system directories if search of
8252 libthread-db-search-path fails, that is now done via $sdir.
8253
d248b706
KY
82542011-05-12 Kwok Cheung Yeung <kcy@codesourcery.com>
8255
8256 * server.c (handle_query): Add EnableDisableTracepoints to the list
8257 of supported features.
43aaf8b6 8258 * tracepoint.c (clear_installed_tracepoints): Uninstall disabled
d248b706 8259 tracepoints.
43aaf8b6
PA
8260 (cmd_qtenable_disable): New.
8261 (cmd_qtstart): Install tracepoints even if disabled.
8262 (handle_tracepoint_general_set): Add call to cmd_qtenable_disable on
8263 receiving a QTEnable or QTDisable packet.
8264 (gdb_collect): Skip data collection if fast tracepoint is disabled.
8265 (ust_marker_to_static_tracepoint): Do not ignore disabled static
8266 tracepoints.
8267 (gdb_probe): Skip data collection if static tracepoint is disabled.
d248b706 8268
84e578fb
DE
82692011-05-10 Doug Evans <dje@google.com>
8270
8271 * thread-db.c (thread_db_handle_monitor_command): Handle elided path.
8272
71f55dd8
DE
82732011-05-04 Doug Evans <dje@google.com>
8274
8275 * linux-low.c (linux_join): Skip process lookup.
8276 * spu-low.c (spu_join): Ditto.
8277 * server.c (join_inferiors_callback): Delete.
8278 (process_serial_event): For 'D' packet (detach) call join_inferior
8279 directly.
8280
4d393d60
JM
82812011-05-04 Joseph Myers <joseph@codesourcery.com>
8282
8283 * README: Don't mention xscale*-*-linux*.
8284 * configure.srv (xscale*-*-linux*): Don't handle target.
8285
b00ad6ff
NF
82862011-04-27 Nathan Froyd <froydnj@codesourcery.com>
8287
8288 * linux-x86-low.c (amd64_emit_const): Call memcpy instead of
8289 casting pointers.
8290 (amd64_emit_reg, amd64_emit_int_call_1, amd64_emit_void_call_2):
8291 (i386_emit_const, i386_emit_reg, i386_emit_int_call_1):
8292 (i386_emit_void_call_2): Likewise.
8293
af96c192
YQ
82942011-04-26 Yao Qi <yao@codesourcery.com>
8295
43aaf8b6
PA
8296 * linux-low.c: Move common macros to linux-ptrace.h.
8297 Include linux-ptrace.h.
af96c192
YQ
8298 * Makefile.in (linux_ptrace_h): New.
8299 (linux-low.o): Depends on linux-ptrace.h.
8300
03f2bd59
JK
83012011-04-24 Jan Kratochvil <jan.kratochvil@redhat.com>
8302
8303 * remote-utils.c (handle_accept_event): Close LISTEN_DESC only if
8304 RUN_ONCE. Comment for the LISTEN_DESC delete_file_handler call.
8305 (remote_prepare): New function with most of the TCP code from ...
8306 (remote_open): ... here. Detect PORT here unconditionally. Move also
8307 setting transport_is_reliable.
8308 * server.c (run_once): New variable.
8309 (gdbserver_usage): Document it.
8310 (main): Set run_once for `--once'. Call remote_prepare. Exit after
8311 the first run if RUN_ONCE.
8312 * server.h (run_once, remote_prepare): New declarations.
8313
7a9dd1b2
TT
83142011-04-19 Tom Tromey <tromey@redhat.com>
8315
8316 * win32-low.c (handle_load_dll): Remove duplicate "the".
8317
81239425
PM
83182011-04-07 Pierre Muller <muller@ics.u-strasbg.fr>
8319
8320 Remove support for old Cygwin 1.5 versions.
8321 * win32-low.c (win32_create_inferior): Use new cygwin_path_list
8322 function to avoid warning.
8323 (win32_add_one_solib): Use cygwin_conv_path function to avoid
8324 warning.
8325
9e0627f1
PM
83262011-03-18 Pierre Muller <muller@ics.u-strasbg.fr>
8327
8328 * gdbserver/server.h (Macro _): Define it if not available.
8329
588eebee
MS
83302011-03-14 Michael Snyder <msnyder@vmware.com>
8331
348af9f7 8332 * hostio.c (handle_close): Remove unnecessary null test.
588eebee 8333
43f70d4c
JB
83342011-03-10 Joel Brobecker <brobecker@adacore.com>
8335
8336 * Makefile.in (maintainer-clean realclean distclean): Remove
8337 "make ... subdir_do" command.
8338
348af9f7
MS
83392011-03-10 Michael Snyder <msnyder@vmware.com>
8340
8341 * tracepoint.c (tracepoint_finish_step): Fix loop variable.
8342
8343 * server.c (handle_v_run): Free alloced buffer on early return.
8344
e637a4f5
YQ
83452011-03-09 Yao Qi <yao@codesourcery.com>
8346
8347 Revert:
8348 2011-03-04 Yao Qi <yao@codesourcery.com>
8349
8350 * Makefile.in: Remove GNU make feature --directory.
8351
8352 2011-03-05 Yao Qi <yao@codesourcery.com>
8353
8354 * Makefile.in (CLEANDIRS, REQUIRED_SUBDIRS): New variable.
8355 (subdir_do): New make target. Copied from gdb/Makefile.
8356 (maintainer-clean, realclean, distclean, clean): Call corresponding
8357 make targets in common/Makefile.
8358
8359 2011-02-11 Yao Qi <yao@codesourcery.com>
8360
8361 * configure.ac: Call AC_PROG_RANLIB.
8362 * Makefile.in: Remove signals.o from OBS. Link libcommon.a.
8363 * configure: Regenerate.
8364
e6edda56
JK
83652011-03-07 Jan Kratochvil <jan.kratochvil@redhat.com>
8366
8367 * remote-utils.c (putpkt_binary_1): Calculate BUF2 size dynamically.
8368
e5141119
JB
83692011-03-06 Yao Qi <yao@codesourcery.com>
8370
8371 * Makefile.in (REQUIRED_SUBDIRS): Remove $(LIBCOMMON_DIR).
8372
64794aa4
JB
83732011-03-05 Yao Qi <yao@codesourcery.com>
8374
8375 * Makefile.in (CLEANDIRS, REQUIRED_SUBDIRS): New variable.
8376 (subdir_do): New make target. Copied from gdb/Makefile.
8377 (maintainer-clean, realclean, distclean, clean): Call corresponding
8378 make targets in common/Makefile.
8379
7a762829
YQ
83802011-03-04 Yao Qi <yao@codesourcery.com>
8381
8382 * Makefile.in: Remove GNU make feature --directory.
8383
348af9f7
MS
83842011-03-04 Michael Snyder <msnyder@vmware.com>
8385
8386 * server.c (queue_stop_reply): Call xmalloc not malloc.
8387
83882011-03-02 Michael Snyder <msnyder@vmware.com>
8389
8390 * linux-arm-low.c (arm_arch_setup): Replace malloc with xmalloc.
8391
9f72fee2
MS
83922011-02-28 Michael Snyder <msnyder@vmware.com>
8393
588eebee
MS
8394 * tracepoint.c (cmd_qtv): Discard unused value 'packet'.
8395 (cmd_qtframe): Ditto.
8396 (cmd_qtbuffer): Ditto.
8397 (cmd_bigqtbuffer): Ditto.
8398
9f72fee2
MS
8399 * utils.c (decimal2str): Initialize 'width' to nine, then
8400 don't mess with it.
8401
8040bd49
UW
84022011-02-28 Ulrich Weigand <uweigand@de.ibm.com>
8403
8404 * hostio.c (require_data): Free *data, not data.
8405
7e52cbd0
JK
84062011-02-28 Jan Kratochvil <jan.kratochvil@redhat.com>
8407
8408 * hostio.c (require_data): Use free, not xfree.
8409
9130f83e
MS
84102011-02-27 Michael Snyder <msnyder@vmware.com>
8411
4b812f4e
MS
8412 * server.c (handle_query): Discard unused value.
8413
9130f83e
MS
8414 * hostio.c (require_data): Free malloc memory before returning
8415 error.
8416
69d37113
MS
84172011-02-26 Michael Snyder <msnyder@vmware.com>
8418
8419 * linux-low.c (list_threads): Call closedir for dirent.
8420
35f5825a
MS
84212011-02-27 Michael Snyder <msnyder@vmware.com>
8422
2a589cef
MS
8423 * i386-low.c (i386-length_and_rw_bits): Comment the fact that
8424 a case statement falls through.
8425
0adea5f7
MS
8426 * linux-low.c (linux_xfer_siginfo): Fix fencepost error.
8427
35f5825a
MS
8428 * linux-amd64-ipa.c (gdb_agent_get_raw_reg): Fix fencepost error
8429 in comparison.
8430
238f1c74
MS
84312011-02-26 Michael Snyder <msnyder@vmware.com>
8432
8433 * utils.c (decimal2str): Eliminate dead code and dead param.
8434 (pulongest): Drop dead param from call to decimal2str.
8435 (plongest): Ditto.
8436
633ff500
JB
84372011-02-24 Joel Brobecker <brobecker@adacore.com>
8438
8439 Revert the following patch (not approved yet):
8440 2011-02-21 Hui Zhu <teawater@gmail.com>
8441 * tracepoint.c (tp_printf): New function.
8442 (eval_agent_expr): Handle gdb_agent_op_printf.
8443
f9c6ff72
HZ
84442011-02-21 Hui Zhu <teawater@gmail.com>
8445
8446 * tracepoint.c (tp_printf): New function.
8447 (eval_agent_expr): Handle gdb_agent_op_printf.
8448
94d5e490
TT
84492011-02-18 Tom Tromey <tromey@redhat.com>
8450
8451 * Makefile.in (tracepoint-ipa.o): Depend on ax.def.
8452 (tracepoint.o): Likewise.
8453 * tracepoint.c (enum gdb_agent_op): Use ax.def.
8454 (gdb_agent_op_names): Likewise.
8455
c7f96d2b
TT
84562011-02-18 Tom Tromey <tromey@redhat.com>
8457
8458 * tracepoint.c (enum gdb_agent_op) <gdb_agent_op_pick,
8459 gdb_agent_op_rot>: New constants.
8460 (gdb_agent_op_names): Add pick and roll.
8461 (eval_agent_expr) <gdb_agent_op_pick, gdb_agent_op_rot>: New
8462 cases.
8463
0feedb2c
JK
84642011-02-15 Jan Kratochvil <jan.kratochvil@redhat.com>
8465
8466 * aclocal.m4: Regenerated with aclocal-1.11.1.
8467
b3b9301e
PA
84682011-02-14 Pedro Alves <pedro@codesourcery.com>
8469
8470 * server.c (handle_qxfer_traceframe_info): New.
8471 (qxfer_packets): Register "traceframe-info".
8472 (handle_query): Report support for qXfer:traceframe-info:read+.
8473 * tracepoint.c (match_blocktype): New.
8474 (traceframe_find_block_type): Rename to ...
8475 (traceframe_walk_blocks): ... this. Add callback filter argument,
8476 and use it.
8477 (traceframe_find_block_type): New, reimplemented on top of
8478 traceframe_walk_blocks.
8479 (build_traceframe_info_xml): New.
8480 (traceframe_read_info): New.
8481 * server.h (traceframe_read_info): Declare.
8482
4f3e6fb7
YQ
84832011-02-11 Yao Qi <yao@codesourcery.com>
8484
8485 * configure.ac: Call AC_PROG_RANLIB.
8486 * Makefile.in: Remove signals.o from OBS. Link libcommon.a.
8487 * configure: Regenerate.
8488
764880b7
PA
84892011-02-07 Pedro Alves <pedro@codesourcery.com>
8490
8491 * server.c (gdb_read_memory): Change return semantics to allow
8492 partial transfers.
8493 (handle_search_memory_1): Adjust.
8494 (process_serial_event) <'m' packet>: Handle partial transfers.
8495 * tracepoint.c (traceframe_read_mem): Handle partial transfers.
8496
1c79eb8a
PA
84972011-01-28 Pedro Alves <pedro@codesourcery.com>
8498
8499 * regcache.c (init_register_cache): Initialize
8500 regcache->register_status.
8501 (free_register_cache): Release regcache->register_status.
8502 (regcache_cpy): Copy register_status.
8503 (registers_to_string): Print 'x's for unavailable registers.
8504 (supply_register): Mark the register's status valid or
8505 unavailable, depending on whether a buffer was passed in or not.
8506 (supply_register_zeroed): New.
8507 (supply_regblock): Mark the registers' status valid or
8508 unavailable, depending on whether a buffer was passed in or not.
8509 * regcache.h (REG_UNAVAILABLE, REG_VALID): New defines.
8510 (struct regcache): New `register_status' field.
8511 (supply_register_zeroed): Declare.
8512 * i387-fp.c (i387_xsave_to_cache): Zero out registers using
8513 supply_register_zeroed, rather than passing a NULL buffer to
8514 supply_register.
8515 * tracepoint.c (fetch_traceframe_registers): Update comment.
8516
85724a0e
PA
85172011-01-28 Pedro Alves <pedro@codesourcery.com>
8518
8519 * i387-fp.c (i387_xsave_to_cache): Make passing NULL as register
8520 buffer explicit.
8521
d08aafef
PA
85222011-01-25 Pedro Alves <pedro@codesourcery.com>
8523
8524 * server.h (decode_xfer_write): Change prototype.
8525 * remote-utils.c (decode_xfer_write): Remove `annex' parameter,
8526 and don't extract the annex here.
8527 * server.c (decode_xfer_read): Remove `annex' parameter,
8528 and don't extract the annex here.
8529 (decode_xfer): New.
8530 (struct qxfer): New.
8531 (handle_qxfer_auxv, handle_qxfer_features, handle_qxfer_libraries)
8532 (handle_qxfer_osdata, handle_qxfer_siginfo, handle_qxfer_spu)
8533 (handle_qxfer_statictrace): New functions, abstracted out from
8534 handle_query, and made to use the struct qxfer interface.
8535 (handle_threads_qxfer_proper): Rename to ...
8536 (handle_qxfer_threads_proper): ... this.
8537 (handle_threads_qxfer): Rename to ...
8538 (handle_qxfer_threads): ... this. Adjust.
8539 (qxfer_packets): New array.
8540 (handle_qxfer): New function.
8541 (handle_query): Use handle_qxfer.
8542
493e2a69
MS
85432011-01-05 Michael Snyder <msnyder@msnyder-server.eng.vmware.com>
8544
8545 * gdbreplay.c: Shorten lines of >= 80 columns.
8546 * linux-low.c: Ditto.
8547 * linux-ppc-low.c: Ditto.
8548 * linux-s390-low.c: Ditto.
8549 * linux-sparc-low.c: Ditto.
8550 * linux-x86-low.c: Ditto.
8551 * linux-xtensa-low.c: Ditto.
8552 * mem-break.c: Ditto.
8553 * nto-low.c: Ditto.
8554 * regcache.h: Ditto.
8555 * remote-utils.c: Ditto.
8556 * server.c: Ditto.
8557 * server.h: Ditto.
8558 * thread-db.c: Ditto.
8559 * tracepoint.c: Ditto.
8560 * utils.c: Ditto.
8561 * win32-low.h: Ditto.
8562
44944448
JB
85632011-01-05 Joel Brobecker <brobecker@adacore.com>
8564
8565 * gdbserver/configure.ac, gdbserver/gdbserver.1: Copyright year
8566 update.
8567
71ce852c
JB
85682011-01-01 Joel Brobecker <brobecker@adacore.com>
8569
8570 * server.c (gdbserver_version): Update copyright year in version
8571 output.
8572 * gdbreplay.c (gdbreplay_version): Ditto.
8573
eb826dc6
MF
85742010-12-29 Jie Zhang <jie.zhang@analog.com>
8575
8576 * configure.srv (bfin-*-*linux*): Handle Blackfin/Linux targets.
8577 * linux-bfin-low.c: New file.
8578 * linux-low.c: Define PT_TEXT_ADDR, PT_TEXT_END_ADDR, and
8579 PT_DATA_ADDR for BFIN targets.
8580 * Makefile.in (SFILES): Add linux-bfin-low.c.
8581 (clean): Remove reg-bfin.c.
8582 (linux-bfin-low.o, reg-bfin.o, reg-bfin.c): New targets.
8583 * README: Mention supported Blackfin targets.
8584
39ab222a
MF
85852010-12-23 Mike Frysinger <vapier@gentoo.org>
8586
8587 * .gitignore: New file.
8588
a1f2ce7d
MF
85892010-11-16 Mike Frysinger <vapier@gentoo.org>
8590
8591 * linux-low.c (linux_tracefork_child): Add char* cast to arg.
8592
f474844c
JZ
85932010-10-22 Jie Zhang <jie@codesourcery.com>
8594
8595 * Makefile.in: Add FLAGS_TO_PASS variable.
8596 (install): Remove dependency of install-only and recursively
8597 invoke make for install-only.
8598
f1048712
DE
85992010-10-04 Doug Evans <dje@google.com>
8600
8601 * Makefile.in (uninstall): Use $(DESTDIR).
8602
b53a1623
PA
86032010-09-24 Pedro Alves <pedro@codesourcery.com>
8604
e6ee044d
PA
8605 PR gdb/11842
8606
b53a1623
PA
8607 * linux-x86-low.c (compat_siginfo_from_siginfo)
8608 (siginfo_from_compat_siginfo): Also copy si_pid and si_uid when
8609 si_code is < 0. Check for si_code == SI_TIMER before checking for
8610 si_code < 0.
8611
fa1bd1e4
JB
86122010-09-13 Joel Brobecker <brobecker@adacore.com>
8613
8614 * lynx-i386-low.c: New file.
8615 * configure.srv: Add handling of i[34567]86-*-lynxos* targets.
8616
47fac8f8
JB
86172010-09-13 Joel Brobecker <brobecker@adacore.com>
8618
8619 * lynx-low.c (ptrace_request_to_str): Remove handling for
8620 request values that have been removed in LynxOS 5.x.
8621
1adfc54d
JB
86222010-09-13 Joel Brobecker <brobecker@adacore.com>
8623
8624 * lynx-low.c, lynx-ppc-loc.c: Include <sys/ptrace.h> instead of
8625 <ptrace.h>
8626
c2a66c29
NS
86272010-09-09 Nathan Sidwell <nathan@codesourcery.com>
8628
8629 * configure.ac: Add --enable-inprocess-agent option.
8630 * configure: Rebuilt.
8631
32fcada3
YQ
86322010-09-06 Yao Qi <yao@codesourcery.com>
8633
8634 * linux-low.c (linux_kill): Remove unused variable.
8635 (linux_stabilize_threads): Likewise.
8636 * server.c (start_inferior): Likewise.
8637 (queue_stop_reply_callback): Likewise.
8638 * tracepoint.c (do_action_at_tracepoint): Likewise.
8639
0cccb683
YQ
86402010-09-06 Yao Qi <yao@codesourcery.com>
8641
8642 * linux-low.c (maybe_move_out_of_jump_pad): Restore current_inferior
8643 on return.
8644
423ec54c
JK
86452010-09-06 Jan Kratochvil <jan.kratochvil@redhat.com>
8646
8647 * target.c (mywait) <TARGET_WAITKIND_EXITED>: Fix to use INTEGER.
8648
12ac6819
PA
86492010-09-06 Pedro Alves <pedro@codesourcery.com>
8650
8651 * Makefile.in (install-only): Replace $IPA_DEPFILES with
8652 "$(IPA_DEPFILES)".
8653
8ed54b31
JB
86542010-09-01 Joel Brobecker <brobecker@adacore.com>
8655
8656 * gdbserver/lynx-low.c, gdbserver/lynx-low.h,
8657 gdbserver/lynx-ppc-low.c: New files.
8658 * Makefile.in (lynx_low_h): New variable.
8659 (lynx-low.o, lynx-ppc-low.o): New rules.
8660 * configure.ac: On LynxOS, link with -lnetinet.
8661 * configure.srv: Add handling of powerpc-*-lynxos* targets.
8662 * configure: regenerate.
8663
bb0116a4
JB
86642010-09-01 Joel Brobecker <brobecker@adacore.com>
8665
8666 * Makefile.in (vasprintf.o, vsnprintf.o): New rules.
8667 * configure.ac: Add check for vasprintf and vsnprintf.
8668 * configure, config.in: Regenerate.
8669 * server.h (vasprintf, vsnprintf): Add conditional declarations.
8670
a778ab81 86712010-09-01 Joel Brobecker <brobecker@adacore.com>
8672
8673 * gdbreplay.c: Move include of alloca.h up, next to include of
8674 malloc.h.
8675 * server.h: Add include of malloc.h.
8676 * mem-break.c: Remove include of malloc.h.
8677 * server.c, tracepoint.c, utils.c, win32-low.c: Likewise.
8678
8b034a19 86792010-09-01 Joel Brobecker <brobecker@adacore.com>
8680
8681 * Makefile.in (memmem.o): Build with -Wno-error.
8682
86832010-09-01 Joel Brobecker <brobecker@adacore.com>
8684
8685 * utils.c (xsnprintf): Make non-static.
8686 * server.h: Add xsnprintf declaration.
8687 * linux-low.c, nto-low.c, target.c, thread-db.c, tracepoint.c:
8688 replace calls to snprintf by calls to xsnprintf throughout.
8689
86902010-09-01 Joel Brobecker <brobecker@adacore.com>
8691
8692 * configure.ac: Add configure check for alloca.
8693 * configure, config.in: Regenerate.
8694 * server.h: Include alloca.h if it exists.
8695 * gdbreplay.c: Include alloca.h if it exists.
8696
1a981360
PA
86972010-08-28 Pedro Alves <pedro@codesourcery.com>
8698
8699 * linux-low.c (__SIGRTMIN): Define if not already defined.
8700 (linux_create_inferior): Check for __ANDROID__ rather than
8701 __SIGRTMIN.
8702 (enqueue_one_deferred_signal): Don't requeue non-RT signals that
8703 are already deferred.
8704 (linux_wait_1): Check for __ANDROID__ rather than __SIGRTMIN.
8705 (linux_resume_one_thread): Don't queue a SIGSTOP if the lwp is
8706 stopped and already has a pending signal to report.
8707 (proceed_one_lwp): : Don't queue a SIGSTOP if the lwp already has
8708 a pending signal to report or is moving out of a jump pad.
8709 (linux_init_signals): Check for __ANDROID__ rather than
8710 __SIGRTMIN.
8711
b4d51a55
PA
87122010-08-28 Pedro Alves <pedro@codesourcery.com>
8713
8714 * linux-low.c (linux_stabilize_threads): Wrap debug output in a
8715 debug_threads check. Avoid a linear search when not doing debug
8716 output.
8717
ec48365d
PA
87182010-08-27 Pedro Alves <pedro@codesourcery.com>
8719
8720 * event-loop.c (event_handle_func): Adjust to use gdb_fildes_t.
8721 (struct gdb_event) <fd>: Change type to gdb_fildes_t.
8722 (struct file_handler) <fd>: Change type to gdb_fildes_t.
8723 (process_event): Change local fd's type to gdb_fildes_t.
8724 (create_file_handler): Adjust prototype.
8725 (delete_file_handler): Adjust prototype.
8726 (handle_file_event): Adjust prototype. Use pfildes.
8727 (create_file_event): Adjsut prototype.
8728 * remote-utils.c (remote_desc, listen_desc): Change type to
8729 gdb_fildes_t.
8730 * server.h: New gdb_fildes_t typedef.
8731 [USE_WIN32API]: Include winsock2.h.
8732 (delete_file_handler, add_file_handler): Adjust prototypes.
8733 (pfildes): Declare.
8734 * utils.c (pfildes): New.
8735
854d88f0
PA
87362010-08-27 Pedro Alves <pedro@codesourcery.com>
8737
8738 * configure.ac (build_warnings): Add -Wno-char-subscripts.
8739 * configure: Regenerate.
8740
0146f85b
PA
87412010-08-27 Pedro Alves <pedro@codesourcery.com>
8742
8743 * linux-low.c (linux_unprepare_to_access_memory): Rename to ...
8744 (linux_done_accessing_memory): ... this.
8745 (linux_target_ops): Adjust.
8746 * linux-x86-low.c (x86_insert_point, x86_remove_point): Adjust.
8747 * nto-low.c (nto_target_ops): Adjust comment.
8748 * server.c (gdb_read_memory, gdb_write_memory): Adjust.
8749 * spu-low.c (spu_target_ops): Adjust comment.
8750 * target.h (target_ops): Rename unprepare_to_access_memory field
8751 to done_accessing_memory.
8752 (unprepare_to_access_memory): Rename to ...
8753 (done_accessing_memory): ... this.
8754
90d74c30
PA
87552010-08-26 Pedro Alves <pedro@codesourcery.com>
8756
8757 * linux-low.c (linux_prepare_to_access_memory): New.
8758 (linux_unprepare_to_access_memory): New.
8759 (linux_target_ops): Install them.
8760 * server.c (read_memory): Rename to ...
8761 (gdb_read_memory): ... this. Use
8762 prepare_to_access_memory/prepare_to_access_memory.
8763 (write_memory): Rename to ...
8764 (gdb_write_memory): ... this. Use
8765 prepare_to_access_memory/prepare_to_access_memory.
8766 (handle_search_memory_1): Adjust.
8767 (process_serial_event): Adjust.
8768 * target.h (struct target_ops): New fields
8769 prepare_to_access_memory and unprepare_to_access_memory.
8770 (prepare_to_access_memory, unprepare_to_access_memory): New.
8771 * linux-x86-low.c (x86_insert_point, x86_remove_point): Use
8772 prepare_to_access_memory/prepare_to_access_memory.
8773 * nto-low.c (nto_target_ops): Adjust.
8774 * spu-low.c (spu_target_ops): Adjust.
8775 * win32-low.c (win32_target_ops): Adjust.
8776
fd467969
PA
87772010-08-26 Pedro Alves <pedro@codesourcery.com>
8778
8779 * Makefile.in (WARN_CFLAGS): Get it from configure.
8780 (WERROR_CFLAGS): New.
8781 (INTERNAL_CFLAGS): Add WERROR_CFLAGS.
8782 * configure.ac: Introduce --enable-werror, which adds -Werror to
8783 the compiler command line. Enabled by default. Disable with
8784 --disable-werror. Add -Wdeclaration-after-statement
8785 Wpointer-arith and -Wformat-nonliteral to warning flags.
8786 * configure: Regenerate.
8787
331e2f5f
PA
87882010-08-26 Pedro Alves <pedro@codesourcery.com>
8789
8790 * mem-break.c [HAVE_MALLOC_H]: Include malloc.h.
8791
e581f2b4
PA
87922010-08-26 Pedro Alves <pedro@codesourcery.com>
8793
8794 * gdbreplay.c (remote_error): New.
8795 (gdbchar): New.
8796 (expect): Use gdbchar. Check for error reading from GDB.
8797 Clarify sync error output.
8798 (play): Check for errors writing to GDB.
8799 * linux-low.c (sigchld_handler): Really ignore `write' errors.
8800 * remote-utils.c (getpkt): Check for errors writing to the remote
8801 descriptor.
8802
3c11dd79
PA
88032010-08-25 Pedro Alves <pedro@codesourcery.com>
8804
8805 * linux-low.c (linux_wait_1): Move non-debugging code out of
8806 `debug_threads' control.
8807
d20a8ad9
PA
88082010-08-25 Pedro Alves <pedro@codesourcery.com>
8809
8810 * linux-low.c (linux_wait_1): Don't set last_status here.
8811 * server.c (push_event, queue_stop_reply_callback): Assert we're
8812 not pushing a TARGET_WAITKIND_IGNORE event.
8813 (start_inferior, start_inferior, attach_inferior, handle_v_cont)
8814 (myresume, handle_target_event): Set the thread's last_resume_kind
8815 and last_status from the target returned status.
8816
964e4306
PA
88172010-08-25 Pedro Alves <pedro@codesourcery.com>
8818
8819 PR threads/10729
8820
8821 * linux-x86-low.c (update_debug_registers_callback): New.
8822 (i386_dr_low_set_addr): Use it.
8823 (i386_dr_low_get_addr): New.
8824 (i386_dr_low_set_control): Use update_debug_registers_callback.
8825 (i386_dr_low_get_control): New.
8826 (i386_dr_low_get_status): Adjust.
8827 * linux-low.c (linux_stop_lwp): New.
8828 * linux-low.h (linux_stop_lwp): Declare.
8829
8830 * i386-low.c (I386_DR_GET_RW_LEN): Take the dr7 contents as
8831 argument instead of a i386_debug_reg_state.
8832 (I386_DR_WATCH_HIT): Take the dr6 contents as argument instead of
8833 a i386_debug_reg_state.
8834 (i386_insert_aligned_watchpoint): Adjust.
8835 (i386_remove_aligned_watchpoint): Adjust.
8836 (i386_low_stopped_data_address): Read the debug registers from the
8837 inferior instead of from the mirrors.
8838 * i386-low.h (struct i386_debug_reg_state): Extend comment.
8839 (i386_dr_low_get_addr): Declare.
8840 (i386_dr_low_get_control): Declare.
8841 (i386_dr_low_get_status): Change prototype.
8842
8843 * win32-i386-low.c (dr_status_mirror, dr_control_mirror): New globals.
8844 (i386_dr_low_get_addr): New.
8845 (i386_dr_low_get_control): New.
8846 (i386_dr_low_get_status): Adjust prototype. Return
8847 dr_status_mirror.
8848 (i386_initial_stuff): Clear dr_status_mirror and
8849 dr_control_mirror.
8850 (i386_get_thread_context): Adjust.
8851 (i386_set_thread_context): Adjust.
8852 (i386_thread_added): Adjust.
8853
5f21a75b
PA
88542010-08-24 Pedro Alves <pedro@codesourcery.com>
8855
8856 * linux-low.h (linux_thread_area): Delete declaration.
8857
3e4c1235
TS
88582010-08-11 Thomas Schwinge <thomas@codesourcery.com>
8859
8860 * linux-low.c (linux_wait_1): Correctly return the ptid of the child
8861 after its termination.
8862
1971b033
PA
88632010-08-09 Pedro Alves <pedro@codesourcery.com>
8864
8865 * linux-low.c (gdb_wants_lwp_stopped): Delete.
8866 (gdb_wants_all_stopped): Delete.
8867 (linux_wait_1): Don't call them.
8868 * server.c (handle_v_cont): Tag all threads as want-stopped.
8869 (gdb_wants_thread_stopped): Fix comments. Tag the thread that
8870 stopped as "client-wants-stopped".
8871
310444ac
PA
88722010-07-31 Pedro Alves <pedro@codesourcery.com>
8873
8874 * Makefile.in (signals_h): New.
8875 (server_h): Depend on it.
8876 (server.o): Don't depend on $(signals_def).
8877 (signals.o): Depend on $(signals_def).
8878
a19cae16
JK
88792010-07-31 Jan Kratochvil <jan.kratochvil@redhat.com>
8880
8881 * Makefile.in (signals_def): New.
8882 (server_h): Append include/gdb/signals.h and signals_def.
8883 (server.o): Append signals_def.
8884
30d50328
JK
88852010-07-25 Jan Kratochvil <jan.kratochvil@redhat.com>
8886
8887 * server.c (handle_target_event): Use target_signal_to_host for
8888 resume_info.sig initialization.
8889 * target.h (struct thread_resume) <sig>: New comment.
8890
5c3216e2
OS
88912010-07-20 Ozkan Sezer <sezeroz@gmail.com>
8892
c6f46ca0
OS
8893 * server.c (handle_query): strcpy() the returned string from paddress()
8894 instead of sprintf().
5c3216e2
OS
8895 * utils.c (paddress): Return phex_nz().
8896
6bd31874
JB
88972010-07-07 Joel Brobecker <brobecker@adacore.com>
8898
8899 * server.c (handle_v_cont): Call mourn_inferior if process
8900 just exited.
8901 (myresume): Likewise.
8902
0fb4aa4b
PA
89032010-07-01 Pedro Alves <pedro@codesourcery.com>
8904
8905 Static tracepoints, and integration with UST.
8906
8907 * configure.ac: Handle --with-ust. substitute ustlibs and ustinc.
8908 * mem-break.c (uninsert_all_breakpoints)
8909 (reinsert_all_breakpoints): New.
8910 * mem-break.h (reinsert_all_breakpoints, uninsert_all_breakpoints):
8911 * tracepoint.c (ust_loaded, helper_thread_id, cmd_buf): New.
8912 (gdb_agent_ust_loaded, helper_thread_id)
8913 (gdb_agent_helper_thread_id): New macros.
8914 (struct ipa_sym_addresses): Add addr_ust_loaded,
8915 addr_helper_thread_id, addr_cmd_buf.
8916 (symbol_list): Add ust_loaded, helper_thread_id, cmd_buf.
8917 (in_process_agent_loaded_ust): New.
8918 (write_e_ust_not_loaded): New.
8919 (maybe_write_ipa_ust_not_loaded): New.
8920 (struct collect_static_trace_data_action): New.
8921 (enum tracepoint_type) <static_tracepoint>: New.
8922 (struct tracepoint) <handle>: Mention static tracepoints.
8923 (struct static_tracepoint_ctx): New.
8924 (CMD_BUF_SIZE): New.
8925 (add_tracepoint_action): Handle static tracepoint actions.
8926 (unprobe_marker_at): New.
8927 (clear_installed_tracepoints): Handle static tracepoints.
8928 (cmd_qtdp): Handle static tracepoints.
8929 (probe_marker_at): New.
8930 (cmd_qtstart): Handle static tracepoints.
8931 (response_tracepoint): Handle static tracepoints.
8932 (cmd_qtfstm, cmd_qtsstm, cmd_qtstmat): New.
8933 (handle_tracepoint_query): Handle qTfSTM, qTsSTM and qTSTMat.
8934 (get_context_regcache): Handle static tracepoints.
8935 (do_action_at_tracepoint): Handle static tracepoint actions.
8936 (traceframe_find_block_type): Handle static trace data blocks.
8937 (traceframe_read_sdata): New.
8938 (download_tracepoints): Download static tracepoint actions.
8939 [HAVE_UST] Include ust/ust.h, dlfcn.h, sys/socket.h, and sys/un.h.
8940 (GDB_PROBE_NAME): New.
8941 (ust_ops): New.
8942 (GET_UST_SYM): New.
8943 (USTF): New.
8944 (dlsym_ust): New.
8945 (ust_marker_to_static_tracepoint): New.
8946 (gdb_probe): New.
8947 (collect_ust_data_at_tracepoint): New.
8948 (gdb_ust_probe): New.
8949 (UNIX_PATH_MAX, SOCK_DIR): New.
8950 (gdb_ust_connect_sync_socket): New.
8951 (resume_thread, stop_thread): New.
8952 (run_inferior_command): New.
8953 (init_named_socket): New.
8954 (gdb_ust_socket_init): New.
8955 (cstr_to_hexstr): New.
8956 (next_st): New.
8957 (first_marker, next_marker): New.
8958 (response_ust_marker): New.
8959 (cmd_qtfstm, cmd_qtsstm): New.
8960 (unprobe_marker_at, probe_marker_at): New.
8961 (cmd_qtstmat, gdb_ust_thread): New.
8962 (gdb_ust_init): New.
8963 (initialize_tracepoint_ftlib): Call gdb_ust_init.
8964 * linux-amd64-ipa.c [HAVE_UST]: Include ust/processor.h
8965 (ST_REGENTRY): New.
8966 (x86_64_st_collect_regmap): New.
8967 (X86_64_NUM_ST_COLLECT_GREGS): New.
8968 (AMD64_RIP_REGNUM): New.
8969 (supply_static_tracepoint_registers): New.
8970 * linux-i386-ipa.c [HAVE_UST]: Include ust/processor.h
8971 (ST_REGENTRY): New.
8972 (i386_st_collect_regmap): New.
8973 (i386_NUM_ST_COLLECT_GREGS): New.
8974 (supply_static_tracepoint_registers): New.
8975 * server.c (handle_query): Handle qXfer:statictrace:read.
8976 <qSupported>: Report support for StaticTracepoints, and
8977 qXfer:statictrace:read features.
8978 * server.h (traceframe_read_sdata)
8979 (supply_static_tracepoint_registers): Declare.
8980 * remote-utils.c (convert_int_to_ascii, hexchars, ishex, tohex)
8981 (unpack_varlen_hex): Include in IPA build.
8982 * Makefile.in (ustlibs, ustinc): New.
8983 (IPA_OBJS): Add remote-utils-ipa.o.
8984 ($(IPA_LIB)): Link -ldl and -lpthread.
8985 (UST_CFLAGS): New.
8986 (IPAGENT_CFLAGS): Add UST_CFLAGS.
8987 * config.in, configure: Regenerate.
8988
9e4344e5
PA
89892010-06-20 Ian Lance Taylor <iant@google.com>
8990 Pedro Alves <pedro@codesourcery.com>
8991
8992 * linux-x86-low.c (always_true): Delete.
8993 (EMIT_ASM, EMIT_ASM32): Use an uncondition asm jmp instead of
8994 trying to fool the compiler with always_true.
8995
c6beb2cb
PA
89962010-06-20 Pedro Alves <pedro@codesourcery.com>
8997
8998 * tracepoint.c (condition_true_at_tracepoint): Don't run compiled
8999 conditions in gdbserver.
9000
d2ed6730
UW
90012010-06-19 Ulrich Weigand <uweigand@de.ibm.com>
9002
9003 * spu-low.c (spu_read_memory): Wrap around local store limit.
9004 (spu_write_memory): Likewise.
9005
4e29fb54
PA
90062010-06-15 Pedro Alves <pedro@codesourcery.com>
9007
9008 * linux-x86-low.c (amd64_emit_const, amd64_emit_void_call_2)
9009 (i386_emit_const, i386_emit_void_call_2): Replace int64_t uses with
9010 LONGEST uses.
9011 * server.h (struct emit_ops): Replace int64_t uses with LONGEST
9012 uses.
9013 * tracepoint.c (emit_const, emit_void_call_2): Replace int64_t
9014 uses with LONGEST uses.
9015
6a271cae
PA
90162010-06-14 Stan Shebs <stan@codesourcery.com>
9017 Pedro Alves <pedro@codesourcery.com>
9018
9019 Bytecode compiler.
9020
9021 * linux-x86-low.c: Include limits.h.
9022 (add_insns): New.
9023 (always_true): New.
9024 (EMIT_ASM): New.
9025 (EMIT_ASM32): New.
9026 (amd64_emit_prologue, amd64_emit_epilogue, amd64_emit_add)
9027 (amd64_emit_sub, amd64_emit_mul, amd64_emit_lsh)
9028 (amd64_emit_rsh_signed, amd64_emit_rsh_unsigned, amd64_emit_ext,
9029 (amd64_emit_log_not, amd64_emit_bit_and, amd64_emit_bit_or)
9030 (amd64_emit_bit_xor, amd64_emit_bit_not, amd64_emit_equal,
9031 (amd64_emit_less_signed, amd64_emit_less_unsigned, amd64_emit_ref,
9032 (amd64_emit_if_goto, amd64_emit_goto, amd64_write_goto_address)
9033 (amd64_emit_const, amd64_emit_call, amd64_emit_reg)
9034 (amd64_emit_pop, amd64_emit_stack_flush, amd64_emit_zero_ext)
9035 (amd64_emit_swap, amd64_emit_stack_adjust, amd64_emit_int_call_1)
9036 (amd64_emit_void_call_2): New.
9037 (amd64_emit_ops): New.
9038 (i386_emit_prologue, i386_emit_epilogue, i386_emit_add)
9039 (i386_emit_sub,i386_emit_mul, i386_emit_lsh, i386_emit_rsh_signed)
9040 (i386_emit_rsh_unsigned, i386_emit_ext, i386_emit_log_not)
9041 (i386_emit_bit_and, i386_emit_bit_or, i386_emit_bit_xor)
9042 (i386_emit_bit_not, i386_emit_equal, i386_emit_less_signed)
9043 (i386_emit_less_unsigned, i386_emit_ref, i386_emit_if_goto)
9044 (i386_emit_goto, i386_write_goto_address, i386_emit_const)
9045 (i386_emit_call, i386_emit_reg, i386_emit_pop)
9046 (i386_emit_stack_flush, i386_emit_zero_ext, i386_emit_swap)
9047 (i386_emit_stack_adjust, i386_emit_int_call_1)
9048 (i386_emit_void_call_2): New.
9049 (i386_emit_ops): New.
9050 (x86_emit_ops): New.
9051 (the_low_target): Install x86_emit_ops.
9052 * server.h (struct emit_ops): New.
9053 (get_raw_reg_func_addr): Declare.
9054 (current_insn_ptr, emit_error): Declare.
9055 * tracepoint.c (get_raw_reg, get_trace_state_variable_value)
9056 (set_trace_state_variable_value): New defines.
9057 (struct ipa_sym_addresses): New fields addr_get_raw_reg,
9058 addr_get_trace_state_variable_value and
9059 addr_set_trace_state_variable_value.
9060 (symbol_list): New fields for get_raw_reg,
9061 get_trace_state_variable_value and set_trace_state_variable_value.
9062 (condfn): New typedef.
9063 (struct tracepoint): New field `compiled_cond'.
9064 (do_action_at_tracepoint): Clear compiled_cond.
9065 (get_trace_state_variable_value, set_trace_state_variable_value):
9066 Export in the IPA.
9067 (condition_true_at_tracepoint): If there's a compiled condition,
9068 run that.
9069 (current_insn_ptr, emit_error): New globals.
9070 (struct bytecode_address): New.
9071 (get_raw_reg_func_addr): New.
9072 (emit_prologue, emit_epilogue, emit_add, emit_sub, emit_mul)
9073 (emit_lsh, emit_rsh_signed, emit_rsh_unsigned, emit_ext)
9074 (emit_log_not, emit_bit_and, emit_bit_or, emit_bit_xor)
9075 (emit_bit_not, emit_equal, emit_less_signed, emit_less_unsigned)
9076 (emit_ref, emit_if_goto, emit_goto, write_goto_address, emit_const)
9077 (emit_reg, emit_pop, emit_stack_flush, emit_zero_ext, emit_swap)
9078 (emit_stack_adjust, emit_int_call_1, emit_void_call_2): New.
9079 (compile_tracepoint_condition, compile_bytecodes): New.
9080 * target.h (emit_ops): Forward declare.
9081 (struct target_ops): New field emit_ops.
9082 (target_emit_ops): New.
9083 * linux-amd64-ipa.c (gdb_agent_get_raw_reg): New.
9084 * linux-i386-ipa.c (gdb_agent_get_raw_reg): New.
9085 * linux-low.c (linux_emit_ops): New.
9086 (linux_target_ops): Install it.
9087 * linux-low.h (struct linux_target_ops): New field emit_ops.
9088
92b72907
UW
90892010-06-14 Ulrich Weigand <uweigand@de.ibm.com>
9090
9091 * linux-ppc-low.c (ppc_arch_setup): Use private regcache to test MSR.
9092 * linux-s390-low.c (ppc_arch_setup): Use private regcache to test PSW.
9093
fa593d66
PA
90942010-06-01 Pedro Alves <pedro@codesourcery.com>
9095 Stan Shebs <stan@codesourcery.com>
9096
9097 * Makefile.in (IPA_DEPFILES, extra_libraries): New.
9098 (all): Depend on $(extra_libraries).
9099 (install-only): Install the IPA.
9100 (IPA_OBJS, IPA_LIB): New.
9101 (clean): Remove the IPA lib.
9102 (IPAGENT_CFLAGS): New.
9103 (tracepoint-ipa.o, utils-ipa.o, remote-utils-ipa.o)
9104 (regcache-ipa.o, i386-linux-ipa.o, linux-i386-ipa.o)
9105 (linux-amd64-ipa.o, amd64-linux-ipa.o): New rules.
9106 * linux-amd64-ipa.c, linux-i386-ipa.c: New files.
9107 * configure.ac: Check for atomic builtins support in the compiler.
9108 (IPA_DEPFILES, extra_libraries): Define.
9109 * configure.srv (ipa_obj): Add description.
9110 (ipa_i386_linux_regobj, ipa_amd64_linux_regobj): Define.
9111 (i[34567]86-*-linux*): Set ipa_obj.
9112 (x86_64-*-linux*): Set ipa_obj.
9113 * linux-low.c (stabilizing_threads): New.
9114 (supports_fast_tracepoints): New.
9115 (linux_detach): Stabilize threads before detaching.
9116 (handle_tracepoints): Handle internal tracing breakpoints. Assert
9117 the lwp is either not stabilizing, or is moving out of a jump pad.
9118 (linux_fast_tracepoint_collecting): New.
9119 (maybe_move_out_of_jump_pad): New.
9120 (enqueue_one_deferred_signal): New.
9121 (dequeue_one_deferred_signal): New.
9122 (linux_wait_for_event_1): If moving out of a jump pad, defer
9123 pending signals to later.
9124 (linux_stabilize_threads): New.
9125 (linux_wait_1): Check if threads need moving out of jump pads, and
9126 do it if so.
9127 (stuck_in_jump_pad_callback): New.
9128 (move_out_of_jump_pad_callback): New.
9129 (lwp_running): New.
9130 (linux_resume_one_lwp): Handle moving out of jump pads.
9131 (linux_set_resume_request): Dequeue deferred signals.
9132 (need_step_over_p): Also step over fast tracepoint jumps.
9133 (start_step_over): Also uninsert fast tracepoint jumps.
9134 (finish_step_over): Also reinsert fast tracepoint jumps.
9135 (linux_install_fast_tracepoint_jump): New.
9136 (linux_target_ops): Install linux_stabilize_threads and
9137 linux_install_fast_tracepoint_jump_pad.
9138 * linux-low.h (linux_target_ops) <get_thread_area,
9139 install_fast_tracepoint_jump_pad>: New fields.
9140 (struct lwp_info) <collecting_fast_tracepoint,
9141 pending_signals_to_report, exit_jump_pad_bkpt>: New fields.
9142 (linux_get_thread_area): Declare.
9143 * linux-x86-low.c (jump_insn): New.
9144 (x86_get_thread_area): New.
9145 (append_insns): New.
9146 (push_opcode): New.
9147 (amd64_install_fast_tracepoint_jump_pad): New.
9148 (i386_install_fast_tracepoint_jump_pad): New.
9149 (x86_install_fast_tracepoint_jump_pad): New.
9150 (the_low_target): Install x86_get_thread_area and
9151 x86_install_fast_tracepoint_jump_pad.
9152 * mem-break.c (set_raw_breakpoint_at): Use read_inferior_memory.
9153 (struct fast_tracepoint_jump): New.
9154 (fast_tracepoint_jump_insn): New.
9155 (fast_tracepoint_jump_shadow): New.
9156 (find_fast_tracepoint_jump_at): New.
9157 (fast_tracepoint_jump_here): New.
9158 (delete_fast_tracepoint_jump): New.
9159 (set_fast_tracepoint_jump): New.
9160 (uninsert_fast_tracepoint_jumps_at): New.
9161 (reinsert_fast_tracepoint_jumps_at): New.
9162 (set_breakpoint_at): Use write_inferior_memory.
9163 (uninsert_raw_breakpoint): Use write_inferior_memory.
9164 (check_mem_read): Mask out fast tracepoint jumps.
9165 (check_mem_write): Mask out fast tracepoint jumps.
9166 * mem-break.h (struct fast_tracepoint_jump): Forward declare.
9167 (set_fast_tracepoint_jump): Declare.
9168 (delete_fast_tracepoint_jump)
9169 (fast_tracepoint_jump_here, uninsert_fast_tracepoint_jumps_at)
9170 (reinsert_fast_tracepoint_jumps_at): Declare.
9171 * regcache.c: Don't compile many functions when building the
9172 in-process agent library.
9173 (init_register_cache) [IN_PROCESS_AGENT]: Don't allow allocating
9174 the register buffer in the heap.
9175 (free_register_cache): If the register buffer isn't owned by the
9176 regcache, don't free it.
9177 (set_register_cache) [IN_PROCESS_AGENT]: Don't re-alocate
9178 pre-existing register caches.
9179 * remote-utils.c (convert_int_to_ascii): Constify `from' parameter
9180 type.
9181 (convert_ascii_to_int): : Constify `from' parameter type.
9182 (decode_M_packet, decode_X_packet): Replace the `to' parameter by
9183 a `to_p' pointer to pointer parameter. If TO_P is NULL, malloc
9184 the needed buffer in-place.
9185 (relocate_instruction): New.
9186 * server.c (handle_query) <qSymbols>: If the target supports
9187 tracepoints, give it a chance of looking up symbols. Report
9188 support for fast tracepoints.
9189 (handle_status): Stabilize threads.
9190 (process_serial_event): Adjust.
9191 * server.h (struct fast_tracepoint_jump): Forward declare.
9192 (struct process_info) <fast_tracepoint_jumps>: New field.
9193 (convert_ascii_to_int, convert_int_to_ascii): Adjust.
9194 (decode_X_packet, decode_M_packet): Adjust.
9195 (relocate_instruction): Declare.
9196 (in_process_agent_loaded): Declare.
9197 (tracepoint_look_up_symbols): Declare.
9198 (struct fast_tpoint_collect_status): Declare.
9199 (fast_tracepoint_collecting): Declare.
9200 (force_unlock_trace_buffer): Declare.
9201 (handle_tracepoint_bkpts): Declare.
9202 (initialize_low_tracepoint)
9203 (supply_fast_tracepoint_registers) [IN_PROCESS_AGENT]: Declare.
9204 * target.h (struct target_ops) <stabilize_threads,
9205 install_fast_tracepoint_jump_pad>: New fields.
9206 (stabilize_threads, install_fast_tracepoint_jump_pad): New.
9207 * tracepoint.c [HAVE_MALLOC_H]: Include malloc.h.
9208 [HAVE_STDINT_H]: Include stdint.h.
9209 (trace_debug_1): Rename to ...
9210 (trace_vdebug): ... this.
9211 (trace_debug): Rename to ...
9212 (trace_debug_1): ... this. Add `level' parameter.
9213 (trace_debug): New.
9214 (ATTR_USED, ATTR_NOINLINE): New.
9215 (IP_AGENT_EXPORT): New.
9216 (gdb_tp_heap_buffer, gdb_jump_pad_buffer, gdb_jump_pad_buffer_end)
9217 (collecting, gdb_collect, stop_tracing, flush_trace_buffer)
9218 (about_to_request_buffer_space, trace_buffer_is_full)
9219 (stopping_tracepoint, expr_eval_result, error_tracepoint)
9220 (tracepoints, tracing, trace_buffer_ctrl, trace_buffer_ctrl_curr)
9221 (trace_buffer_lo, trace_buffer_hi, traceframe_read_count)
9222 (traceframe_write_count, traceframes_created)
9223 (trace_state_variables)
9224 New renaming defines.
9225 (struct ipa_sym_addresses): New.
9226 (STRINGIZE_1, STRINGIZE, IPA_SYM): New.
9227 (symbol_list): New.
9228 (ipa_sym_addrs): New.
9229 (all_tracepoint_symbols_looked_up): New.
9230 (in_process_agent_loaded): New.
9231 (write_e_ipa_not_loaded): New.
9232 (maybe_write_ipa_not_loaded): New.
9233 (tracepoint_look_up_symbols): New.
9234 (debug_threads) [IN_PROCESS_AGENT]: New.
9235 (read_inferior_memory) [IN_PROCESS_AGENT]: New.
9236 (UNKNOWN_SIDE_EFFECTS): New.
9237 (stop_tracing): New.
9238 (flush_trace_buffer): New.
9239 (stop_tracing_bkpt): New.
9240 (flush_trace_buffer_bkpt): New.
9241 (read_inferior_integer): New.
9242 (read_inferior_uinteger): New.
9243 (read_inferior_data_pointer): New.
9244 (write_inferior_data_pointer): New.
9245 (write_inferior_integer): New.
9246 (write_inferior_uinteger): New.
9247 (struct collect_static_trace_data_action): Delete.
9248 (enum tracepoint_type): New.
9249 (struct tracepoint) <type>: New field `type'.
43aaf8b6
PA
9250 <actions_str, step_actions, step_actions_str>: Only include in
9251 GDBserver.
fa593d66
PA
9252 <orig_size, obj_addr_on_target, adjusted_insn_addr>
9253 <adjusted_insn_addr_end, jump_pad, jump_pad_end>: New fields.
9254 (tracepoints): Use IP_AGENT_EXPORT.
9255 (last_tracepoint): Don't include in the IPA.
9256 (stopping_tracepoint): Use IP_AGENT_EXPORT.
9257 (trace_buffer_is_full): Use IP_AGENT_EXPORT.
9258 (alloced_trace_state_variables): New.
9259 (trace_state_variables): Use IP_AGENT_EXPORT.
9260 (traceframe_t): Delete unused variable.
9261 (circular_trace_buffer): Don't include in the IPA.
9262 (trace_buffer_start): Delete.
9263 (struct trace_buffer_control): New.
9264 (trace_buffer_free): Delete.
9265 (struct ipa_trace_buffer_control): New.
9266 (GDBSERVER_FLUSH_COUNT_MASK, GDBSERVER_FLUSH_COUNT_MASK_PREV)
9267 (GDBSERVER_FLUSH_COUNT_MASK_CURR, GDBSERVER_UPDATED_FLUSH_COUNT_BIT):
9268 New.
9269 (trace_buffer_ctrl): New.
9270 (TRACE_BUFFER_CTRL_CURR): New.
9271 (trace_buffer_start, trace_buffer_free, trace_buffer_end_free):
9272 Reimplement as macros.
9273 (trace_buffer_wrap): Delete.
9274 (traceframe_write_count, traceframe_read_count)
9275 (traceframes_created, tracing): Use IP_AGENT_EXPORT.
9276 (struct tracepoint_hit_ctx) <type>: New field.
9277 (struct fast_tracepoint_ctx): New.
9278 (memory_barrier): New.
9279 (cmpxchg): New.
9280 (record_tracepoint_error): Update atomically in the IPA.
9281 (clear_inferior_trace_buffer): New.
9282 (about_to_request_buffer_space): New.
9283 (trace_buffer_alloc): Handle GDBserver and inferior simulatenous
9284 updating the same buffer.
9285 (add_tracepoint): Default the tracepoint's type to trap
9286 tracepoint, and orig_size to -1.
9287 (get_trace_state_variable) [IN_PROCESS_AGENT]: Handle allocated
9288 internal variables.
9289 (create_trace_state_variable): New parameter `gdb'. Handle it.
9290 (clear_installed_tracepoints): Clear fast tracepoint jumps.
9291 (cmd_qtdp): Handle fast tracepoints.
9292 (cmd_qtdv): Adjust.
9293 (max_jump_pad_size): New.
9294 (gdb_jump_pad_head): New.
9295 (get_jump_space_head): New.
9296 (claim_jump_space): New.
9297 (sort_tracepoints): New.
9298 (MAX_JUMP_SIZE): New.
9299 (cmd_qtstart): Handle fast tracepoints. Sync tracepoints with the
9300 IPA.
9301 (stop_tracing) [IN_PROCESS_AGENT]: Don't include the tdisconnected
9302 support. Upload fast traceframes, and delete internal IPA
9303 breakpoints.
9304 (stop_tracing_handler): New.
9305 (flush_trace_buffer_handler): New.
9306 (cmd_qtstop): Upload fast tracepoints.
9307 (response_tracepoint): Handle fast tracepoints.
9308 (tracepoint_finished_step): Upload fast traceframes. Set the
9309 tracepoint hit context's tracepoint type.
9310 (handle_tracepoint_bkpts): New.
9311 (tracepoint_was_hit): Set the tracepoint hit context's tracepoint
9312 type. Add comment about fast tracepoints.
9313 (collect_data_at_tracepoint) [IN_PROCESS_AGENT]: Don't access the
9314 non-existing action_str field.
9315 (get_context_regcache): Handle fast tracepoints.
9316 (do_action_at_tracepoint) [!IN_PROCESS_AGENT]: Don't write the PC
9317 to the regcache.
9318 (fast_tracepoint_from_jump_pad_address): New.
9319 (fast_tracepoint_from_ipa_tpoint_address): New.
9320 (collecting_t): New.
9321 (force_unlock_trace_buffer): New.
9322 (fast_tracepoint_collecting): New.
9323 (collecting): New.
9324 (gdb_collect): New.
9325 (write_inferior_data_ptr): New.
9326 (target_tp_heap): New.
9327 (target_malloc): New.
9328 (download_agent_expr): New.
9329 (UALIGN): New.
9330 (download_tracepoints): New.
9331 (download_trace_state_variables): New.
9332 (upload_fast_traceframes): New.
9333 (IPA_FIRST_TRACEFRAME): New.
9334 (IPA_NEXT_TRACEFRAME_1): New.
9335 (IPA_NEXT_TRACEFRAME): New.
9336 [IN_PROCESS_AGENT]: Include sys/mman.h and fcntl.h.
9337 [IN_PROCESS_AGENT] (gdb_tp_heap_buffer, gdb_jump_pad_buffer)
9338 (gdb_jump_pad_buffer_end): New.
9339 [IN_PROCESS_AGENT] (initialize_tracepoint_ftlib): New.
9340 (initialize_tracepoint): Adjust.
9341 [IN_PROCESS_AGENT]: Allocate the IPA heap, and jump pad scratch
9342 buffer. Initialize the low module.
9343 * utils.c (PREFIX, TOOLNAME): New.
9344 (malloc_failure): Use PREFIX.
9345 (error): In the IPA, an error causes an exit.
9346 (fatal, warning): Use PREFIX.
9347 (internal_error): Use TOOLNAME.
9348 (NUMCELLS): Increase to 10.
9349 * configure, config.in: Regenerate.
9350
d149dd1d
PA
93512010-06-01 Pedro Alves <pedro@codesourcery.com>
9352
9353 * server.c (handle_query) <qSupported>: Do two passes over the
9354 qSupported string to avoid nesting strtok.
9355
f6528abd
JK
93562010-05-28 Jan Kratochvil <jan.kratochvil@redhat.com>
9357
9358 * Makefile.in (SFILES): Add $(srcdir)/proc-service.list.
9359 (CDEPS): New.
9360 * configure.ac (RDYNAMIC): New AC_MSG_CHECKING wrapping. Test also
9361 -Wl,--dynamic-list.
9362 * configure: Regenerate.
9363 * proc-service.list: New.
9364
ca2a87a0
JK
93652010-05-28 Jan Kratochvil <jan.kratochvil@redhat.com>
9366
9367 * linux-low.c (linux_core_of_thread): Fix crash on invalid CONTENT.
9368 New comment.
9369
363a6e9f
OS
93702010-05-26 Ozkan Sezer <sezeroz@gmail.com>
9371
9372 * gdbreplay.c (remote_open): Check error return from socket() call by
9373 its equality to -1 not by it being negative.
9374 * remote-utils.c (remote_open): Likewise.
9375
d23b6cb1
PA
93762010-05-23 Pedro Alves <pedro@codesourcery.com>
9377
9378 * config.h: Regenerate.
9379
28d3cf85
MK
93802010-05-19 Maxim Kuvyrkov <maxim@codesourcery.com>
9381
9382 * linux-m68k-low.c (ps_get_thread_area): Don't define if kernel
9383 doesn't provide PTRACE_GET_THREAD_AREA.
9384
fea36a59
MK
93852010-05-19 Maxim Kuvyrkov <maxim@codesourcery.com>
9386
9387 * linux-m68k-low.c: Include <asm/ptrace.h>
9388 (ps_get_thread_area): Implement.
9389
24b066ba
DE
93902010-05-03 Doug Evans <dje@google.com>
9391
9392 * event-loop.c (struct callback_event): New struct.
9393 (callback_list): New global.
9394 (append_callback_event, delete_callback_event): New functions.
9395 (process_callback): New function.
9396 (start_event_loop): Call it.
9397 * remote-utils.c (NOT_SCHEDULED): Define.
9398 (readchar_buf, readchar_bufcnt, readchar_bufp): New static globals,
9399 moved out of readchar.
9400 (readchar): Rewrite. Call reschedule before returning.
9401 (reset_readchar): New function.
9402 (remote_close): Call it.
9403 (process_remaining, reschedule): New functions.
9404 * server.h (callback_handler_func): New typedef.
9405 (append_callback_event, delete_callback_event): Declare.
9406
9836d6ea
PA
94072010-05-03 Pedro Alves <pedro@codesourcery.com>
9408
9409 * proc-service.c (ps_pglobal_lookup): Use
9410 thread_db_look_up_one_symbol.
9411 * remote-utils.c (look_up_one_symbol): Add new `may_ask_gdb'
9412 parameter. Use it instead of all_symbols_looked_up.
9413 * server.h (struct process_info) <all_symbols_looked_up>: Delete
9414 field.
9415 (all_symbols_looked_up): Don't declare.
9416 (look_up_one_symbol): Add new `may_ask_gdb' parameter.
9417 * thread-db.c (struct thread_db) <all_symbols_looked_up>: New
9418 field.
9419 (thread_db_look_up_symbols): Adjust call to look_up_one_symbol.
9420 Set all_symbols_looked_up here.
9421 (thread_db_look_up_one_symbol): New.
9422 (thread_db_get_tls_address): Adjust.
9423 (thread_db_load_search, try_thread_db_load_1): Always allocate the
9424 thread_db object on the heap, and tentatively set it in the
9425 process structure.
9426 (thread_db_init): Don't set all_symbols_looked_up here.
9427 * linux-low.h (thread_db_look_up_one_symbol): Declare.
9428
7984d532
PA
94292010-05-03 Pedro Alves <pedro@codesourcery.com>
9430
9431 * linux-low.c (linux_kill, linux_detach): Adjust.
9432 (status_pending_p_callback): Remove redundant statement. Check
9433 for !TARGET_WAITIKIND_IGNORE, instead of
9434 TARGET_WAITKIND_STOPPED.
9435 (handle_tracepoints): Make sure LWP is locked. Adjust.
9436 (linux_wait_for_event_1): Adjust.
9437 (linux_cancel_breakpoints): New.
9438 (unsuspend_one_lwp): New.
9439 (unsuspend_all_lwps): New.
9440 (linux_wait_1): If finishing a step-over, unsuspend all lwps.
9441 (send_sigstop_callback): Change return type to int, add new
9442 `except' parameter and handle it.
9443 (suspend_and_send_sigstop_callback): New.
9444 (stop_all_lwps): Add new `suspend' and `expect' parameters, and
9445 pass them down. If SUSPEND, also increment the lwp's suspend
9446 count.
9447 (linux_resume_one_lwp): Add notice about resuming a suspended LWP.
9448 (need_step_over_p): Don't consider suspended LWPs.
9449 (start_step_over): Adjust.
9450 (proceed_one_lwp): Change return type to int, add new `except'
9451 parameter and handle it.
9452 (unsuspend_and_proceed_one_lwp): New.
9453 (proceed_all_lwps): Use find_inferior instead of
9454 for_each_inferior.
9455 (unstop_all_lwps): Add `unsuspend' parameter. If UNSUSPEND, them
9456 also decrement the suspend count of LWPs. Pass `except' down,
9457 instead of hacking its suspend count.
9458 (linux_pause_all): Add `freeze' parameter. Adjust.
9459 (linux_unpause_all): New.
9460 (linux_target_ops): Install linux_unpause_all.
9461 * server.c (handle_status): Adjust.
9462 * target.h (struct target_ops): New fields `unpause_all' and
9463 `cancel_breakpoints'. Add new parameter to `pause_all'.
9464 (pause_all): Add new `freeze' parameter.
9465 (unpause_all): New.
9466 (cancel_breakpoints): New.
9467 * tracepoint.c (clear_installed_tracepoints): Pause threads, and
9468 cancel breakpoints.
9469 (cmd_qtstart): Pause threads.
9470 (stop_tracing): Pause threads, and cancel breakpoints.
9471 * win32-low.c (win32_target_ops): Adjust.
9472
e471f25b
PA
94732010-05-03 Pedro Alves <pedro@codesourcery.com>
9474
9475 * linux-low.c (linux_wait_for_event_1): Move passing the signal to
9476 the inferior right away from here...
9477 (linux_wait_1): ... to here, and adjust to check the thread's
9478 last_resume_kind instead of the lwp's step or stop_expected flags.
9479
1915ef4f
PA
94802010-05-02 Pedro Alves <pedro@codesourcery.com>
9481
9482 * README: Use consistent `GDB' and `GDBserver' spellings.
9483
f9e39928
PA
94842010-05-02 Pedro Alves <pedro@codesourcery.com>
9485
9486 * linux-low.c (linux_kill_one_lwp): Assume the lwp is stopped.
9487 (linux_kill): Stop all lwps here. Don't delete the main lwp here.
9488 (linux_detach_one_lwp): Assume the lwp is stopped.
9489 (any_thread_of): Delete.
9490 (linux_detach): Stop all lwps here. Don't blindly delete all
9491 breakpoints.
9492 (delete_lwp_callback): New.
9493 (linux_mourn): Delete all lwps of the process that is gone.
9494 (linux_wait_1): Don't delete the last lwp of the process here.
9495 * mem-break.h (mark_breakpoints_out): Declare.
9496 * mem-break.c (mark_breakpoints_out): New.
9497 (free_all_breakpoints): Use it.
9498 * server.c (handle_target_event): If the process is gone, mark
9499 breakpoints out.
9500 * thread-db.c (struct thread_db) <create_bp>: New field.
9501 (thread_db_enable_reporting): Fix prototype. Store a thread event
9502 breakpoint reference in the thread_db struct.
9503 (thread_db_load_search): Clear the thread_db object.
9504 (try_thread_db_load_1): Ditto.
9505 (switch_to_process): New.
9506 (disable_thread_event_reporting): Use it.
9507 (remove_thread_event_breakpoints): New.
9508 (thread_db_detach, thread_db_mourn): Use it.
9509
1e7fc18c
PA
95102010-05-01 Pedro Alves <pedro@codesourcery.com>
9511
9512 * linux-low.c (linux_enable_event_reporting): New.
9513 (linux_wait_for_event_1, handle_extended_wait): Use it.
9514
02fc4de7
PA
95152010-04-30 Pedro Alves <pedro@codesourcery.com>
9516
9517 * linux-low.c (linux_kill_one_lwp, linux_kill)
9518 (linux_detach_one_lwp): Adjust to send_sigstop interface change.
9519 (send_sigstop): Take an lwp_info as parameter instead. Queue a
9520 SIGSTOP even if the LWP is stopped.
9521 (send_sigstop_callback): New.
9522 (stop_all_lwps): Use send_sigstop_callback instead.
9523 (linux_resume_one_thread): Adjust.
9524 (proceed_one_lwp): Still proceed an LWP that the client has
9525 requested to stop, if we haven't reported it as stopped yet. Make
9526 sure that LWPs the client want stopped, have a pending SIGSTOP.
9527
bc3b5632
DE
95282010-04-26 Doug Evans <dje@google.com>
9529
ae1ada35
DE
9530 * server.c (handle_general_set): Make static.
9531
bc3b5632
DE
9532 * remote-utils.c (putpkt_binary_1): Call readchar instead of read.
9533 Print received char after testing for error/eof instead of before.
9534 (input_interrupt): Tweak comment.
9535
65730243
DE
95362010-04-23 Doug Evans <dje@google.com>
9537
9538 * server.c (start_inferior): Print inferior argv if --debug.
9539
a8ae7dc0
AR
95402010-04-21 Aleksandar Ristovski <aristovski@qnx.com>
9541
9542 * Makefile.in (nto_low_h nto-low.o nto-x86-low.o): New dependency lists.
9543 * nto-x86-low.c: Include server.h
9544
1c07cc19
PM
95452010-04-20 Pierre Muller <muller@ics.u-strasbg.fr>
9546
9547 * win32-i386-low.c: Use __x86_64__ macro instead of __x86_64 to
9548 be consistent with other sources of this directory.
9549 (init_registers_amd64): Correct name of source file of this function
9550 in the comment.
9551
e0a61e09
PM
95522010-04-19 Pierre Muller <muller@ics.u-strasbg.fr>
9553
9554 * configure.srv (x86_64-*-mingw*): New configuration for Windows
9555 64-bit executables.
9556
54709339
PM
95572010-04-19 Pierre Muller <muller@ics.u-strasbg.fr>
9558
9559 * win32-i386-low.c: Add 64-bit support.
9560 (CONTEXT_EXTENDED_REGISTERS): Set macro to zero if not exisiting.
9561 (init_registers_amd64): Declare.
9562 (mappings): Add 64-bit version of array.
9563 (init_windows_x86): New function.
9564 (the_low_target): Change init_arch field to init_windows_x86.
9565
e8f0053d
PM
95662010-04-19 Pierre Muller <muller@ics.u-strasbg.fr>
9567
9568 * win32-low.c: Adapt to support also 64-bit architecture.
9569 (child_xfer_memory): Use uintptr_t type for local variable `addr'.
9570 (get_image_name): Use SIZE_T type for local variable `done'.
9571 (psapi_get_dll_name): Use LPVOID type for parameter `BaseAddress'.
9572 (toolhelp_get_dll_name): Idem.
9573 (handle_load_dll): Use CORE_ADDR type for local variable `load_addr'.
9574 Use uintptr_t typecast to avoid warning.
9575 (handle_unload_dll): Use uintptr_t typecast to avoid warning.
9576 (handle_exception): Use phex_nz to avoid warning.
9577 (win32_wait): Remove unused local variable `process'.
9578
c481e77e
PM
95792010-04-19 Pierre Muller <muller@ics.u-strasbg.fr>
9580
9581 * configure.srv (srv_amd64_regobj): Replace `x86-64-avx.o' by
9582 `amd64-avx.o'.
9583
12ea4b69
PM
95842010-04-17 Pierre Muller <muller@ics.u-strasbg.fr>
9585
9586 * configure.ac: Use `ws2_32' library for srv_mingw.
9587 * configure: Regenerate.
9588 * gdbreplay.c: Include winsock2.h instead of winsock.h.
9589 * remote-utils.c: Likewise.
9590
f6d1620c
L
95912010-04-17 H.J. Lu <hongjiu.lu@intel.com>
9592
9593 * linux-x86-low.c (xmltarget_amd64_linux_no_xml): Define only
9594 if __x86_64__ is defined.
9595
8e642873
PM
95962010-04-16 Pierre Muller <muller@ics.u-strasbg.fr>
9597
9598 * configure: Regenerate.
9599
711e434b
PM
96002010-04-16 Pierre Muller <muller@ics.u-strasbg.fr>
9601
9602 * server.c (handle_query): Handle 'qGetTIBAddr' query.
9603 * target.h (target_ops): New get_tib_address field.
9604 * win32-low.h (win32_thread_info): Add thread_local_base field.
9605 * win32-low.c (child_add_thread): Add tlb argument.
9606 Set thread_local_base field to TLB.
9607 (get_child_debug_event): Adapt to child_add_thread change.
9608 (win32_get_tib_address): New function.
9609 (win32_target_ops): Set get_tib_address field to
9610 win32_get_tib_address.
9611 * linux-low.c (linux_target_ops): Set get_tib_address field to NULL.
9612
505106cd
PA
96132010-04-12 Pedro Alves <pedro@codesourcery.com>
9614
505106cd
PA
9615 * linux-low.c (linux_mourn): Also remove the process.
9616 * server.c (handle_target_event): Don't remove the process here.
9617 * nto-low.c (nto_mourn): New.
9618 (nto_target_ops): Install it.
9619 * spu-low.c (spu_mourn): New.
9620 (spu_target_ops): Install it.
9621 * win32-low.c (win32_mourn): New.
9622 (win32_target_ops): Install it.
9623
e8470a06
PA
96242010-04-12 Pedro Alves <pedro@codesourcery.com>
9625
9626 * server.h (buffer_xml_printf): Remove redundant `;'.
9627
45ba0d02
PA
96282010-04-12 Pedro Alves <pedro@codesourcery.com>
9629
9630 * regcache.c (set_register_cache): Invalidate regcaches before
9631 changing the register cache layout.
9632 (regcache_invalidate_one): Allow a NULL regcache.
9633 * linux-x86-low.c (x86_linux_update_xmltarget): Invalidate
9634 regcaches before changing the register cache layout or the target
9635 regsets.
9636
59e04013
L
96372010-04-12 H.J. Lu <hongjiu.lu@intel.com>
9638
9639 * linux-x86-low.c (x86_linux_update_xmltarget): Avoid unused
9640 variable warning on Linux/x86-64.
9641
8336d594
PA
96422010-04-11 Pedro Alves <pedro@codesourcery.com>
9643
9644 GDBserver disconnected tracing support.
9645
9646 * linux-low.c (linux_remove_process): Delete.
9647 (add_lwp): Don't set last_resume_kind here.
9648 (linux_kill): Use `mourn'.
9649 (linux_detach): Use `thread_db_detach', and `mourn'.
9650 (linux_mourn): New.
9651 (linux_attach_lwp_1): Adjust comment.
9652 (linux_attach): last_resume_kind moved the thread_info; adjust.
9653 (status_pending_p_callback): Adjust.
9654 (linux_wait_for_event_1): Adjust.
9655 (count_events_callback, select_singlestep_lwp_callback)
9656 (select_event_lwp_callback, cancel_breakpoints_callback)
9657 (db_wants_lwp_stopped, linux_wait_1, need_step_over_p)
9658 (proceed_one_lwp): Adjust.
9659 (linux_async): Add debug output.
9660 (linux_thread_stopped): New.
9661 (linux_pause_all): New.
9662 (linux_target_ops): Install linux_mourn, linux_thread_stopped and
9663 linux_pause_all.
9664 * linux-low.h (struct lwp_info): Delete last_resume_kind field.
9665 (thread_db_free): Delete declaration.
9666 (thread_db_detach, thread_db_mourn): Declare.
9667 * thread-db.c (thread_db_init): Use thread_db_mourn.
9668 (thread_db_free): Delete, split in two.
9669 (disable_thread_event_reporting): New.
9670 (thread_db_detach): New.
9671 (thread_db_mourn): New.
9672
9673 * server.h (struct thread_info) <last_resume_kind>: New field.
9674 <attached>: Add comment.
9675 <gdb_detached>: New field.
9676 (handler_func): Change return type to int.
9677 (handle_serial_event, handle_target_event): Ditto.
9678 (gdb_connected): Declare.
9679 (tracing): Delete.
9680 (disconnected_tracing): Declare.
9681 (stop_tracing): Declare.
9682
9683 * server.c (handle_query) <qSupported>: Report support for
9684 disconnected tracing.
9685 (queue_stop_reply_callback): Account for running threads.
9686 (gdb_wants_thread_stopped): New.
9687 (gdb_wants_all_threads_stopped): New.
9688 (gdb_reattached_process): New.
9689 (handle_status): Clear the `gdb_detached' flag of all processes.
9690 In all-stop, stop all threads.
9691 (main): Be sure to leave tfind mode. Handle disconnected tracing.
9692 (process_serial_event): If the remote connection breaks, or if an
9693 exit was forced with "monitor exit", force an event loop exit.
9694 Handle disconnected tracing on detach.
9695 (handle_serial_event): Adjust.
9696 (handle_target_event): If GDB isn't connected, forward events back
9697 to the inferior, unless the last process exited, in which case,
9698 exit gdbserver. Adjust interface.
9699
9700 * remote-utils.c (remote_open): Don't block in accept. Instead
9701 register an event loop source on the listen socket file
9702 descriptor. Refactor bits into ...
9703 (listen_desc): ... this new global.
9704 (gdb_connected): ... this new function.
9705 (enable_async_notification): ... this new function.
9706 (handle_accept_event): ... this new function.
9707 (remote_close): Clear remote_desc.
9708
9709 * inferiors.c (add_thread): Set the new thread's last_resume_kind.
9710
9711 * target.h (struct target_ops) <mourn, thread_stopped, pause_all>:
9712 New fields.
9713 (mourn_inferior): Define.
9714 (target_process_qsupported): Avoid the dangling else problem.
9715 (thread_stopped): Define.
9716 (pause_all): Define.
9717 (target_waitstatus_to_string): Declare.
9718 * target.c (target_waitstatus_to_string): New.
9719
9720 * tracepoint.c (tracing): Make extern.
9721 (disconnected_tracing): New.
9722 (stop_tracing): Make extern. Handle tracing stops due to GDB
9723 disconnecting.
9724 (cmd_qtdisconnected): New.
9725 (cmd_qtstatus): Report disconnected tracing status in trace reply.
9726 (handle_tracepoint_general_set): Handle QTDisconnected.
9727
9728 * event-loop.c (event_handler_func): Change return type to int.
9729 (process_event): Bail out if the event handler wants the event
9730 loop to stop.
9731 (handle_file_event): Ditto.
9732 (start_event_loop): Bail out if the event handler wants the event
9733 loop to stop.
9734
9735 * nto-low.c (nto_target_ops): Adjust.
9736 * spu-low.c (spu_wait): Don't remove the process here.
9737 (spu_target_ops): Adjust.
9738 * win32-low.c (win32_wait): Don't remove the process here.
9739 (win32_target_ops): Adjust.
9740
5d267c4c
PA
97412010-04-11 Pedro Alves <pedro@codesourcery.com>
9742
9743 * regcache.c (realloc_register_cache): Invalidate inferior's
9744 regcache before recreating it.
9745
623ccd72
PA
97462010-04-09 Pedro Alves <pedro@codesourcery.com>
9747
9748 * tracepoint.c (cmd_qtstatus): Report trace buffer circularity.
9749
219f2f23
PA
97502010-04-09 Stan Shebs <stan@codesourcery.com>
9751 Pedro Alves <pedro@codesourcery.com>
9752
9753 * server.h (LONGEST): New.
9754 (struct thread_info) <while_stepping>: New field.
9755 (unpack_varlen_hex, xrealloc, pulongest, plongest, phex_nz):
9756 Declare.
9757 (initialize_tracepoint, handle_tracepoint_general_set)
9758 (handle_tracepoint_query, tracepoint_finished_step)
9759 (tracepoint_was_hit, release_while_stepping_state_list):
9760 (current_traceframe): Declare.
9761 * server.c (handle_general_set): Handle tracepoint packets.
9762 (read_memory): New.
9763 (write_memory): New.
9764 (handle_search_memory_1): Use read_memory.
9765 (handle_query): Report support for conditional tracepoints, trace
9766 state variables, and tracepoint sources. Handle tracepoint
9767 queries.
9768 (main): Initialize the tracepoints module.
9769 (process_serial_event): Handle traceframe reads/writes.
9770
9771 * linux-low.c (handle_tracepoints): New.
9772 (linux_wait_1): Call it.
9773 (linux_resume_one_lwp): Handle while-stepping.
9774 (linux_supports_tracepoints, linux_read_pc, linux_write_pc): New.
9775 (linux_target_ops): Install them.
9776 * linux-low.h (struct linux_target_ops) <supports_tracepoints>:
9777 New field.
9778 * linux-x86-low.c (x86_supports_tracepoints): New.
9779 (the_low_target). Install it.
9780
9781 * mem-break.h (delete_breakpoint): Declare.
9782 * mem-break.c (delete_breakpoint): Make external.
9783
9784 * target.h (struct target_ops): Add `supports_tracepoints',
9785 `read_pc', and `write_pc' fields.
9786 (target_supports_tracepoints): Define.
9787 * utils.c (xrealloc, decimal2str, pulongest, plongest, thirty_two)
9788 (phex_nz): New.
9789
9790 * regcache.h (struct regcache) <registers_owned>: New field.
9791 (init_register_cache, regcache_cpy): Declare.
9792 (regcache_read_pc, regcache_write_pc): Declare.
9793 (register_cache_size): Declare.
9794 (supply_regblock): Declare.
9795 * regcache.c (init_register_cache): New.
9796 (new_register_cache): Use it.
9797 (regcache_cpy): New.
9798 (register_cache_size): New.
9799 (supply_regblock): New.
9800 (regcache_read_pc, regcache_write_pc): New.
889bf7c5 9801
219f2f23
PA
9802 * tracepoint.c: New.
9803
9804 * Makefile.in (OBS): Add tracepoint.o.
9805 (tracepoint.o): New rule.
9806
3a13a53b
L
98072010-04-08 H.J. Lu <hongjiu.lu@intel.com>
9808
9809 * Makefile.in (clean): Also remove i386-mmx.c i386-mmx-linux.c.
9810 (i386-mmx.o): New.
9811 (i386-mmx.c): Likewise.
9812 (i386-mmx-linux.o): Likewise.
9813 (i386-mmx-linux.c): Likewise.
9814
9815 * configure.srv (srv_i386_regobj): Add i386-mmx.o.
9816 (srv_i386_linux_regobj): Add i386-mmx-linux.o.
9817 (srv_i386_xmlfiles): Add i386/i386-mmx.xml.
9818 (srv_i386_linux_xmlfiles): Add i386/i386-mmx-linux.xml.
9819
9820 * linux-x86-low.c (init_registers_i386_mmx_linux): New.
9821 (x86_linux_update_xmltarget): Call init_registers_i386_mmx_linux
9822 and return if ptrace PTRACE_GETFPXREGS failed in 32bit.
9823
1570b33e
L
98242010-04-07 H.J. Lu <hongjiu.lu@intel.com>
9825
9826 * Makefile.in (clean): Updated.
9827 (i386-avx.o): New.
9828 (i386-avx.c): Likewise.
9829 (i386-avx-linux.o): Likewise.
9830 (i386-avx-linux.c): Likewise.
9831 (amd64-avx.o): Likewise.
9832 (amd64-avx.c): Likewise.
9833 (amd64-avx-linux.o): Likewise.
9834 (amd64-avx-linux.c): Likewise.
9835
9836 * configure.srv (srv_i386_regobj): Add i386-avx.o.
9837 (srv_i386_linux_regobj): Add i386-avx-linux.o.
9838 (srv_amd64_regobj): Add amd64-avx.o.
9839 (srv_amd64_linux_regobj): Add amd64-avx-linux.o.
9840 (srv_i386_32bit_xmlfiles): Add i386/32bit-avx.xml.
9841 (srv_i386_64bit_xmlfiles): Add i386/64bit-avx.xml.
9842 (srv_i386_xmlfiles): Add i386/i386-avx.xml.
9843 (srv_amd64_xmlfiles): Add i386/amd64-avx.xml.
9844 (srv_i386_linux_xmlfiles): Add i386/i386-avx-linux.xml.
9845 (srv_amd64_linux_xmlfiles): Add i386/amd64-avx-linux.xml.
9846
9847 * i387-fp.c: Include "i386-xstate.h".
9848 (i387_xsave): New.
9849 (i387_cache_to_xsave): Likewise.
9850 (i387_xsave_to_cache): Likewise.
9851 (x86_xcr0): Likewise.
9852
9853 * i387-fp.h (i387_cache_to_xsave): Likewise.
9854 (i387_xsave_to_cache): Likewise.
9855 (x86_xcr0): Likewise.
9856
9857 * linux-arm-low.c (target_regsets): Initialize nt_type to 0.
9858 * linux-crisv32-low.c (target_regsets): Likewise.
9859 * linux-m68k-low.c (target_regsets): Likewise.
9860 * linux-mips-low.c (target_regsets): Likewise.
9861 * linux-ppc-low.c (target_regsets): Likewise.
9862 * linux-s390-low.c (target_regsets): Likewise.
9863 * linux-sh-low.c (target_regsets): Likewise.
9864 * linux-sparc-low.c (target_regsets): Likewise.
9865 * linux-xtensa-low.c (target_regsets): Likewise.
9866
9867 * linux-low.c: Include <sys/uio.h>.
9868 (regsets_fetch_inferior_registers): Support nt_type.
9869 (regsets_store_inferior_registers): Likewise.
9870 (linux_process_qsupported): New.
9871 (linux_target_ops): Add linux_process_qsupported.
9872
9873 * linux-low.h (regset_info): Add nt_type.
9874 (linux_target_ops): Add process_qsupported.
9875
9876 * linux-x86-low.c: Include "i386-xstate.h", "elf/common.h"
9877 and <sys/uio.h>.
9878 (init_registers_i386_avx_linux): New.
9879 (init_registers_amd64_avx_linux): Likewise.
9880 (xmltarget_i386_linux_no_xml): Likewise.
9881 (xmltarget_amd64_linux_no_xml): Likewise.
9882 (PTRACE_GETREGSET): Likewise.
9883 (PTRACE_SETREGSET): Likewise.
9884 (x86_fill_xstateregset): Likewise.
9885 (x86_store_xstateregset): Likewise.
9886 (use_xml): Likewise.
9887 (x86_linux_update_xmltarget): Likewise.
9888 (x86_linux_process_qsupported): Likewise.
9889 (target_regsets): Add NT_X86_XSTATE entry and Initialize nt_type.
9890 (x86_arch_setup): Don't call init_registers_amd64_linux nor
9891 init_registers_i386_linux here. Call
9892 x86_linux_update_xmltarget.
9893 (the_low_target): Add x86_linux_process_qsupported.
9894
9895 * server.c (handle_query): Call target_process_qsupported.
9896
9897 * target.h (target_ops): Add process_qsupported.
9898 (target_process_qsupported): New.
9899
fc7238bb
PA
99002010-04-03 Pedro Alves <pedro@codesourcery.com>
9901
9902 * inferiors.c (add_thread): Set last_status kind to
9903 TARGET_WAITKIND_IGNORE.
9904 * linux-low.c (cancel_breakpoint): Remove unnecessary regcache
9905 fetch. Use ptid_of. Avoid unnecessary get_lwp_thread calls.
9906 (linux_wait_1): Move `thread' local definition to block that uses
9907 it. Don't NULL initialize `event_child'.
9908 (linux_resume_one_thread): Avoid unnecessary get_lwp_thread calls.
9909 Alway set the thread's last_status to TARGET_WAITKIND_IGNORE.
9910 * linux-x86-low.c (x86_breakpoint_at): Read raw memory.
9911
bdabb078
PA
99122010-04-01 Pedro Alves <pedro@codesourcery.com>
9913
9914 * linux-low.c (get_stop_pc): Don't adjust the PC if stopped with
9915 an extended waitstatus, or by a watchpoint.
9916 (cancel_breakpoints_callback): Don't cancel a breakpoint if the
9917 thread was stepping or has been stopped by a watchpoint.
9918
d3bbe7a0
PA
99192010-04-01 Pedro Alves <pedro@codesourcery.com>
9920
9921 * mem-break.c (struct raw_breakpoint): New field shlib_disabled.
9922 (set_gdb_breakpoint_at): If GDB is inserting a breakpoint on top
9923 of another, then delete the previous, and validate all
9924 breakpoints.
9925 (validate_inserted_breakpoint): New.
9926 (delete_disabled_breakpoints): New.
9927 (validate_breakpoints): New.
9928 (check_mem_read): Validate breakpoints before trusting their
9929 shadow. Delete disabled breakpoints.
9930 (check_mem_write): Validate breakpoints before trusting they
9931 should be inserted. Delete disabled breakpoints.
9932 * mem-break.h (validate_breakpoints):
9933 * server.c (handle_query): Validate breakpoints when we see a
9934 qSymbol query.
9935
8b07ae33
PA
99362010-04-01 Pedro Alves <pedro@codesourcery.com>
9937
9938 * linux-low.c (linux_wait_1): Avoid setting need_step_over is
9939 there's a GDB breakpoint at stop_pc. Always report a trap to GDB
9940 if we could tell there's a GDB breakpoint at stop_pc.
9941 (need_step_over_p): Don't do a step over if we find a GDB
9942 breakpoint at the resume PC.
9943
9944 * mem-break.c (struct raw_breakpoint): New.
9945 (enum bkpt_type): New type `gdb_breakpoint'.
9946 (struct breakpoint): Delete the `PC', `old_data' and `inserted'
9947 fields. New field `raw'.
9948 (find_raw_breakpoint_at): New.
9949 (set_raw_breakpoint_at): Handle refcounting. Create a raw
9950 breakpoint instead.
9951 (set_breakpoint_at): Adjust.
9952 (delete_raw_breakpoint): New.
9953 (release_breakpoint): New.
9954 (delete_breakpoint): Rename to...
9955 (delete_breakpoint_1): ... this. Add proc parameter. Use
9956 release_breakpoint. Return ENOENT.
9957 (delete_breakpoint): Reimplement.
9958 (find_breakpoint_at): Delete.
9959 (find_gdb_breakpoint_at): New.
9960 (delete_breakpoint_at): Delete.
9961 (set_gdb_breakpoint_at): New.
9962 (delete_gdb_breakpoint_at): New.
9963 (gdb_breakpoint_here): New.
9964 (set_reinsert_breakpoint): Use release_breakpoint.
9965 (uninsert_breakpoint): Rename to ...
9966 (uninsert_raw_breakpoint): ... this.
9967 (uninsert_breakpoints_at): Adjust to handle raw breakpoints.
9968 (reinsert_raw_breakpoint): Change parameter type to
9969 raw_breakpoint.
9970 (reinsert_breakpoints_at): Adjust to handle raw breakpoints
9971 instead.
9972 (check_breakpoints): Adjust. Use release_breakpoint.
9973 (breakpoint_here): Rewrite using find_raw_breakpoint_at.
9974 (breakpoint_inserted_here): Ditto.
9975 (check_mem_read): Adjust to iterate over raw breakpoints instead.
9976 Don't trust the breakpoint's shadow if it is not inserted.
9977 (check_mem_write): Adjust to iterate over raw breakpoints instead.
9978 (delete_all_breakpoints): Adjust.
9979 (free_all_breakpoints): Mark all breakpoints as uninserted, and
9980 use delete_breakpoint_1.
9981
9982 * mem-break.h (breakpoints_supported): Delete declaration.
9983 (set_gdb_breakpoint_at): Declare.
9984 (gdb_breakpoint_here): Declare.
9985 (delete_breakpoint_at): Delete.
9986 (delete_gdb_breakpoint_at): Declare.
9987
9988 * server.h (struct raw_breakpoint): Forward declare.
9989 (struct process_info): New field `raw_breakpoints'.
9990
9991 * linux-x86-low.c (x86_insert_point, x86_remote_point): Handle Z0
9992 breakpoints.
9993
6bf5e0ba
PA
99942010-03-24 Pedro Alves <pedro@codesourcery.com>
9995
9996 * linux-low.c (status_pending_p_callback): Fix comment.
9997 (linux_wait_for_event_1): Move most of the internal breakpoint
9998 handling from here...
9999 (linux_wait_1): ... to here.
10000 (count_events_callback): New.
10001 (select_singlestep_lwp_callback): New.
10002 (select_event_lwp_callback): New.
10003 (cancel_breakpoints_callback): New.
10004 (select_event_lwp): New.
10005 (linux_wait_1): Simplify internal breakpoint handling. Give equal
10006 priority to all LWPs that have had events that should be reported
10007 to the client. Cancel breakpoints when about to reporting the
10008 event to the client, not while stopping lwps. No longer cancel
10009 finished single-steps here.
10010 (cancel_finished_single_step): Delete.
10011 (cancel_finished_single_steps): Delete.
10012
414a389f
PA
100132010-03-24 Pedro Alves <pedro@codesourcery.com>
10014
10015 * mem-break.c (enum bkpt_type): New.
10016 (struct breakpoint): New field `type'.
10017 (set_breakpoint_at): Change return type to struct breakpoint
10018 pointer. Set type to `other_breakpoint' by default.
10019 (delete_breakpoint): Rewrite, supporting more than one breakpoint
10020 in the breakpoint list.
10021 (delete_reinsert_breakpoints): Only delete reinsert breakpoints.
10022 (reinsert_breakpoint): Rename to ...
10023 (reinsert_raw_breakpoint): ... this.
10024 (reinsert_breakpoints_at): Adjust.
10025 * mem-break.h (struct breakpoint): Declare.
10026 (set_breakpoint_at): Change return type to struct breakpoint
10027 pointer.
10028
2280c721
PA
100292010-03-24 Pedro Alves <pedro@codesourcery.com>
10030
10031 * server.c (handle_query): Assign, not compare.
10032
d50171e4
PA
100332010-03-24 Pedro Alves <pedro@codesourcery.com>
10034
10035 Teach linux gdbserver to step-over-breakpoints.
10036
10037 * linux-low.c (can_hardware_single_step): New.
10038 (supports_breakpoints): New.
10039 (handle_extended_wait): If stopping threads, read the stop pc of
10040 the new cloned LWP.
10041 (get_pc): New.
10042 (get_stop_pc): Add `lwp' parameter. Handle it. Bail out if the
10043 low target doesn't support retrieving the PC.
10044 (add_lwp): Set last_resume_kind to resume_continue.
10045 (linux_attach_lwp_1): Adjust comments. Always set stop_expected.
10046 (linux_attach): Don't clear stop_expected. Set the lwp's
10047 last_resume_kind to resume_stop.
10048 (linux_detach_one_lwp): Don't check for removed breakpoints.
10049 (check_removed_breakpoint): Delete.
10050 (status_pending_p): Rename to ...
10051 (status_pending_p_callback): ... this. Don't check for removed
10052 breakpoints. Don't consider threads that are stopped from GDB's
10053 perspective.
10054 (linux_wait_for_lwp): Always read the stop_pc here.
10055 (cancel_breakpoint): New.
10056 (step_over_bkpt): New global.
10057 (linux_wait_for_event_1): Implement stepping over breakpoints.
10058 (gdb_wants_lwp_stopped): New.
10059 (gdb_wants_all_stopped): New.
10060 (linux_wait_1): Tag threads as gdb-wants-stopped. Cancel finished
10061 single-step traps here. Store the thread's last reported target
10062 wait status.
10063 (send_sigstop): Don't clear stop_expected. Always set it,
10064 instead.
10065 (mark_lwp_dead): Remove reference to pending_is_breakpoint.
10066 (cancel_finished_single_step): New.
10067 (cancel_finished_single_steps): New.
10068 (wait_for_sigstop): Don't cancel finished single-step traps here.
10069 (linux_resume_one_lwp): Don't check for removed breakpoints.
10070 Don't set `step' on non-hardware step archs.
10071 (linux_set_resume_request): Ignore resume_stop requests if already
10072 stopping or stopped. Set the lwp's last_resume_kind.
10073 (resume_status_pending_p): Don't check for removed breakpoints.
10074 (need_step_over_p): New.
10075 (start_step_over): New.
10076 (finish_step_over): New.
10077 (linux_resume_one_thread): Always queue a sigstop for resume_stop
10078 requests. Clear the thread's last reported target waitstatus.
10079 Don't use the `suspended' flag. Don't consider pending breakpoints.
10080 (linux_resume): Start a step-over if necessary.
10081 (proceed_one_lwp): New.
10082 (proceed_all_lwps): New.
10083 (unstop_all_lwps): New.
10084 * linux-low.h (struct lwp_info): Rewrite comment for the
10085 `suspended' flag. Add the `stop_pc' field. Delete the
10086 `pending_stop_pc' field. Tweak the `stepping' flag's comment.
10087 Add `'last_resume_kind' and `need_step_over' fields.
10088 * inferiors.c (struct thread_info): Delete, moved elsewhere.
10089 * mem-break.c (struct breakpoint): Delete `reinserting' flag.
10090 Delete `breakpoint_to_reinsert' field. New flag `inserted'.
10091 (set_raw_breakpoint_at): New.
10092 (set_breakpoint_at): Rewrite to use it.
10093 (reinsert_breakpoint_handler): Delete.
10094 (set_reinsert_breakpoint): New.
10095 (reinsert_breakpoint_by_bp): Delete.
10096 (delete_reinsert_breakpoints): New.
10097 (uninsert_breakpoint): Rewrite.
10098 (uninsert_breakpoints_at): New.
10099 (reinsert_breakpoint): Rewrite.
10100 (reinsert_breakpoints_at): New.
10101 (check_breakpoints): Rewrite.
10102 (breakpoint_here): New.
10103 (breakpoint_inserted_here): New.
10104 (check_mem_read): Adjust.
10105 * mem-break.h (breakpoints_supported, breakpoint_here)
10106 (breakpoint_inserted_here, set_reinsert_breakpoint): Declare.
10107 (reinsert_breakpoint_by_bp): Delete declaration.
10108 (delete_reinsert_breakpoints): Declare.
10109 (reinsert_breakpoint): Delete declaration.
10110 (reinsert_breakpoints_at): Declare.
10111 (uninsert_breakpoint): Delete declaration.
10112 (uninsert_breakpoints_at): Declare.
10113 (check_breakpoints): Adjust prototype.
10114 * server.h: Adjust include order.
10115 (struct thread_info): Declare here. Add a `last_status' field.
10116
30ba68cb
MS
101172010-03-23 Michael Snyder <msnyder@vmware.com>
10118
10119 * server.c (crc32): New function.
10120 (handle_query): Add handling for 'qCRC:' request.
10121
b9a881c2
PA
101222010-03-23 Pedro Alves <pedro@codesourcery.com>
10123
10124 * linux-x86-low.c (x86_linux_prepare_to_resume): Clear DR6 if the
10125 lwp had been stopped by a watchpoint.
10126
e92d13d5
PA
101272010-03-16 Pedro Alves <pedro@codesourcery.com>
10128
10129 * server.h (internal_error): Declare.
10130 (gdb_assert, ASSERT_FUNCTION, gdb_assert_fail): Define.
10131 * utils.c (internal_error): New function.
10132
64daa791
AS
101332010-03-15 Andreas Schwab <schwab@redhat.com>
10134
10135 * configure.srv: Fix typo setting srv_regobj.
10136
f52cd8cd
PA
101372010-03-15 Pedro Alves <pedro@codesourcery.com>
10138
10139 * linux-low.c (fetch_register): Avoid passing a non string literal
10140 format to `error'.
10141 (usr_store_inferior_registers): Ditto.
10142
93ae6fdc
PA
101432010-03-14 Pedro Alves <pedro@codesourcery.com>
10144
10145 * linux-low.c (linux_write_memory): Bail out early if peeking
10146 memory failed.
10147
c3adc08c
PA
101482010-03-14 Pedro Alves <pedro@codesourcery.com>
10149
10150 * linux-low.h (struct lwp_info): New fields
10151 `stopped_by_watchpoint' and `stopped_data_address'.
10152 * linux-low.c (linux_wait_for_lwp): Check for watchpoint triggers
10153 here, and cache them in the lwp object.
10154 (wait_for_sigstop): Check stopped_by_watchpoint lwp field
10155 directly.
10156 (linux_resume_one_lwp): Clear the lwp's stopped_by_watchpoint
10157 field.
10158 (linux_stopped_by_watchpoint): Rewrite.
10159 (linux_stopped_data_address): Rewrite.
10160
bce522a2
PA
101612010-03-06 Simo Melenius <simo.melenius@iki.fi>
10162
10163 * linux-low.c (linux_wait_for_lwp): Fetch the regcache after
10164 switching the current inferior, not before.
10165
90884b2b
L
101662010-03-01 H.J. Lu <hongjiu.lu@intel.com>
10167
10168 * Makefile.in (clean): Replace reg-i386.c, reg-x86-64.c,
10169 reg-i386-linux.c and reg-x86-64-linux.c with i386.c, amd64.c,
10170 i386-linux.c and amd64-linux.c.
10171 (reg-i386.o): Removed.
10172 (reg-i386.c): Likewise.
10173 (reg-i386-linux.o): Likewise.
10174 (reg-i386-linux.c): Likewise.
10175 (reg-x86-64.o): Likewise.
10176 (reg-x86-64.c): Likewise.
10177 (reg-x86-64-linux.o): Likewise.
10178 (reg-x86-64-linux.c): Likewise.
10179 (i386.o): New.
10180 (i386.c): Likewise.
10181 (i386-linux.o): Likewise.
10182 (i386-linux.c): Likewise.
10183 (amd64.o): Likewise.
10184 (amd64.c): Likewise.
10185 (amd64-linux.o): Likewise.
10186 (amd64-linux.c): Likewise.
10187
10188 * configure.srv (srv_i386_regobj): New.
10189 (srv_i386_linux_regobj): Likewise.
10190 (srv_amd64_regobj): Likewise.
10191 (srv_amd64_linux_regobj): Likewise.
10192 (srv_i386_32bit_xmlfiles): Likewise.
10193 (srv_i386_64bit_xmlfiles): Likewise.
10194 (srv_i386_xmlfiles): Likewise.
10195 (srv_amd64_xmlfiles): Likewise.
10196 (srv_i386_linux_xmlfiles): Likewise.
10197 (srv_amd64_linux_xmlfiles): Likewise.
10198 (i[34567]86-*-cygwin*): Set srv_regobj to $srv_i386_regobj. Set
10199 srv_xmlfiles to $srv_i386_xmlfiles.
10200 (i[34567]86-*-mingw32ce*): Likewise.
10201 (i[34567]86-*-mingw*): Likewise.
10202 (i[34567]86-*-nto*): Likewise.
10203 (i[34567]86-*-linux*): Set srv_regobj to $srv_i386_linux_regobj
10204 and $srv_amd64_linux_regobj. Set srv_xmlfiles to
10205 $srv_i386_linux_xmlfiles and $srv_amd64_linux_xmlfiles.
10206 (x86_64-*-linux*): Likewise.
10207
10208 * linux-x86-low.c (init_registers_x86_64_linux): Removed.
10209 (init_registers_amd64_linux): New.
10210 (x86_arch_setup): Replace init_registers_x86_64_linux with
10211 init_registers_amd64_linux.
10212
193f13e6
MK
102132010-02-23 Maxim Kuvyrkov <maxim@codesourcery.com>
10214
10215 * configure.ac: Check for libdl. If it is not available link against
10216 static libthread_db.
10217 * configure: Regenerate.
10218
85d721b8
PA
102192010-02-22 Pedro Alves <pedro@codesourcery.com>
10220
10221 PR9605
10222
10223 * i386-low.c (i386_length_and_rw_bits): Throw a fatal error if
10224 handing a read watchpoint.
10225 (i386_low_insert_watchpoint): Read watchpoints aren't supported.
10226
6076632b
DE
102272010-02-12 Doug Evans <dje@google.com>
10228
10229 * linux-low.c (linux_supports_tracefork_flag): Document.
10230 (linux_look_up_symbols): Add comment.
10231
3327ccf7
L
102322010-02-03 H.J. Lu <hongjiu.lu@intel.com>
10233
10234 * regcache.c (supply_register): Clear regcache if buf is NULL.
10235
0718675c 102362010-02-02 Nicolas Roche <roche@sourceware.org>
3327ccf7 10237 Joel Brobecker <brobecker@adacore.com>
0718675c
JB
10238
10239 * inferiors.c (find_inferior): Add function documentation.
10240 (unloaded_dll): Handle the case where the unloaded dll has not
10241 been previously registered in the dll list.
10242
177321bd
DJ
102432010-02-01 Daniel Jacobowitz <dan@codesourcery.com>
10244
10245 * linux-arm-low.c (thumb_breakpoint_len): Delete.
10246 (thumb2_breakpoint): New.
10247 (arm_breakpoint_at): Check for Thumb-2 breakpoints.
10248
2b009048
DJ
102492010-01-29 Daniel Jacobowitz <dan@codesourcery.com>
10250
10251 * linux-low.c (get_stop_pc): Check for SIGTRAP.
10252 (linux_wait_for_event_1): Handle SIGILL and SIGSEGV as possible
10253 breakpoints.
10254
3be029c7
PA
102552010-01-21 Pedro Alves <pedro@codesourcery.com>
10256
10257 * linux-ppc-low.c (ppc_arch_setup): Adjust to regcache changes.
10258
18f5de3b
JK
102592010-01-21 Jan Kratochvil <jan.kratochvil@redhat.com>
10260
10261 * linux-s390-low.c (s390_collect_ptrace_register)
10262 (s390_supply_ptrace_register): Adjust it for the new regcache parameter.
10263
3743bb4f
DE
102642010-01-21 Doug Evans <dje@google.com>
10265
14ce3065
DE
10266 * linux-low.c (PTRACE_ARG3_TYPE): Change from long to void*.
10267 (PTRACE_ARG4_TYPE): New macro.
10268 (handle_extended_wait): Cast ptrace arg4 to PTRACE_ARG4_TYPE.
10269 (linux_wait_for_event_1, linux_resume_one_lwp): Ditto.
10270 (fetch_register): Cast to uintptr_t before casting to PTRACE_ARG3_TYPE.
10271 (usr_store_inferior_registers): Ditto.
10272 (linux_read_memory, linux_write_memory): Ditto.
10273 (linux_test_for_tracefork): Ditto.
10274
3743bb4f
DE
10275 * linux-arm-low.c: Remove redundant include of gdb_proc_service.h.
10276 Only include elf.h if gdb_proc_service.h didn't include linux/elf.h.
10277
8b315be5
PA
102782010-01-21 Pedro Alves <pedro@codesourcery.com>
10279
10280 * proc-service.c (ps_lgetregs): Don't refetch registers from the
10281 target.
10282
85492558
PA
102832010-01-21 Pedro Alves <pedro@codesourcery.com>
10284
10285 * spu-low.c (spu_fetch_registers, spu_store_registers): Change
10286 prototype to take a regcache. Adjust.
10287
442ea881
PA
102882010-01-20 Pedro Alves <pedro@codesourcery.com>
10289
10290 * regcache.h (struct thread_info): Forward declare.
10291 (struct regcache): New.
10292 (new_register_cache): Adjust prototype.
10293 (get_thread_regcache): Declare.
10294 (free_register_cache): Adjust prototype.
10295 (registers_to_string, registers_from_string): Ditto.
10296 (supply_register, supply_register_by_name, collect_register)
10297 (collect_register_as_string, collect_register_by_name): Ditto.
10298 * regcache.c (struct inferior_regcache_data): Delete.
10299 (get_regcache): Rename to ...
10300 (get_thread_regcache): ... this. Adjust. Switch inferior before
10301 fetching registers.
10302 (regcache_invalidate_one): Adjust.
10303 (regcache_invalidate): Fix prototype.
10304 (new_register_cache): Return the new register cache.
10305 (free_register_cache): Change prototype.
10306 (realloc_register_cache): Adjust.
10307 (registers_to_string): Change prototype to take a regcache. Adjust.
10308 (registers_from_string): Ditto.
10309 (register_data): Ditto.
10310 (supply_register): Ditto.
10311 (supply_register_by_name): Ditto.
10312 (collect_register): Ditto.
10313 (collect_register_as_string): Ditto.
10314 (collect_register_by_name): Ditto.
10315 * server.c (process_serial_event): Adjust.
10316 * linux-low.h (regset_fill_func, regset_store_func): Change
10317 prototype.
10318 (get_pc, set_pc, collect_ptrace_register, supply_ptrace_register):
10319 Change prototype.
10320 * linux-low.c (get_stop_pc): Adjust.
10321 (check_removed_breakpoint): Adjust.
10322 (linux_wait_for_event): Adjust.
10323 (linux_resume_one_lwp): Adjust.
10324 (fetch_register): Add regcache parameter. Adjust.
10325 (usr_store_inferior_registers): Ditto.
10326 (regsets_fetch_inferior_registers): Ditto.
10327 (regsets_store_inferior_registers): Ditto.
10328 (linux_fetch_registers, linux_store_registers): Ditto.
10329 * i387-fp.c (i387_cache_to_fsave): Change prototype to take a
10330 regcache. Adjust.
43aaf8b6
PA
10331 (i387_fsave_to_cache, i387_cache_to_fxsave, i387_fxsave_to_cache):
10332 Ditto.
442ea881
PA
10333 * i387-fp.h (i387_cache_to_fsave, i387_fsave_to_cache): Change
10334 prototype to take a regcache.
10335 (i387_cache_to_fxsave, i387_fxsave_to_cache): Ditto.
10336 * remote-utils.c (convert_ascii_to_int, outreg)
10337 (prepare_resume_reply): Change prototype to take a regcache.
10338 Adjust.
10339 * target.h (struct target_ops) <fetch_registers, store_registers>:
10340 Change prototype to take a regcache.
10341 (fetch_inferior_registers, store_inferior_registers): Change
10342 prototype to take a regcache. Adjust.
10343 * proc-service.c (ps_lgetregs): Adjust.
10344 * linux-x86-low.c (x86_fill_gregset, x86_store_gregset)
10345 (x86_fill_fpregset, x86_store_fpregset, x86_fill_fpxregset)
10346 (x86_store_fpxregset, x86_get_pc, x86_set_pc): Change prototype to
10347 take a regcache. Adjust.
10348 * linux-arm-low.c (arm_fill_gregset, arm_store_gregset)
10349 (arm_fill_wmmxregset, arm_store_wmmxregset, arm_fill_vfpregset)
10350 (arm_store_vfpregset, arm_get_pc, arm_set_pc):
10351 (arm_breakpoint_at): Change prototype to take a regcache. Adjust.
10352 * linux-cris-low.c (cris_get_pc, cris_set_pc)
10353 (cris_cannot_fetch_register):
10354 (cris_breakpoint_at): Change prototype to take a regcache.
10355 Adjust.
10356 * linux-crisv32-low.c (cris_get_pc, cris_set_pc,
10357 cris_reinsert_addr, cris_write_data_breakpoint): Change prototype
10358 to take a regcache. Adjust.
10359 (cris_breakpoint_at, cris_insert_point, cris_remove_point):
10360 Adjust.
10361 * linux-m32r-low.c (m32r_get_pc, m32r_set_pc): Change prototype to
10362 take a regcache. Adjust.
10363 * linux-m68k-low.c (m68k_fill_gregset, m68k_store_gregset)
10364 (m68k_fill_fpregset, m68k_store_fpregset, m68k_get_pc,
10365 (m68k_set_pc): Change prototype to take a regcache. Adjust.
10366 * linux-mips-low.c (mips_get_pc):
10367 (mips_set_pc): Change prototype to take a regcache. Adjust.
10368 (mips_reinsert_addr): Adjust.
10369 (mips_collect_register): Change prototype to take a regcache.
10370 Adjust.
10371 (mips_supply_register):
10372 (mips_collect_register_32bit, mips_supply_register_32bit)
10373 (mips_fill_gregset, mips_store_gregset, mips_fill_fpregset)
10374 (mips_store_fpregset): Ditto.
43aaf8b6
PA
10375 * linux-ppc-low.c (ppc_supply_ptrace_register)
10376 (ppc_supply_ptrace_register): Ditto.
442ea881
PA
10377 (parse_spufs_run): Adjust.
10378 (ppc_get_pc, ppc_set_pc, ppc_fill_gregset, ppc_fill_vsxregset)
10379 (ppc_store_vsxregset, ppc_fill_vrregset, ppc_store_vrregset)
10380 (ppc_fill_evrregset, ppc_store_evrregset): Change prototype to
10381 take a regcache. Adjust.
10382 * linux-s390-low.c (s390_collect_ptrace_register)
10383 (s390_supply_ptrace_register, s390_fill_gregset, s390_get_pc)
10384 (s390_set_pc): Change prototype to take a regcache. Adjust.
10385 (s390_arch_setup): Adjust.
10386 * linux-sh-low.c (sh_get_pc, sh_breakpoint_at)
10387 (sh_fill_gregset): Change prototype to take a regcache. Adjust.
10388 * linux-sparc-low.c (sparc_fill_gregset_to_stack)
10389 (sparc_fill_gregset, sparc_store_gregset_from_stack)
10390 (sparc_store_gregset, sparc_get_pc): Change prototype to take a
10391 regcache. Adjust.
10392 (sparc_breakpoint_at): Adjust.
10393 * linux-xtensa-low.c (xtensa_fill_gregset):
10394 (xtensa_store_gregset):
10395 (xtensa_fill_xtregset, xtensa_store_xtregset, xtensa_get_pc)
10396 (xtensa_set_pc): Change prototype to take a regcache. Adjust.
10397 * nto-low.c (nto_fetch_registers, nto_store_registers): Change
10398 prototype to take a regcache. Adjust.
10399 * win32-arm-low.c (arm_fetch_inferior_register)
10400 (arm_store_inferior_register): Change prototype to take a
10401 regcache. Adjust.
10402 * win32-i386-low.c (i386_fetch_inferior_register)
10403 (i386_store_inferior_register): Change prototype to take a
10404 regcache. Adjust.
10405 * win32-low.c (child_fetch_inferior_registers)
10406 (child_store_inferior_registers): Change prototype to take a
10407 regcache. Adjust.
10408 (win32_wait): Adjust.
10409 (win32_fetch_inferior_registers): Change prototype to take a
10410 regcache. Adjust.
10411 (win32_store_inferior_registers): Adjust.
10412 * win32-low.h (struct win32_target_ops) <fetch_inferior_register,
10413 store_inferior_register>: Change prototype to take a regcache.
10414
60c3d7b0
DE
104152010-01-20 Doug Evans <dje@google.com>
10416
10417 * linux-low.c (linux_create_inferior): Wrap use of __SIGRTMIN in
10418 #ifdef.
10419 (linux_wait_for_event1, linux_init_signals): Ditto.
ec8ebe72 10420 (W_STOPCODE): Provide definition if missing.
60c3d7b0 10421
dc146f7c
VP
104222010-01-13 Vladimir Prus <vladimir@codesourcery.com>
10423
10424 * linux-low.c (linux_core_of_thread): New.
10425 (compare_ints, show_process, list_threads): New.
10426 (linux_qxfer_osdata): Report threads and cores.
10427 (linux_target_op): Register linux_core_of_thread.
10428 * remote-utils.c (prepare_resume_reply): Report the core.
10429 (buffer_xml_printf): Support %d specifier.
10430 * server.c (handle_threads_qxfer_proper, handle_threads_qxfer):
10431 New.
10432 (handle_query): Handle qXfer:threads. Announce availability
10433 thereof.
10434 * target.h (struct target_ops): New field core_of_thread.
10435
7803799a
UW
104362010-01-04 Ulrich Weigand <uweigand@de.ibm.com>
10437
10438 * Makefile.in (clean): Remove new generated files.
10439 (reg-s390.o, reg-s390.c): Remove rules.
10440 (reg-s390x.o, reg-s390x.c): Likewise.
10441 (s390-linux32.o, s390-linux32.c): Add rules.
10442 (s390-linux64.o, s390-linux64.c): Likewise.
10443 (s390x-linux64.o, s390x-linux64.c): Likewise.
10444 * configure.srv (s390*-*-linux*): Update srv_regobj and srv_xmlfiles.
10445 * linux-s390-low.c: Include <elf.h>.
10446 (HWCAP_S390_HIGH_GPRS): Define if undefined.
10447 (init_registers_s390): Remove prototype.
10448 (init_registers_s390x): Likewise.
10449 (init_registers_s390_linux32): Add prototype.
10450 (init_registers_s390_linux64): Likewise.
10451 (init_registers_s390x_linux64): Likewise.
10452 (s390_num_regs_3264): New define.
10453 (s390_regmap_3264): New global variable.
10454 (s390_cannot_fetch_register): Remove obsolete check.
10455 (s390_cannot_store_register): Likewise.
10456 (s390_collect_ptrace_register): Handle upper/lower register halves.
10457 (s390_supply_ptrace_register): Likewise.
10458 (s390_fill_gregset): Update to register number changes.
10459 (s390_get_hwcap): New routine.
10460 (s390_arch_setup): Detect 32-bit process running on 64-bit system.
10461 Install appropriate regmap and register set.
10462
6e7ffa39
JB
104632010-01-01 Joel Brobecker <brobecker@adacore.com>
10464
10465 * server.c (gdbserver_version): Update copyright year to 2010.
10466 * gdbreplay.c (gdbreplay_version): Likewise.
10467
957f3f49
DE
104682009-12-28 Doug Evans <dje@google.com>
10469
10470 * linux-low.c: Delete inclusion of ansidecl.h, elf/common.h,
10471 elf/external.h. Include <elf.h> instead but only if necessary.
10472
ca5c370d
PA
104732009-12-28 Pedro Alves <pedro@codesourcery.com>
10474
10475 * linux-low.c (linux_remove_process): Remove `detaching'
10476 parameter. Don't release/detach from thread_db here.
10477 (linux_kill): Release/detach from thread_db here, ...
10478 (linux_detach): ... and here, before actually detaching.
10479 (linux_wait_1): ... and here, when a process exits.
10480 * thread-db.c (any_thread_of): New.
10481 (thread_db_free): Switch the current inferior to a thread of the
10482 passed in process.
10483
4ee62156
DE
104842009-12-21 Doug Evans <dje@google.com>
10485
d90e6a88
DE
10486 * linux-x86-low.c: Delete outdated comment about Elf32_Phdr.
10487
c5f62d5f
DE
10488 * linux-low.c (kill_lwp): Use __NR_tkill instead of SYS_tkill.
10489 Move definition of tkill_failed to ifdef __NR_tkill to avoid gcc
10490 warning ifndef __NR_tkill. Move setting of errno there too.
10491 Delete unnecessary resetting of errno after syscall.
10492 Minor comment changes to match gdb/linux-nat.c:kill_lwp.
10493
10e86dd7
DE
10494 * configure.ac: Check for dladdr.
10495 * config.in: Regenerate.
10496 * configure: Regenerate.
10497 * thread-db.c (dladdr_to_soname): Only define ifdef HAVE_DLADDR.
10498 (try_thread_db_load): Update.
10499
4ee62156
DE
10500 * linux-low.c (my_waitpid): Delete unnecessary prototype.
10501
00f515da
DE
105022009-12-18 Doug Evans <dje@google.com>
10503
e9464885
DE
10504 * event-loop.c: Include unistd.h if it exists.
10505
07d4f67e
DE
10506 * linux-low.c (my_waitpid): Move definition away from being in
10507 between linux_tracefork_child/linux_test_for_tracefork.
10508
00f515da
DE
10509 * gdb_proc_service.h (psaddr_t): Fix type.
10510 * thread-db.c (thread_db_info.td_thr_tls_get_addr_p): Fix
10511 signature to match glibc.
10512
1de1badb
DE
105132009-12-16 Doug Evans <dje@google.com>
10514
10515 * linux-low.c (linux_read_memory): Fix argument to read.
10516
aeeb81d1
PA
105172009-11-26 Pedro Alves <pedro@codesourcery.com>
10518
10519 * win32-low.c (get_child_debug_event): On EXIT_THREAD_DEBUG_EVENT
10520 events, don't leave current_inferior pointing at null.
10521
10357975
PA
105222009-11-26 Pedro Alves <pedro@codesourcery.com>
10523
10524 * win32-low.c (LOG): Delete.
10525 (OUTMSG): Output to stderr.
10526 (OUTMSG2): Conditionalize on `debug_threads' variable, instead of
10527 on compile time LOG macro.
10528 (win32_wait): Fix debug output.
10529
cf6e3471
PA
105302009-11-26 Pedro Alves <pedro@codesourcery.com>
10531
10532 * win32-low.c (win32_add_one_solib): If the dll name is
10533 "ntdll.dll", prepend the system directory to the dll path.
10534
0c85e18e
MK
105352009-11-17 Daniel Jacobowitz <dan@codesourcery.com>
10536
10537 * m68k-tdep.c (m68k_gdbarch_init): Reuse previous initialization.
10538
9ac544ce 105392009-11-17 Nathan Sidwell <nathan@codesourcery.com>
889bf7c5 10540 Vladimir Prus <vladimir@codesourcery.com>
9ac544ce
MK
10541
10542 * Makefile.in (reg-cf.o, reg-cf.c): New targets.
10543 * configure.ac: Check for __mcoldfire__ and set
10544 gdb_cv_m68k_is_coldfire.
10545 * configure.srv: Use gdb_cv_m68k_is_coldfire to select between
10546 reg-cf.o and reg-m68k.o.
10547 * configure: Regenerated.
10548
fd7dd3e6
PA
105492009-11-16 Pedro Alves <pedro@codesourcery.com>
10550
10551 * linux-low.c (linux_remove_process): Add `detaching' parameter.
10552 Pass it to thread_db_free.
10553 (linux_kill, linux_detach, linux_wait_1): Adjust to pass the
10554 proper `detaching' argument to linux_remove_process.
10555 * linux-low.h (thread_db_free): Add `detaching' parameter.
10556 * thread-db.c (thread_db_init): Pass false as `detaching' argument
10557 to thread_db_free.
10558 (thread_db_free): Add `detaching' parameter. Only
10559 call td_ta_clear_event if detaching from process.
10560
75aa492e
MK
105612009-11-12 Maxim Kuvyrkov <maxim@codesourcery.com>
10562
10563 * thread-db.c (thread_db_free): Fix typo.
10564
21e1bee4
PP
105652009-11-11 Paul Pluzhnikov <ppluzhnikov@google.com>
10566
10567 PR gdb/10838
10568 * thread-db.c (thread_db_free): Call td_ta_clear_event.
10569
8838b45e
NS
105702009-11-03 Nathan Sidwell <nathan@codesourcery.com>
10571
10572 * configure.ac (i[34567]86-*): Check if we're targetting x86-64
10573 with an i686 compiler.
10574 * configure.srv (i[34567]86-*-linux*): Pull in x86-64 handling if
10575 needed.
10576 * configure: Rebuilt.
10577
8a35fb51
SL
105782009-10-29 Sandra Loosemore <sandra@codesourcery.com>
10579
10580 PR gdb/10783
10581
10582 * server.c (handle_search_memory_1): Correct read_addr initialization
10583 in loop for searching subsequent chunks.
10584
96f15937
PP
105852009-10-29 Paul Pluzhnikov <ppluzhnikov@google.com>
10586
10587 * configure.ac: New --with-libthread-db option.
10588 * thread-db.c: Allow direct dependence on libthread_db.
10589 (thread_db_free): Adjust.
10590 * config.in: Regenerate.
10591 * configure: Likewise.
889bf7c5 10592
5f7d1694
PP
105932009-10-28 Paul Pluzhnikov <ppluzhnikov@google.com>
10594
10595 PR gdb/10757
10596 * thread-db.c (attach_thread): New function.
10597 (maybe_attach_thread): Return success/failure.
10598 (find_new_threads_callback): Adjust.
889bf7c5
PA
10599 (thread_db_find_new_threads): Loop until no new threads.
10600
88e3b899
PA
106012009-10-13 Pedro Alves <pedro@codesourcery.com>
10602
10603 * proc-service.c (ps_lgetregs): Formatting.
10604
cdbfd419
PP
106052009-10-08 Paul Pluzhnikov <ppluzhnikov@google.com>
10606
10607 * acinclude.m4: (SRV_CHECK_THREAD_DB, SRV_CHECK_TLS_GET_ADDR): Remove.
10608 * configure.ac: Adjust.
10609 * linux-low.h (struct process_info_private): Move members to struct
10610 thread_db.
10611 (thread_db_free, thread_db_handle_monitor_command): New prototype.
10612 * linux-low.c (linux_remove_process): Adjust.
10613 (linux_wait_for_event_1, linux_look_up_symbols): Likewise.
10614 * server.c (handle_query): Move code ...
10615 (handle_monitor_command): ... here. New function.
10616 * target.h (struct target_ops): New member.
10617 * thread-db.c (struct thread_db): New.
10618 (libthread_db_search_path): New variable.
10619 (thread_db_create_event, thread_db_enable_reporting)
10620 (find_one_thread, maybe_attach_thread, find_new_threads_callback)
10621 (thread_db_find_new_threads, (thread_db_get_tls_address): Adjust.
10622 (try_thread_db_load_1, dladdr_to_soname): New functions.
10623 (try_thread_db_load, thread_db_load_search): New functions.
10624 (thread_db_init): Search for libthread_db.
10625 (thread_db_free): New function.
10626 (thread_db_handle_monitor_command): Likewise.
10627 * config.in: Regenerate.
10628 * configure: Regenerate.
889bf7c5 10629
4168d2d6
UW
106302009-09-27 Ulrich Weigand <uweigand@de.ibm.com>
10631
10632 * spu-low.c (spu_kill): Wait for inferior to terminate.
10633 Call clear_inferiors.
10634 (spu_detach): Call clear_inferiors.
10635
81ecdfbb
RW
106362009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10637
10638 * aclocal.m4: Regenerate.
10639 * config.in: Likewise.
10640 * configure: Likewise.
10641
0b9ff2c0
UW
106422009-07-31 Ulrich Weigand <uweigand@de.ibm.com>
10643
10644 * linux-ppc-low.c (INSTR_SC, NR_spu_run): Define.
10645 (parse_spufs_run): New function.
10646 (ppc_get_pc, ppc_set_pc): Detect and handle SPU PC.
10647 (ppc_breakpoint_at): Handle SPU breakpoints.
10648
efcbbd14
UW
106492009-07-31 Ulrich Weigand <uweigand@de.ibm.com>
10650
10651 * linux-low.c: Include <sys/stat.h> and <sys/vfs.h>.
10652 (SPUFS_MAGIC): Define.
10653 (spu_enumerate_spu_ids): New function.
10654 (linux_qxfer_spu): New function.
10655 (linux_target_ops): Install linux_qxfer_spu.
10656
f4d9bade
UW
106572009-07-31 Ulrich Weigand <uweigand@de.ibm.com>
10658
10659 * configure.srv (powerpc*-*-linux*): Add powerpc-cell32l.o
10660 and powerpc-cell64l.o to srv_regobj. Add rs6000/powerpc-cell32l.xml
10661 and rs6000/powerpc-cell64l.xml to srv_xmlfiles.
10662 * Makefile.in (powerpc-cell32l.o, powerpc-cell32l.c): New rules.
10663 (powerpc-cell64l.o, powerpc-cell64l.c): Likewise.
10664 (clean): Handle powerpc-cell32l.c and powerpc-cell64l.c.
10665 * linux-ppc-low.c (PPC_FEATURE_CELL): Define.
10666 (init_registers_powerpc_cell32l): Add prototype.
10667 (init_registers_powerpc_cell64l): Likewise.
10668 (ppc_arch_setup): Detect Cell/B.E. architecture.
10669
96e946ca
RW
106702009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
10671
10672 * Makefile.in (datarootdir): New variable.
10673
58d6951d
DJ
106742009-07-28 Daniel Jacobowitz <dan@codesourcery.com>
10675
10676 * linux-low.c (linux_write_memory): Update debugging output.
10677 * Makefile.in (clean): Add new descriptions.
10678 (arm-with-vfpv2.o, arm-with-vfpv2.c, arm-with-vfpv3.o)
10679 (arm-with-vfpv3.c, arm-with-neon.o, arm-with-neon.c): New rules.
10680 * configure.srv: Add new files for arm*-*-linux*.
10681 * linux-arm-low.c: Add new declarations.
10682 (PTRACE_GETVFPREGS, PTRACE_SETVFPREGS): Define if undefined.
10683 (arm_hwcap, HWCAP_VFP, HWCAP_IWMMXT, HWCAP_NEON, HWCAP_VFPv3)
10684 (HWCAP_VFPv3D16): New.
10685 (arm_fill_wmmxregset, arm_store_wmmxregset): Check HWCAP_IWMMXT
10686 instead of __IWMMXT__.
10687 (arm_fill_vfpregset, arm_store_vfpregset, arm_get_hwcap)
10688 (arm_arch_setup): New.
10689 (target_regsets): Remove #ifdef. Add VFP regset.
10690 (the_low_target): Use arm_arch_setup.
10691
12b42a12
DJ
106922009-07-28 Daniel Jacobowitz <dan@codesourcery.com>
10693
10694 * linux-low.c (linux_kill_one_lwp): Adjust kernel workaround to skip
10695 the main thread again.
10696
ac8c974e
AR
106972009-07-06 Aleksandar Ristovski <aristovski@qnx.com>
10698
10699 Adding Neutrino gdbserver.
10700 * configure: Regenerated.
10701 * configure.ac: Add case for srv_qnx and set LIBS accordingly.
10702 * configure.srv (i[34567]86-*-nto*): New target.
10703 * nto-low.c, nto-low.h, nto-x86-low.c: New files.
10704 * remote-utils.c [__QNX__]: Include sys/iomgr.h
10705 (nto_comctrl) [__QNX__]: New function.
10706 (enable_async_io, disable_async_io) [__QNX__]: Call nto_comctrl.
10707
4424e0c3 107082009-07-05 Danny Backx <dannybackx@users.sourceforge.net>
7437790a
PA
10709
10710 * configure.srv (i[34567]86-*-mingw32ce*): Add i386-low.o to
10711 srv_tgtobj.
10712
912cf4ba
PA
107132009-07-04 Danny Backx <dannybackx@users.sourceforge.net>
10714 Pedro Alves <pedro@codesourcery.com>
10715
10716 * win32-i386-low.c (i386_get_thread_context): Handle systems that
10717 don't support CONTEXT_EXTENDED_REGISTERS.
10718 (i386_win32_breakpoint, i386_win32_breakpoint_len): New.
10719 (the_low_target): Install them.
10720 * win32-low.c (get_child_debug_event): Handle WaitForDebugEvent
10721 failing with ERROR_PIPE_NOT_CONNECTED.
10722
aa5ca48f
DE
107232009-06-30 Doug Evans <dje@google.com>
10724 Pierre Muller <muller@ics.u-strasbg.fr>
10725
10726 Add h/w watchpoint support to x86-linux, win32-i386.
10727 * Makefile.in (SFILES): Add i386-low.c
10728 (i386_low_h): Define.
10729 (i386-low.o): Add dependencies.
10730 (linux-x86-low.o): Add i386-low.h dependency.
10731 (win32-i386-low.o): Ditto.
10732 * i386-low.c: New file.
10733 * i386-low.h: New file.
10734 * configure.srv (i[34567]86-*-cygwin*): Add i386-low.o to srv_tgtobj.
10735 (i[34567]86-*-linux*, i[34567]86-*-mingw*, x86_64-*-linux*): Ditto.
10736 * linux-low.c (linux_add_process): Initialize arch_private.
10737 (linux_remove_process): Free arch_private.
10738 (add_lwp): Initialize arch_private.
10739 (delete_lwp): Free arch_private.
10740 (linux_resume_one_lwp): Call the_low_target.prepare_to_resume if
10741 provided.
10742 * linux-low.h (process_info_private): New member arch_private.
10743 (lwp_info): New member arch_private.
10744 (linux_target_ops): New members new_process, new_thread,
10745 prepare_to_resume.
10746 (ptid_of): New macro.
10747 * linux-x86-low.c: Include stddef.h, i386-low.h.
10748 (arch_process_info): New struct.
10749 (arch_lwp_info): New struct.
10750 (x86_linux_dr_get, x86_linux_dr_set): New functions.
10751 (i386_dr_low_set_addr, i386_dr_low_set_control): New functions.
10752 (i386_dr_low_get_status): New function.
10753 (x86_insert_point, x86_remove_point): New functions.
10754 (x86_stopped_by_watchpoint): New function.
10755 (x86_stopped_data_address): New function.
10756 (x86_linux_new_process, x86_linux_new_thread): New functions.
10757 (x86_linux_prepare_to_resume): New function.
10758 (the_low_target): Add entries for insert_point, remove_point,
10759 stopped_by_watchpoint, stopped_data_address, new_process, new_thread,
10760 prepare_to_resume.
10761 * server.c (debug_hw_points): New global.
10762 (monitor_show_help): Document set debug-hw-points.
10763 (handle_query): Process "set debug-hw-points".
10764 * server.h (debug_hw_points): Declare.
10765 (paddress): Declare.
10766 * utils.c (NUMCELLS, CELLSIZE): New macros.
10767 (get_sell, xsnprintf, paddress): New functions.
10768 * win32-arm-low.c (the_low_target): Add entries for insert_point,
10769 remove_point, stopped_by_watchpoint, stopped_data_address.
10770 * win32-i386-low.c: Include i386-low.h.
10771 (debug_reg_state): Replaces dr.
10772 (i386_dr_low_set_addr, i386_dr_low_set_control): New functions.
10773 (i386_dr_low_get_status): New function.
10774 (i386_insert_point, i386_remove_point): New functions.
10775 (i386_stopped_by_watchpoint): New function.
10776 (i386_stopped_data_address): New function.
10777 (i386_initial_stuff): Update.
10778 (get_thread_context,set_thread_context,i386_thread_added): Update.
10779 (the_low_target): Add entries for insert_point,
10780 remove_point, stopped_by_watchpoint, stopped_data_address.
10781 * win32-low.c (win32_insert_watchpoint): New function.
10782 (win32_remove_watchpoint): New function.
10783 (win32_stopped_by_watchpoint): New function.
10784 (win32_stopped_data_address): New function.
10785 (win32_target_ops): Add entries for insert_watchpoint,
10786 remove_watchpoint, stopped_by_watchpoint, stopped_data_address.
10787 * win32-low.h (win32_target_ops): New members insert_point,
10788 remove_point, stopped_by_watchpoint, stopped_data_address.
10789
d993e290
PA
107902009-06-25 Pedro Alves <pedro@codesourcery.com>
10791
10792 * server.c (process_serial_event): Re-return unsupported, not
10793 error, if the type isn't recognized. Re-allow supporting only
10794 insert or remove packets. Also call require_running for
10795 breakpoints. Add missing break statement to default case. Tidy.
10796 * target.h (struct target_ops): Rename insert_watchpoint to
10797 insert_point, and remove_watchpoint to remove_point.
10798
10799 * linux-low.h (struct linux_target_ops): Likewise.
10800 * linux-low.c (linux_insert_watchpoint): Rename to ...
10801 (linux_insert_point): ... this. Adjust.
10802 (linux_remove_watchpoint): Rename to ...
10803 (linux_remove_point): ... this. Adjust.
10804 (linux_target_ops): Adjust.
10805 * linux-crisv32-low.c (cris_insert_watchpoint): Rename to ...
10806 (cris_insert_point): ... this.
10807 (cris_remove_watchpoint): Rename to ...
10808 (cris_remove_point): ... this.
10809 (the_low_target): Adjust.
10810
0f54c268
PM
108112009-06-24 Pierre Muller <muller@ics.u-strasbg.fr>
10812
10813 * server.c (handle_v_kill): Pass signal_pid to
10814 kill_inferior if multi_process is zero.
10815
c6314022
AR
108162009-06-23 Aleksandar Ristovski <aristovski@qnx.com>
10817
10818 * server.c (process_serial_event): Add support for Z0 and Z1 packet.
10819 * target.h (target_ops): Comment for *_watchpoint to make it clear
10820 the functions can get types '0' and '1'.
10821
4463ce24
AR
108222009-06-22 Aleksandar Ristovski <aristovski@qnx.com>
10823
10824 * linux-low.c (usr_fetch_inferior_registers): Remove check for regno 0.
10825 * proc-service.c (ps_lgetregs): Pass -1 to fetch all registers.
10826 * regcache.c (get_regcache): Likewise.
10827 * spu-low.c (spu_fetch_registers): Remove 0 to -1 conversion.
10828 * win32-low.c (child_fetch_inferior_registers): Remove check for
10829 regno 0.
10830
cf8fd78b
PA
108312009-06-19 Aleksandar Ristovski <aristovski@qnx.com>
10832 Pedro Alves <pedro@codesourcery.com>
10833
10834 * target.h (struct target_ops) <supports_multi_process>: New
10835 callback.
10836 (target_supports_multi_process): New.
10837 * server.c (handle_query): Even if GDB reports support, only
10838 enable multi-process if the target also supports it. Report
10839 multi-process support only if the target backend supports it.
10840 * linux-low.c (linux_supports_multi_process): New function.
10841 (linux_target_ops): Install it as target_supports_multi_process
10842 callback.
10843
47c0c975
DE
108442009-05-24 Doug Evans <dje@google.com>
10845
e09875d4
DE
10846 Global renaming of find_thread_pid to find_thread_ptid.
10847 * server.h (find_thread_ptid): Renamed from find_thread_pid.
10848 * inferiors.c (find_thread_ptid): Renamed from find_thread_pid.
10849 All callers updated.
10850
e27d73f6
DE
10851 * linux-low.c (handle_extended_wait): Use linux_resume_one_lwp
10852 to resume the newly created thread, don't call ptrace (PTRACE_CONT)
10853 directly.
10854
47c0c975
DE
10855 * linux-low.c (get_stop_pc): Print pc if debug_threads.
10856 (check_removed_breakpoint, linux_wait_for_lwp): Ditto.
10857 (linux_resume_one_lwp): Ditto.
10858
2acc282a
DE
108592009-05-23 Doug Evans <dje@google.com>
10860
10861 * linux-low.c (linux_resume_one_lwp): Change type of first arg
10862 from struct inferior_list_entry * to struct lwp_info *.
10863 All callers updated.
10864
9f1036c1
DE
108652009-05-13 Doug Evans <dje@google.com>
10866
10867 * linux-x86-low.c: Don't include assert.h.
10868 (x86_siginfo_fixup): Use fatal, not assert.
10869 (x86_arch_setup): Fix comment.
10870
d0722149
DE
108712009-05-12 Doug Evans <dje@google.com>
10872
10873 Biarch support for i386/amd64 gdbserver.
10874 * Makefile.in (SFILES): Remove linux-i386-low.c, linux-x86-64-low.c.
10875 Add linux-x86-low.c.
10876 (linux-i386-low.o, linux-x86-64-low.o): Delete.
10877 (linux-x86-low.o): Add.
10878 * linux-x86-64-low.c: Delete.
10879 * linux-i386-low.c: Delete.
10880 * linux-x86-low.c: New file.
10881 * configure.srv (i?86-linux srv_tgtobj): Replace linux-i386-low.o with
10882 linux-x86-low.o.
10883 (x86_64-linux srv_tgtobj): Replace linux-x86-64-low.o with
10884 linux-x86-low.o.
10885 (x86_64-linux srv_regobj): Add reg-i386-linux.o.
10886 * linux-low.c: Include ansidecl.h, elf/common.h, elf/external.h.
10887 (linux_child_pid_to_exec_file): New function.
10888 (elf_64_header_p, elf_64_file_p): New functions.
10889 (siginfo_fixup): New function.
10890 (linux_xfer_siginfo): New local inf_siginfo. Call siginfo_fixup to
10891 give target a chance to convert layout.
10892 * linux-low.h (linux_target_ops): New member siginfo_fixup.
10893 (linux_child_pid_to_exec_file, elf_64_file_p): Declare.
10894
fdeb2a12
DE
108952009-05-07 Doug Evans <dje@google.com>
10896
10897 * linux-low.c (regsets_fetch_inferior_registers): Fix memory leak.
10898 (regsets_store_inferior_registers): Ditto.
10899
a6dbe5df
PA
109002009-05-06 Pedro Alves <pedro@codesourcery.com>
10901
10902 PR server/10048
10903
10904 * linux-low.c (must_set_ptrace_flags): Delete.
10905 (linux_create_inferior): Set `lwp->must_set_ptrace_flags' instead
10906 of the global.
10907 (linux_attach_lwp_1): Don't set PTRACE_SETOPTIONS here. Set
10908 `lwp->must_set_ptrace_flags' instead.
ba42693b 10909 (linux_wait_for_event_1): Set ptrace options here.
a6dbe5df
PA
10910 (linux_wait_1): ... not here.
10911
5091eb23
DE
109122009-04-30 Doug Evans <dje@google.com>
10913
9f767825
DE
10914 * inferiors.c (started_inferior_callback): New function.
10915 (attached_inferior_callback): New function.
10916 (have_started_inferiors_p, have_attached_inferiors_p): New functions.
10917 * server.c (print_started_pid, print_attached_pid): New functions.
10918 (detach_or_kill_for_exit): New function.
10919 (main): Call it instead of for_each_inferior (kill_inferior_callback).
10920 * server.h (have_started_inferiors_p): Declare.
10921 (have_attached_inferiors_p): Declare.
10922
5091eb23
DE
10923 * inferiors.c (remove_process): Fix memory leak, free process.
10924 * linux-low.c (linux_remove_process): New function.
10925 (linux_kill): Call it instead of remove_process.
10926 (linux_detach, linux_wait_1): Ditto.
10927
155c8968
PA
109282009-04-19 Danny Backx <dannybackx@users.sourceforge.net>
10929
10930 * configure.srv: Add x86 Windows CE target.
10931
7fe519cb
UW
109322009-04-03 Ulrich Weigand <uweigand@de.ibm.com>
10933
10934 * inferiors.c (get_thread_process): Make global.
10935 * server.h (get_thread_process): Add prototype.
10936 * thread-db.c (find_one_thread): Use get_thread_process
10937 instead of current_process.
10938 (thread_db_get_tls_address): Do not crash if called when
10939 thread layer is not yet initialized.
10940
5472f405
UW
109412009-04-03 Ulrich Weigand <uweigand@de.ibm.com>
10942
10943 * remote-utils.c (prepare_resume_reply): Null-terminate packet.
10944 * spu-low.c (current_tid): Rename to ...
10945 (current_ptid): ... this.
10946 (fetch_ppc_register, fetch_ppc_memory, store_ppc_memory,
10947 spu_proc_xfer_spu, spu_resume, spu_request_interrupt): Use
10948 ptid_get_lwp (current_ptid) instead of current_tid.
10949 (spu_kill, spu_detach, spu_join, spu_wait): Use pid argument
10950 instead of current_tid. Use find_process_pid to verify pid
10951 argument is valid. Pass proper argument to remove_process.
10952 (spu_thread_alive): Compare current_ptid instead of current_tid.
10953 (spu_resume): Likewise.
10954
55ac2b99
PA
109552009-04-02 Pedro Alves <pedro@codesourcery.com>
10956
10957 * linux-low.c (usr_store_inferior_registers): Declare local `pid'
10958 variable.
10959
95954743
PA
109602009-04-01 Pedro Alves <pedro@codesourcery.com>
10961
10962 Implement the multiprocess extensions, and add linux multiprocess
10963 support.
10964
10965 * server.h (ULONGEST): Declare.
10966 (struct ptid, ptid_t): New.
10967 (minus_one_ptid, null_ptid): Declare.
10968 (ptid_build, pid_to_ptid, ptid_get_pid, ptid_get_lwp)
10969 (ptid_get_tid, ptid_equal, ptid_is_pid): Declare.
10970 (struct inferior_list_entry): Change `id' type from unsigned from
10971 to ptid_t.
10972 (struct sym_cache, struct breakpoint, struct
10973 process_info_private): Forward declare.
10974 (struct process_info): Declare.
10975 (current_process): Declare.
10976 (all_processes): Declare.
10977 (initialize_inferiors): Declare.
10978 (add_thread): Adjust to use ptid_t.
10979 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id): Ditto.
10980 (add_process, remove_process, find_thread_pid): Declare.
10981 (find_inferior_id): Adjust to use ptid_t.
10982 (cont_thread, general_thread, step_thread): Change type to ptid_t.
10983 (multi_process): Declare.
10984 (push_event): Adjust to use ptid_t.
10985 (read_ptid, write_ptid): Declare.
10986 (prepare_resume_reply): Adjust to use ptid_t.
10987 (clear_symbol_cache): Declare.
10988 * inferiors.c (all_processes): New.
10989 (null_ptid, minus_one_ptid): New.
10990 (ptid_build, pid_to_ptid, ptid_get_pid, ptid_get_lwp)
10991 (ptid_get_tid, ptid_equal, ptid_is_pid): New.
10992 (add_thread): Change unsigned long to ptid. Remove gdb_id
10993 parameter. Adjust.
10994 (thread_id_to_gdb_id, thread_to_gdb_id): Change unsigned long to ptid.
10995 (gdb_id_to_thread): Rename to ...
10996 (find_thread_pid): ... this. Change unsigned long to ptid.
10997 (gdb_id_to_thread_id, find_inferior_id): Change unsigned long to ptid.
10998 (loaded_dll, pull_pid_from_list): Adjust.
10999 (add_process, remove_process, find_process_pid)
11000 (get_thread_process, current_process, initialize_inferiors): New.
11001 * target.h (struct thread_resume) <thread>: Change type to ptid_t.
11002 (struct target_waitstatus) <related_pid>: Ditto.
11003 (struct target_ops) <kill, detach>: Add `pid' argument. Change
11004 return type to int.
11005 (struct target_ops) <join>: Add `pid' argument.
11006 (struct target_ops) <thread_alive>: Change pid's type to ptid_t.
11007 (struct target_ops) <wait>: Add `ptid' field. Change return type
11008 to ptid.
11009 (kill_inferior, detach_inferior, join_inferior): Add `pid' argument.
11010 (mywait): Add `ptid' argument. Change return type to ptid_t.
11011 (target_pid_to_str): Declare.
11012 * target.c (set_desired_inferior): Adjust to use ptids.
11013 (mywait): Add new `ptid' argument. Adjust.
11014 (target_pid_to_str): New.
11015 * mem-break.h (free_all_breakpoints): Declare.
11016 * mem-break.c (breakpoints): Delelete.
11017 (set_breakpoint_at, delete_breakpoint, find_breakpoint_at)
11018 (check_mem_read, check_mem_write, delete_all_breakpoints): Adjust
11019 to use per-process breakpoint list.
11020 (free_all_breakpoints): New.
11021 * remote-utils.c (struct sym_cache) <name>: Drop `const'.
11022 (symbol_cache, all_symbols_looked_up): Delete.
11023 (hexchars): New.
11024 (ishex, unpack_varlen_hex, write_ptid, hex_or_minus_one,
11025 read_ptid): New.
11026 (prepare_resume_reply): Change ptid argument's type from unsigned
11027 long to ptid_t. Adjust. Implement W;process and X;process.
11028 (free_sym_cache, clear_symbol_cache): New.
11029 (look_up_one_symbol): Adjust to per-process symbol cache. *
11030 * server.c (cont_thread, general_thread, step_thread): Change type
11031 to ptid_t.
11032 (attached): Delete.
11033 (multi_process): New.
11034 (last_ptid): Change type to ptid_t.
11035 (struct vstop_notif) <ptid>: Change type to ptid_t.
11036 (queue_stop_reply, push_event): Change `ptid' argument's type to
11037 ptid_t.
11038 (discard_queued_stop_replies): Add `pid' argument.
11039 (start_inferior): Adjust to use ptids. Adjust to mywait interface
11040 changes. Don't reference the `attached' global.
11041 (attach_inferior): Adjust to mywait interface changes.
11042 (handle_query): Adjust to use ptids. Parse GDB's qSupported
11043 features. Handle and report "multiprocess+". Handle
11044 "qAttached:PID".
11045 (handle_v_cont): Adjust to use ptids. Adjust to mywait interface
11046 changes.
11047 (handle_v_kill): New.
11048 (handle_v_stopped): Adjust to use target_pid_to_str.
11049 (handle_v_requests): Allow multiple attaches and runs when
11050 multiprocess extensions are in effect. Handle "vKill".
11051 (myresume): Adjust to use ptids.
11052 (queue_stop_reply_callback): Add `arg' parameter. Handle it.
11053 (handle_status): Adjust to discard_queued_stop_replies interface
11054 change.
11055 (first_thread_of, kill_inferior_callback)
11056 (detach_or_kill_inferior_callback, join_inferiors_callback): New.
11057 (main): Call initialize_inferiors. Adjust to use ptids, killing
11058 and detaching from all inferiors. Handle multiprocess packet
11059 variants.
11060 * linux-low.h: Include gdb_proc_service.h.
11061 (struct process_info_private): New.
11062 (struct linux_target_ops) <pid_of>: Use ptid_get_pid.
11063 <lwpid_of>: Use ptid_get_lwp.
11064 (get_lwp_thread): Adjust.
11065 (struct lwp_info): Add `dead' member.
11066 (find_lwp_pid): Declare.
11067 * linux-low.c (thread_db_active): Delete.
11068 (new_inferior): Adjust comment.
11069 (inferior_pid): Delete.
11070 (linux_add_process): New.
11071 (handle_extended_wait): Adjust.
11072 (add_lwp): Change unsigned long to ptid.
11073 (linux_create_inferior): Add process to processes table. Adjust
11074 to use ptids. Don't set new_inferior here.
11075 (linux_attach_lwp): Rename to ...
11076 (linux_attach_lwp_1): ... this. Add `initial' argument. Handle
11077 it. Adjust to use ptids.
11078 (linux_attach_lwp): New.
11079 (linux_attach): Add process to processes table. Don't set
11080 new_inferior here.
11081 (struct counter): New.
11082 (second_thread_of_pid_p, last_thread_of_process_p): New.
11083 (linux_kill_one_lwp): Add `args' parameter. Handle it. Adjust to
11084 multiple processes.
11085 (linux_kill): Add `pid' argument. Handle it. Adjust to multiple
11086 processes. Remove process from process table.
11087 (linux_detach_one_lwp): Add `args' parameter. Handle it. Adjust
11088 to multiple processes.
11089 (any_thread_of): New.
11090 (linux_detach): Add `pid' argument, and handle it. Remove process
11091 from processes table.
11092 (linux_join): Add `pid' argument. Handle it.
11093 (linux_thread_alive): Change unsighed long argument to ptid_t.
11094 Consider dead lwps as not being alive.
11095 (status_pending_p): Rename `dummy' argument to `arg'. Filter out
11096 threads we're not interested in.
11097 (same_lwp, find_lwp_pid): New.
11098 (linux_wait_for_lwp): Change `pid' argument's type from int to
11099 ptid_t. Adjust.
11100 (linux_wait_for_event): Rename to ...
11101 (linux_wait_for_event_1): ... this. Change `pid' argument's type
11102 from int to ptid_t. Adjust.
11103 (linux_wait_for_event): New.
11104 (linux_wait_1): Add `ptid' argument. Change return type to
11105 ptid_t. Adjust. Use last_thread_of_process_p. Remove processes
11106 that exit from the process table.
11107 (linux_wait): Add `ptid' argument. Change return type to ptid_t.
11108 Adjust.
11109 (mark_lwp_dead): New.
11110 (wait_for_sigstop): Adjust to use ptids. If a process exits while
11111 stopping all threads, mark its main lwp as dead.
11112 (linux_set_resume_request, linux_resume_one_thread): Adjust to use
11113 ptids.
11114 (fetch_register, usr_store_inferior_registers)
11115 (regsets_fetch_inferior_registers)
11116 (regsets_store_inferior_registers, linux_read_memory)
11117 (linux_write_memory): Inline `inferior_pid'.
11118 (linux_look_up_symbols): Adjust to use per-process
11119 `thread_db_active'.
11120 (linux_request_interrupt): Adjust to use ptids.
11121 (linux_read_auxv): Inline `inferior_pid'.
11122 (initialize_low): Don't reference thread_db_active.
11123 * gdb_proc_service.h (struct ps_prochandle) <pid>: Remove.
11124 * proc-service.c (ps_lgetregs): Use find_lwp_pid.
11125 (ps_getpid): Return the pid of the current inferior.
11126 * thread-db.c (proc_handle, thread_agent): Delete.
11127 (thread_db_create_event, thread_db_enable_reporting): Adjust to
11128 per-process data.
11129 (find_one_thread): Change argument type to ptid_t. Adjust to
11130 per-process data.
11131 (maybe_attach_thread): Adjust to per-process data and ptids.
11132 (thread_db_find_new_threads): Ditto.
11133 (thread_db_init): Ditto.
11134 * spu-low.c (spu_create_inferior, spu_attach): Add process to
11135 processes table. Adjust to use ptids.
11136 (spu_kill, spu_detach): Adjust interface. Remove process from
11137 processes table.
11138 (spu_join, spu_thread_alive): Adjust interface.
11139 (spu_wait): Adjust interface. Remove process from processes
11140 table. Adjust to use ptids.
11141 * win32-low.c (current_inferior_tid): Delete.
11142 (current_inferior_ptid): New.
11143 (debug_event_ptid): New.
11144 (thread_rec): Take a ptid. Adjust.
11145 (child_add_thread): Add `pid' argument. Adjust to use ptids.
11146 (child_delete_thread): Ditto.
11147 (do_initial_child_stuff): Add `attached' argument. Add process to
11148 processes table.
11149 (child_fetch_inferior_registers, child_store_inferior_registers):
11150 Adjust.
11151 (win32_create_inferior): Pass 0 to do_initial_child_stuff.
11152 (win32_attach): Pass 1 to do_initial_child_stuff.
11153 (win32_kill): Adjust interface. Remove process from processes
11154 table.
11155 (win32_detach): Ditto.
11156 (win32_join): Adjust interface.
11157 (win32_thread_alive): Take a ptid.
11158 (win32_resume): Adjust to use ptids.
11159 (get_child_debug_event): Ditto.
11160 (win32_wait): Adjust interface. Remove exiting process from
11161 processes table.
11162
bd99dc85
PA
111632009-04-01 Pedro Alves <pedro@codesourcery.com>
11164
11165 Non-stop mode support.
11166
11167 * server.h (non_stop): Declare.
11168 (gdb_client_data, handler_func): Declare.
11169 (delete_file_handler, add_file_handler, start_event_loop):
11170 Declare.
11171 (handle_serial_event, handle_target_event, push_event)
11172 (putpkt_notif): Declare.
11173 * target.h (enum resume_kind): New.
11174 (struct thread_resume): Replace `step' field by `kind' field.
11175 (TARGET_WNOHANG): Define.
11176 (struct target_ops) <wait>: Add `options' argument.
11177 <supports_non_stop, async, start_non_stop>: New fields.
11178 (target_supports_non_stop, target_async): New.
11179 (start_non_stop): Declare.
11180 (mywait): Add `options' argument.
11181 * target.c (mywait): Add `options' argument. Print child exit
11182 notifications here.
11183 (start_non_stop): New.
11184 * server.c (non_stop, own_buf, mem_buf): New globals.
11185 (struct vstop_notif): New.
11186 (notif_queue): New global.
11187 (queue_stop_reply, push_event, discard_queued_stop_replies)
11188 (send_next_stop_reply): New.
11189 (start_inferior): Adjust to use resume_kind. Adjust to mywait
11190 interface changes.
11191 (attach_inferior): In non-stop mode, don't wait for the target
11192 here.
11193 (handle_general_set): Handle QNonStop.
11194 (handle_query): When handling qC, return the current general
11195 thread, instead of the first thread of the list.
11196 (handle_query): If the backend supports non-stop mode, include
11197 QNonStop+ in the qSupported query response.
11198 (handle_v_cont): Adjust to use resume_kind. Handle resume_stop
11199 and non-stop mode.
11200 (handle_v_attach, handle_v_run): Handle non-stop mode.
11201 (handle_v_stopped): New.
11202 (handle_v_requests): Report support for vCont;t. Handle vStopped.
11203 (myresume): Adjust to use resume_kind. Handle non-stop.
11204 (queue_stop_reply_callback): New.
11205 (handle_status): Handle non-stop mode.
11206 (main): Clear non_stop flag on reconnection. Use the event-loop.
11207 Refactor serial protocol handling from here ...
11208 (process_serial_event): ... to this new function. When GDB
11209 selects any thread, select one here. In non-stop mode, wait until
11210 GDB acks all pending events before exiting.
11211 (handle_serial_event, handle_target_event): New.
11212 * remote-utils.c (remote_open): Install remote_desc in the event
11213 loop.
11214 (remote_close): Remove remote_desc from the event loop.
11215 (putpkt_binary): Rename to...
11216 (putpkt_binary_1): ... this. Add `is_notic' argument. Handle it.
11217 (putpkt_binary): New as wrapper around putpkt_binary_1.
11218 (putpkt_notif): New.
11219 (prepare_resume_reply): In non-stop mode, don't change the
11220 general_thread.
11221 * event-loop.c: New.
11222 * Makefile.in (OBJ): Add event-loop.o.
11223 (event-loop.o): New rule.
11224
11225 * linux-low.h (pid_of): Moved here.
11226 (lwpid_of): New.
11227 (get_lwp_thread): Use lwpid_of.
11228 (struct lwp_info): Delete `lwpid' field. Add `suspended' field.
11229 * linux-low.c (pid_of): Delete.
11230 (inferior_pid): Use lwpid_of.
11231 (linux_event_pipe): New.
11232 (target_is_async_p): New.
11233 (delete_lwp): New.
11234 (handle_extended_wait): Use lwpid_of.
11235 (add_lwp): Don't set lwpid field.
11236 (linux_attach_lwp): Adjust debug output. Use lwpid_of.
11237 (linux_kill_one_lwp): If killing a running lwp, stop it first.
11238 Use lwpid_of. Adjust to linux_wait_for_event interface changes.
11239 (linux_detach_one_lwp): If detaching from a running lwp, stop it
11240 first. Adjust to linux_wait_for_event interface changes. Use
11241 lwpid_of.
11242 (linux_detach): Don't delete the main lwp here.
11243 (linux_join): Use my_waitpid. Avoid signal_pid. Use lwpid_of.
11244 (status_pending_p): Don't consider explicitly suspended lwps.
11245 (linux_wait_for_lwp): Take an integer pid instead of a lwp_info
11246 pointer. Add OPTIONS argument. Change return type to int. Use
11247 my_waitpid instead of sleeping. Handle WNOHANG. Use lwpid_of.
11248 (linux_wait_for_event): Take an integer pid instead of a lwp_info
11249 pointer. Add status pointer argument. Return a pid instead of a
11250 status. Use lwpid_of. Adjust to linux_wait_for_lwp interface
11251 changes. In non-stop mode, don't switch to a random thread.
11252 (linux_wait): Rename to...
11253 (linux_wait_1): ... this. Add target_options argument, and handle
11254 it. Adjust to use resume_kind. Use lwpid_of. In non-stop mode,
11255 don't handle the continue thread. Handle TARGET_WNOHANG. Merge
11256 clean exit and signal exit code. Don't stop all threads in
11257 non-stop mode. In all-stop mode, only stop all threads when
11258 reporting a stop to GDB. Handle explicit thread stop requests.
11259 (async_file_flush, async_file_mark): New.
11260 (linux_wait): New.
11261 (send_sigstop): Use lwpid_of.
11262 (wait_for_sigstop): Use lwpid_of. Adjust to linux_wait_for_event
11263 interface changes. In non-stop mode, don't switch to a random
11264 thread.
11265 (linux_resume_one_lwp): Use lwpid_of.
11266 (linux_continue_one_thread, linux_queue_one_thread): Merge into ...
11267 (linux_resume_one_thread): ... this. Handle resume_stop. In
11268 non-stop mode, don't look for pending flag in all threads.
11269 (resume_status_pending_p): Don't consider explicitly suspended
11270 threads.
11271 (my_waitpid): Reimplement. Emulate __WALL.
11272 (linux_request_interrupt, linux_read_offsets, linux_xfer_siginfo):
11273 Use lwpid_of.
11274 (sigchld_handler, linux_supports_non_stop, linux_async)
11275 (linux_start_non_stop): New.
11276 (linux_target_ops): Register linux_supports_non_stop, linux_async
11277 and linux_start_non_stop.
11278 (initialize_low): Install SIGCHLD handler.
11279 * thread-db.c (thread_db_create_event, find_one_thread)
11280 (thread_db_get_tls_address): Use lwpid_of.
11281 * win32-low.c (win32_detach): Adjust to use resume_kind.
11282 (win32_wait): Add `options' argument.
11283 * spu-low.c (spu_resume): Adjust to use resume_kind.
11284 (spu_wait): Add `options' argument.
11285
5b1c542e
PA
112862009-04-01 Pedro Alves <pedro@codesourcery.com>
11287
11288 Decouple target code from remote protocol.
11289
11290 * target.h (enum target_waitkind): New.
11291 (struct target_waitstatus): New.
11292 (struct target_ops) <wait>: Return an unsigned long. Take a
11293 target_waitstatus pointer instead of a char pointer.
11294 (mywait): Likewise.
11295 * target.c (mywait): Change prototype to return an unsigned long.
11296 Take a target_waitstatus pointer instead of a char pointer. Adjust.
11297 * server.h (thread_from_wait, old_thread_from_wait): Delete
11298 declarations.
11299 (prepare_resume_reply): Change prototype to take a
11300 target_waitstatus.
11301 * server.c (thread_from_wait, old_thread_from_wait): Delete.
11302 (last_status, last_ptid): New.
11303 (start_inferior): Remove "statusptr" argument. Adjust. Return a
11304 pid instead of a signal.
11305 (attach_inferior): Remove "status" and "signal" parameters.
11306 Adjust.
11307 (handle_query): For qGetTLSAddr, parse the thread id with strtol,
11308 not as an address.
11309 (handle_v_cont, handle_v_attach, handle_v_run, handle_v_kill)
11310 (handle_v_requests, myresume): Remove "status" and "signal"
11311 parameters. Adjust.
11312 (handle_status): New.
11313 (main): Delete local `status'. Adjust.
11314 * remote-utils.c: Include target.h.
11315 (prepare_resume_reply): Change prototype to take a
11316 target_waitstatus. Adjust.
11317
11318 * linux-low.c (linux_wait): Adjust to new target_ops->wait
11319 interface.
11320 * spu-low.c (spu_wait): Adjust.
11321 * win32-low.c (enum target_waitkind, struct target_waitstatus):
11322 Delete.
11323 (win32_wait): Adjust.
11324
2bd7c093
PA
113252009-04-01 Pedro Alves <pedro@codesourcery.com>
11326
11327 * target.h (struct thread_resume): Delete leave_stopped member.
11328 (struct target_ops): Add a `n' argument to the `resume' callback.
11329 * server.c (start_inferior): Adjust.
11330 (handle_v_cont, myresume): Adjust.
11331 * linux-low.c (check_removed_breakpoint): Adjust to resume
11332 interface change, and to removed leave_stopped field.
11333 (resume_ptr): Delete.
11334 (struct thread_resume_array): New.
11335 (linux_set_resume_request): Add new `arg' parameter. Adjust to
11336 resume interface change.
11337 (linux_continue_one_thread, linux_queue_one_thread)
11338 (resume_status_pending_p): Check if the resume field is NULL
11339 instead of checking the leave_stopped member.
11340 (linux_resume): Adjust to the target resume interface change.
11341 * spu-low.c (spu_resume): Adjust to the target resume interface
11342 change.
11343 * win32-low.c (win32_detach, win32_resume): Ditto.
11344
c35fafde
PA
113452009-04-01 Pedro Alves <pedro@codesourcery.com>
11346
11347 * linux-low.c (linux_wait_for_event): Don't clear the `stepping'
11348 flag.
11349 (wait_for_sigstop): Don't leave a finished single-step SIGTRAP
11350 pending.
11351 (linux_continue_one_thread): Only preserve the stepping flag if
11352 there's a pending breakpoint.
11353
0a59d50b
PA
113542009-03-31 Pedro Alves <pedro@codesourcery.com>
11355
11356 * server.c (main): After the inferior having exited, call
11357 remote_close before exiting gdbserver.
11358
f04c6d38
TJB
113592009-03-25 Thiago Jung Bauermann <bauerman@br.ibm.com>
11360
11361 Fix size of FPSCR in Power 7 processors.
11362 * linux-ppc-low.c (PPC_FEATURE_ARCH_2_05): Remove #define.
11363 (PPC_FEATURE_HAS_DFP): New #define.
11364 (ppc_arch_setup): Check for DFP feature instead of ISA 2.05 to decide on
11365 size of the FPSCR.
11366
78e5cee6
PA
113672009-03-23 Pedro Alves <pedro@codesourcery.com>
11368
11369 * server.c (handle_query) Whitespace and formatting.
11370
1b3f6016
PA
113712009-03-22 Pedro Alves <pedro@codesourcery.com>
11372
11373 * i387-fp.c, linux-arm-low.c, linux-cris-low.c,
11374 linux-crisv32-low.c, linux-i386-low.c, linux-low.c,
11375 linux-mips-low.c, linux-s390-low.c, linux-sparc-low.c,
11376 linux-x86-64-low.c, linux-xtensa-low.c, proc-service.c,
11377 regcache.c, remote-utils.c, server.c, spu-low.c, target.h,
11378 thread-db.c, win32-low.c, xtensa-xtregs.c, gdbreplay.c,
11379 Makefile.in, configure.ac: Fix whitespace throughout.
11380 * configure: Regenerate.
11381
a07b2135
PA
113822009-03-22 Pedro Alves <pedro@codesourcery.com>
11383
11384 * inferiors.c (find_inferior): Make it safe for the callback
11385 function to delete the currently iterated inferior.
11386
67cc2626
PA
113872009-03-22 Pedro Alves <pedro@codesourcery.com>
11388
11389 * Makefile.in (linuw_low_h): Move higher.
11390 (thread-db.o): Depend on $(linux_low_h).
11391
54a0b537
PA
113922009-03-17 Pedro Alves <pedro@codesourcery.com>
11393
11394 Rename "process" to "lwp" throughout.
11395
11396 * linux-low.c (all_processes): Rename to...
11397 (all_lwps): ... this.
11398 (inferior_pid, handle_extended_wait, get_stop_pc): Adjust.
11399 (add_process): Rename to ...
11400 (add_lwp): ... this. Adjust.
11401 (linux_create_inferior): Adjust.
11402 (linux_attach_lwp): Adjust.
11403 (linux_attach): Adjust.
11404 (linux_kill_one_process): Rename to ...
11405 (linux_kill_one_lwp): ... this. Adjust.
11406 (linux_kill): Adjust.
11407 (linux_detach_one_process): Rename to ...
11408 (linux_detach_one_lwp): ... this. Adjust.
11409 (linux_detach): Adjust.
11410 (check_removed_breakpoint): Adjust.
11411 (status_pending_p): Adjust.
11412 (linux_wait_for_process): Rename to ...
11413 (linux_wait_for_lwp): ... this. Adjust.
11414 (linux_wait_for_event): Adjust.
11415 (send_sigstop): Adjust.
11416 (wait_for_sigstop): Adjust.
11417 (stop_all_processes): Rename to ...
11418 (stop_all_lwps): ... this.
11419 (linux_resume_one_process): Rename to ...
11420 (linux_resume_one_lwp): ... this. Adjust.
11421 (linux_set_resume_request, linux_continue_one_thread)
11422 (linux_queue_one_thread, resume_status_pending_p)
11423 (usr_store_inferior_registers, regsets_store_inferior_registers)
11424 (linux_request_interrupt, linux_read_offsets, linux_xfer_siginfo):
11425 Adjust.
11426 * linux-low.h (get_process): Rename to ...
11427 (get_lwp): ... this. Adjust.
11428 (get_thread_process): Rename to ...
11429 (get_thread_lwp): ... this. Adjust.
11430 (get_process_thread): Rename to ...
11431 (get_lwp_thread): ... this. Adjust.
11432 (struct process_info): Rename to ...
11433 (struct lwp_info): ... this.
11434 (all_processes): Rename to ...
11435 (all_lwps): ... this.
11436 * proc-service.c (ps_lgetregs): Adjust.
11437 * thread-db.c (thread_db_create_event, find_one_thread)
11438 (maybe_attach_thread, thread_db_get_tls_address): Adjust.
11439
0b16c5cf
PA
114402009-03-14 Pedro Alves <pedro@codesourcery.com>
11441
11442 * server.c (handle_query): Handle "qAttached".
11443
32de4b9d
NS
114442009-03-13 Nathan Sidwell <nathan@codesourcery.com>
11445
11446 * Makefile.in, hostio-errno.c, errno.c, xtensa-xtregs.c: Change to
11447 GPLv3, update license URL.
11448
2aecd87f
DE
114492009-03-01 Doug Evans <dje@google.com>
11450
93efd302 11451 * Makefile.in (INCLUDE_CFLAGS): Add -I$(srcdir)/../common.
2aecd87f
DE
11452 (server_h): Add gdb_signals.h.
11453 (signals.o): Update.
11454 * server.h (target_signal_from_host,target_signal_to_host_p)
11455 (target_signal_to_host,target_signal_to_name): Moved to gdb_signals.h.
11456
86b1f9c5
PM
114572009-02-14 Pierre Muller <muller@ics.u-strasbg.fr>
11458
11459 * remote-utils.c (getpkt): Also generate remote-debug
11460 information if noack_mode is set.
11461
4aa995e1
PA
114622009-02-06 Pedro Alves <pedro@codesourcery.com>
11463
11464 * server.c (handle_query): Report qXfer:siginfo:read and
11465 qXfer:siginfo:write as supported and handle them.
11466 * target.h (struct target_ops) <qxfer_siginfo>: New field.
11467 * linux-low.c (linux_xfer_siginfo): New.
11468 (linux_target_ops): Set it.
11469
62709adf
PA
114702009-01-26 Pedro Alves <pedro@codesourcery.com>
11471
11472 * server.c (gdbserver_usage): Mention --remote-debug.
11473 (main): Accept '--remote-debug' switch.
11474
aef93bd7
DE
114752009-01-18 Doug Evans <dje@google.com>
11476
11477 * regcache.c (new_register_cache): No need to check result of xcalloc.
11478 * server.c (handle_search_memory): Back out calls to xmalloc,
11479 result is checked and error is returned to user upon failure.
11480 (handle_query): Ditto. Add more checks for result of malloc.
11481 (handle_v_cont): Check result of malloc, report error back to
11482 user upon failure.
11483 (handle_v_run): Ditto. Call freeargv.
11484 * server.h (freeargv): Declare.
11485 * utils.c (freeargv): New fn.
11486
54363045
DE
114872009-01-15 Doug Evans <dje@google.com>
11488
f626972c
DE
11489 * gdbreplay.c (perror_with_name): Make arg const char *.
11490 * server.h (target_signal_to_name): Make return type const char *.
0842e787 11491 * thread-db.c (thread_db_err_str): Make return type const char *.
f626972c 11492 * utils.c (perror_with_name): Make arg const char *.
54363045 11493
18aae699
PA
114942009-01-14 Pedro Alves <pedro@codesourcery.com>
11495
11496 * win32-low.c (get_child_debug_event): Issue a final DBG_CONTINUE
11497 when handling a EXIT_PROCESS_DEBUG_EVENT.
11498
ff703abe
JB
114992009-01-06 Joel Brobecker <brobecker@adacore.com>
11500
11501 * gdbreplay.c (gdbreplay_version): Update copyright year.
11502 * server.c (gdbserver_version): Likewise.
11503
f21cc1a2 115042009-01-05 Doug Evans <dje@google.com>
0e21c1ec
DE
11505
11506 * linux-low.c (linux_attach_lwp): Add some comments/fixmes.
f21cc1a2 11507 (handle_extended_wait): Improve comment.
0e21c1ec 11508
bca929d3
DE
115092008-12-13 Doug Evans <dje@google.com>
11510
11511 * utils.c (xmalloc,xcalloc,xstrdup): New fns.
11512 * server.h (ATTR_MALLOC): New macro.
11513 (xmalloc,xcalloc,xstrdup): Declare.
11514 * hostio.c: Replace malloc,calloc,strdup with xmalloc,xcalloc,xstrdup.
11515 * inferiors.c: Ditto.
11516 * linux-low.c: Ditto.
11517 * mem-break.c: Ditto.
11518 * regcache.c: Ditto.
11519 * remote-utils.c: Ditto.
11520 * server.c: Ditto.
11521 * target.c: Ditto.
11522 * win32-low.c: Ditto.
11523
97438e3f
DE
115242008-12-12 Doug Evans <dje@google.com>
11525
896c7fbb
DE
11526 * linux-low.c (linux_wait_for_process): Don't clobber current_inferior
11527 in debugging printf.
11528
97438e3f
DE
11529 * linux-low.c (handle_extended_wait): Simplify, use my_waitpid.
11530
e3b886f8
DE
115312008-12-09 Doug Evans <dje@google.com>
11532
11533 * linux-low.h (struct process_info): Delete member tid, unused.
11534 * thread-db.c (find_one_thread): Update.
11535 (maybe_attach_thread): Update.
11536
07e059b5
VP
115372008-12-02 Pedro Alves <pedro@codesourcery.com>
11538
889bf7c5
PA
11539 * target.h (struct target_ops): Add qxfer_osdata member.
11540 * linux-low.c: Include ctype.h and pwd.h and sys/types.h
11541 and dirent.h.
11542 (linux_qxfer_osdata): New functions.
11543 (linux_target_ops): Register linux_qxfer_osdata as qxfer_osdata
11544 callback.
11545 * server.c (handle_query): Handle "qXfer:osdata:read:".
11546 * remote-utils.c (buffer_grow, buffer_free, buffer_init, buffer_finish)
11547 (buffer_xml_printf): New functions.
11548 * server.h (struct buffer): New.
11549 (buffer_grow_str, buffer_grow_str0): New macros.
11550 (buffer_grow, buffer_free, buffer_init, buffer_finish)
11551 (buffer_xml_printf): Declare.
07e059b5 11552
4cab47ab
DE
115532008-11-24 Doug Evans <dje@google.com>
11554
11555 * Makefile.in (VERSION,DIST,LINT,LINTFLAGS): Delete, unused.
11556
f142445f
DJ
115572008-11-24 Daniel Jacobowitz <dan@codesourcery.com>
11558
11559 * server.c (handle_v_run): Always use the supplied argument list.
11560
d0107bb6 115612008-11-19 Bob Wilson <bob.wilson@acm.org>
889bf7c5 11562
d0107bb6
BW
11563 * xtensa-xtregs.c (XTENSA_ELF_XTREG_SIZE): Change to 4.
11564 (xtensa_regmap_table): Add entry for scompare1.
889bf7c5 11565
2c4ad781
TJB
115662008-11-18 Thiago Jung Bauermann <bauerman@br.ibm.com>
11567
11568 * Makefile.in (powerpc-isa205-32l.o, powerpc-isa205-32l.c,
11569 powerpc-isa205-altivec32l.o, powerpc-isa205-altivec32l.c,
11570 powerpc-isa205-vsx32l.o, powerpc-isa205-vsx32l.c,
11571 powerpc-isa205-64l.o, powerpc-isa205-64l.c,
11572 powerpc-isa205-altivec64l.o, powerpc-isa205-altivec64l.c,
11573 powerpc-isa205-vsx64l.o, powerpc-isa205-vsx64l.c): New targets.
11574 * configure.srv (powerpc*-*-linux*): Add ISA 2.05 object files and
11575 XML target descriptions.
11576 * linux-ppc-low.c (ppc_arch_setup): Init registers with 64-bit FPSCR
11577 when inferior is running on an ISA 2.05 or later processor. Add
11578 special case to return offset for full 64-bit slot of FPSCR when
11579 in 32-bits.
11580
dfb64f85
DJ
115812008-11-14 Daniel Gutson <dgutson@codesourcery.com>
11582
11583 * Makefile.in (SFILES, clean): Added sparc64 files.
11584 (reg-sparc64.o, reg-sparc64.c): New.
11585 * configure.srv (sparc*-*-linux*): New configuration.
11586 * linux-low.c (regsets_fetch_inferior_registers): Swap ptrace
11587 syscall arguments for SPARC.
11588 (regsets_store_inferior_registers): Likewise.
11589 * linux-sparc-low.c: New file.
11590
66b6e1dd
DE
115912008-10-21 Doug Evans <dje@google.com>
11592
11593 * Makefile.in (BFD_DIR,BFD,BFD_SRC,BFD_CFLAGS): Delete.
11594 (READLINE_DIR,READLINE_DEP): Delete.
11595 (INTERNAL_CFLAGS): Update.
11596 (LINTFLAGS): Update.
11597
9b710a42
PA
115982008-10-10 Pedro Alves <pedro@codesourcery.com>
11599
11600 * server.c (handle_v_run): If GDB didn't specify an argv, use the
11601 whole argv from the last run, not just argv[0].
11602
5822d809
PA
116032008-09-08 Pedro Alves <pedro@codesourcery.com>
11604
11605 * regcache.c (new_register_cache): Return NULL if the register
11606 cache size isn't known yet.
11607 (free_register_cache): Avoid dereferencing a NULL regcache.
11608
74aac56f
DJ
116092008-09-04 Daniel Jacobowitz <dan@codesourcery.com>
11610
11611 * configure.srv: Merge MIPS and MIPS64.
11612
400b20f5
MR
116132008-08-24 Maciej W. Rozycki <macro@linux-mips.org>
11614
11615 * Makefile.in (uninstall): Apply $(EXEEXT) too.
11616
677c5bb1
LM
116172008-08-18 Luis Machado <luisgpm@br.ibm.com>
11618
11619 * Makefile.in: Add required vsx dependencies.
11620
11621 * linux-ppc-low: Define PPC_FEATURE_HAS_VSX.
11622 Declare init_registers_powerpc_vsx32l.
11623 Declare init_registers_powerpc_vsx64l.
11624 Define PTRACE_GETVSXREGS and PTRACE_SETVSXREGS.
11625 (ppc_arch_setup): Check for VSX in hwcap.
11626 (ppc_fill_vsxregset): New function.
11627 (ppc_store_vsxregset): New function.
11628 Add new VSX entry in regset_info target_regsets.
11629
11630 * configure.srv: Add new VSX dependencies.
11631
a6f3e723
SL
116322008-08-12 Pedro Alves <pedro@codesourcery.com>
11633
11634 * remote-utils.c (noack_mode, transport_is_reliable): New globals.
11635 (remote_open): Set or clear transport_is_reliable.
11636 (putpkt_binary): Don't expect acks in noack mode.
11637 (getpkt): Don't send ack/nac in noack mode.
11638 * server.c (handle_general_set): Handle QStartNoAckMode.
11639 (handle_query): If connected by tcp pass QStartNoAckMode+ in
11640 qSupported.
11641 (main): Reset noack_mode on every connection.
11642 * server.h (noack_mode): Declare.
11643
a417dc56
RW
116442008-08-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11645
11646 * Makefile.in (GDBREPLAY_OBS): New variable.
11647 (gdbreplay$(EXEEXT)): Use it to avoid unportable $^.
11648
3221518c
UW
116492008-08-05 Ulrich Weigand <uweigand@de.ibm.com>
11650 Daniel Jacobowitz <dan@codesourcery.com>
11651
11652 * linux-low.c (linux_resume_one_process): Ignore ESRCH.
11653 (usr_store_inferior_registers): Likewise.
11654 (regsets_store_inferior_registers): Likewise.
11655
ec56be1b
PA
116562008-07-31 Rolf Jansen <rj@surtec.com>
11657 Pedro Alves <pedro@codesourcery.com>
11658
11659 * configure.ac: Check for memmem declaration.
11660 * server.c [HAVE_MALLOC_H]: Include malloc.h.
11661 (disable_packet_vCont, disable_packet_Tthread, disable_packet_qC)
11662 (disable_packet_qfThreadInfo): Unconditionally compile.
11663 * server.h [!HAVE_DECL_MEMMEM]: Declare memmem.
11664 * configure, config.in: Regenerate.
11665
2fe5e3ff
DE
116662008-07-28 Doug Kwan <dougkwan@google.com>
11667
11668 * linux-low.c (sys/dir.h, sys/user.h): Remove includes.
11669 (linux_write_memory): Remove declaration of errno.
11670
836acd6d
UW
116712008-07-12 Ulrich Weigand <uweigand@de.ibm.com>
11672
11673 * linux-low.c (handle_extended_wait): Do not use "status"
11674 variable uninitialized.
11675
aeba519e
PA
116762008-07-07 Pedro Alves <pedro@codesourcery.com>
11677
11678 * server.c (handle_v_attach): Inhibit reporting dll changes.
11679
db42f210
PA
116802008-06-27 Pedro Alves <pedro@codesourcery.com>
11681
11682 * remote-utils.c (prepare_resume_reply): If requested, don't
11683 output "thread:TID" in the T stop reply.
11684
11685 * server.c (disable_packet_vCont, disable_packet_Tthread)
11686 (disable_packet_qC, disable_packet_qfThreadInfo): New globals.
11687 (handle_query): If requested, disable support for qC, qfThreadInfo
11688 and qsThreadInfo.
11689 (handle_v_requests): If requested, disable support for vCont.
11690 (gdbserver_show_disableable): New.
11691 (main): Handle --disable-packet and --disable-packet=LIST.
11692
11693 * server.h (disable_packet_vCont, disable_packet_Tthread)
11694 (disable_packet_qC, disable_packet_qfThreadInfo): Declare.
11695
8e4c5421
CD
116962008-06-20 Carlos O'Donell <carlos@codesourcery.com>
11697
11698 * server.c (gdbserver_usage): Mention --version.
11699
6e23a804
DJ
117002008-06-06 Daniel Jacobowitz <dan@codesourcery.com>
11701
11702 * Makefile.in (gdbreplay.o): New rule.
11703
90aa6a40
JM
117042008-06-06 Joseph Myers <joseph@codesourcery.com>
11705
11706 * gdbreplay.c (gdbreplay_version): Say gdbreplay in version
11707 message, not gdbserver.
11708
c16158bc 117092008-06-05 Vladimir Prus <vladimir@codesourcery.com>
889bf7c5
PA
11710 Nathan Sidwell <nathan@codesourcery.com>
11711 Joseph Myers <joseph@codesourcery.com>
c16158bc
JM
11712
11713 * acinclude.m4: Include ../../config/acx.m4.
11714 * configure.ac: Use ACX_PKGVERSION and ACX_BUGURL.
11715 * configure, config.in: Regenerate.
11716 * Makefile.in (gdbreplay$(EXEEXT)): Add version.o.
11717 * server.c (gdbserver_version): Print PKGVERSION.
11718 (gdbsrever_usage): Add stream parameter. Print REPORT_BUGS_TO.
11719 (main): Adjust gdbserver_usage calls.
11720 * gdbreplay.c (version, host_name): Add declarations.
11721 (gdbreplay_version, gdbreplay_usage): New.
11722 (main): Accept --version and --help options.
11723
aeb75bf5
DJ
117242008-06-04 Daniel Jacobowitz <dan@codesourcery.com>
11725
11726 * linux-arm-low.c (thumb_breakpoint, thumb_breakpoint_len): New.
11727 (arm_breakpoint_at): Handle Thumb.
11728 (the_low_target): Add comment.
11729
76b233dd
UW
117302008-05-29 Ulrich Weigand <uweigand@de.ibm.com>
11731
11732 * linux-ppc-low.c (ppc_collect_ptrace_register): Clear buffer.
11733
08388c79
DE
117342008-05-09 Doug Evans <dje@google.com>
11735
a3c83fae
DE
11736 * server.h (decode_search_memory_packet): Declare.
11737 * remote-utils.c (decode_search_memory_packet): New fn.
11738 * server.c (handle_search_memory_1): New fn.
08388c79
DE
11739 (handle_search_memory): New fn.
11740 (handle_query): Process qSearch:memory packets.
11741
bb9c3d36
UW
117422008-05-08 Ulrich Weigand <uweigand@de.ibm.com>
11743
11744 * regcache.c (registers_length): Remove.
11745 (set_register_cache): Verify that PBUFSIZ is large enough to hold a
11746 full register packet.
11747 * regcache.h (registers_length): Remove prototype.
11748 * server.h (PBUFSIZ): Define to 16384.
11749
7284e1be
UW
117502008-05-03 Ulrich Weigand <uweigand@de.ibm.com>
11751
11752 * configure.srv (powerpc*-*-linux*): Set srv_regobj to
11753 powerpc-32l.o, powerpc-altivec32l.o, powerpc-e500l.o,
11754 powerpc-64l.o, and powerpc-altivec64l.o.
11755 Remove rs6000/powerpc-32.xml, rs6000/powerpc-64.xml, and
11756 rs6000/powerpc-e500.xml; add rs6000/powerpc-32l.xml,
11757 rs6000/powerpc-altivec32l.xml, rs6000/powerpc-e500l.xml,
11758 rs6000/powerpc-64l.xml, rs6000/powerpc-altivec64l.xml,
11759 rs6000/power-linux.xml, and rs6000/power64-linux.xml
11760 to srv_xmlfiles.
11761
11762 * Makefile.in (reg-ppc.o, reg-ppc.c): Remove, replace by ...
11763 (powerpc-32l.o, powerpc-32l.c): ... these new rules.
11764 (powerpc-32.o, powerpc-32.c): Remove, replace by ...
11765 (powerpc-altivec32l.o, powerpc-altivec32l.c): ... these new rules.
11766 (powerpc-e500.o, powerpc-e500.c): Remove, replace by ...
11767 (powerpc-e500l.o, powerpc-e500l.c): ... these new rules.
11768 (reg-ppc64.o, reg-ppc64.c): Remove, replace by ...
11769 (powerpc-64l.o, powerpc-64l.c): ... these new rules.
11770 (powerpc-64.o, powerpc-64.c): Remove, replace by ...
11771 (powerpc-altivec64l.o, powerpc-altivec64l.c): ... these new rules.
11772 (clean): Update.
11773
11774 * linux-ppc-low.c (init_registers_ppc): Remove, replace by ...
11775 (init_registers_powerpc_32l): ... this new prototype.
11776 (init_registers_powerpc_32): Remove, replace by ...
11777 (init_registers_powerpc_altivec32l): ... this new prototype.
11778 (init_registers_powerpc_e500): Remove, replace by ...
11779 (init_registers_powerpc_e500l): ... this new prototype.
11780 (init_registers_ppc64): Remove, replace by ...
11781 (init_registers_powerpc_64l): ... this new prototype.
11782 (init_registers_powerpc_64): Remove, replace by ...
11783 (init_registers_powerpc_altivec64l): ... this new prototype.
11784 (ppc_num_regs): Set to 73.
11785 (PT_ORIG_R3, PT_TRAP): Define if necessary.
11786 (ppc_regmap, ppc_regmap_e500): Add values for orig_r3 and trap.
11787 (ppc_cannot_store_register): Handle orig_r3 and trap.
11788 (ppc_arch_setup): Update init_registers_... calls.
11789 (ppc_fill_gregset): Handle orig_r3 and trap.
11790
11791 * inferiors.c (clear_inferiors): Reset current_inferior.
11792
fdc59709
PB
117932008-04-23 Paolo Bonzini <bonzini@gnu.org>
11794
889bf7c5
PA
11795 * acinclude.m4: Add override.m4.
11796 * configure: Regenerate.
fdc59709 11797
c9b2f845
UW
117982008-04-21 Ulrich Weigand <uweigand@de.ibm.com>
11799
11800 * linux-ppc-low.c (ppc_arch_setup): Reset ppc_hwcap after the
11801 initial call to init_register_ppc64.
11802
550512b8
UW
118032008-04-21 Ulrich Weigand <uweigand@de.ibm.com>
11804
43aaf8b6
PA
11805 * configure.srv (powerpc64-*-linux*, powerpc-*-linux*): Merge into
11806 single powerpc*-*-linux* case.
550512b8
UW
11807 (s390-*-linux*, s390x-*-linux*): Merge into single s390*-*-linux* case.
11808
b6430ec3
UW
118092008-04-17 Ulrich Weigand <uweigand@de.ibm.com>
11810
11811 * configure.srv [powerpc64-*-linux*]: Remove powerpc-e500.o from
889bf7c5 11812 srv_regobj. Remove rs6000/powerpc-e500.xml and rs6000/power-spe.xml
b6430ec3
UW
11813 from reg_xmlfiles.
11814 * linux-ppc-low.c: Include <elf.h>.
11815 (PPC_FEATURE_HAS_ALTIVEC, PPC_FEATURE_HAS_SPE): Define.
11816 (ppc_hwcap): New global variable.
11817 (ppc_regmap): Remove __SPE__ #ifdef sections.
11818 (ppc_regmap_e500): New global variable.
11819 (ppc_cannot_store_register): Update __SPE__ special case.
11820 (ppc_get_hwcap): New function.
11821 (ppc_arch_setup): Use it to determine whether inferior supports
11822 AltiVec or SPE registers. Set the_low_target.regmap if appropriate.
11823 (ppc_fill_vrregset, ppc_store_vrregset): Define unconditionally.
11824 Do not access registers if target does not support AltiVec.
11825 (ppc_fill_evrregset, ppc_store_evrregset): Define unconditionally.
11826 Do not access registers if target does not support SPE.
11827 (target_regsets): Unconditionally include AltiVec and SPE regsets.
11828
52fa2412
UW
118292008-04-17 Daniel Jacobowitz <dan@codesourcery.com>
11830
11831 * linux-low.c (disabled_regsets, num_regsets): New.
11832 (use_regsets_p): Delete.
11833 (linux_wait_for_process): Clear disabled_regsets.
11834 (regsets_fetch_inferior_registers): Check and set it.
11835 (regsets_store_inferior_registers): Likewise.
11836 (linux_fetch_registers, linux_store_registers): Do not use
11837 use_regsets_p.
11838 (initialize_low): Allocate disabled_regsets.
11839
e28b3332
DJ
118402008-04-14 Daniel Jacobowitz <dan@codesourcery.com>
11841
11842 * Makefile.in (LIBOBJS): New.
11843 (OBS): Use LIBOBJS.
11844 (memmem.o): New rule.
11845 * configure.ac: Use AC_CONFIG_LIBOBJ_DIR and check for memmem.
11846 * configure: Regenerated.
11847
4536995d
UW
118482008-04-04 Ulrich Weigand <uweigand@de.ibm.com>
11849
11850 * server.c (handle_query): Never return "unsupported" for
11851 qXfer:features:read queries.
11852
221c031f
UW
118532008-03-27 Ulrich Weigand <uweigand@de.ibm.com>
11854
11855 * server.c (get_features_xml): Fix inverted condition.
11856 (handle_query): Always support qXfer:feature:read.
11857
ccd213ac
DJ
118582008-03-10 Daniel Jacobowitz <dan@codesourcery.com>
11859
11860 * server.c (wrapper_argv): New.
11861 (start_inferior): Handle wrapper_argv. If set, expect an extra
11862 trap.
11863 (gdbserver_usage): Document --wrapper.
11864 (main): Parse --wrapper.
11865
6fe305f7
UW
118662008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
11867
11868 * configure.srv [powerpc64-*-linux*]: Add all files mentioned for
11869 powerpc-*-linux* to srv_regobj and reg_xmlfiles.
11870 * linux-ppc-low.c (ppc_get_pc): Support bi-arch operation.
11871 (ppc_set_pc): Likewise.
11872 (ppc_arch_setup): New function.
11873 (ppc_fill_gregset): Call ppc_collect_ptrace_register instead
11874 of collect_register.
889bf7c5 11875 (the_low_target): Use ppc_arch_setup as arch_setup initializer.
6fe305f7 11876
5b0a002e
UW
118772008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
11878
11879 * configure.srv [powerpc64-*-linux*]: Use linux-ppc-low.o
11880 instead of linux-ppc64-low.o.
11881 * linux-ppc64-low.c: Remove file.
11882 * Makefile.in (SFILES): Remove linux-ppc64-low.c.
11883 (linux-ppc64-low.o): Remove rule.
11884
11885 * linux-ppc-low.c (init_registers_ppc64): Add prototype.
11886 (init_registers_powerpc_64): Likewise.
11887 (ppc_regmap): Conditionally define depending on __powerpc64__.
11888 (ppc_cannot_store_register): Do not special-case "fpscr" when
11889 compiled on __powerpc64__.
11890 (ppc_collect_ptrace_register): New function.
11891 (ppc_supply_ptrace_register): New function.
11892 (ppc_breakpoint): Change type to "unsigned int".
11893 (ppc_breakpoint_at): Change type of "insn" to "unsigned int".
11894 (the_low_target): Conditionally provide initializers for the
889bf7c5 11895 arch_setup member depending on __powerpc64__. Install
5b0a002e
UW
11896 collect_ptrace_register and supply_ptrace_register members.
11897
9b4b61c8
UW
118982008-02-28 Ulrich Weigand <uweigand@de.ibm.com>
11899
11900 * regcache.h (gdbserver_xmltarget): Add extern declaration.
11901 * server.c (gdbserver_xmltarget): Define.
11902 (get_features_xml): Use it to replace "target.xml" and arch_string.
11903
11904 * configure.srv: Remove srv_xmltarget. Add XML files that were
11905 mentioned there to srv_xmlfiles instead. Remove conditional tests
11906 on gdb_cv_arm_iwmmxt, gdb_cv_ppc_altivec, gdb_cv_ppc_spe; set
11907 srv_xmlfiles and srv_regobj to include all possible choices.
11908 * configure.ac (srv_xmltarget): Remove.
11909 (srv_xmlfiles): Do not add "target.xml".
11910 (gdb_cv_arm_iwmmxt, gdb_cv_ppc_altivec, gdb_cv_ppc_spe): Remove
11911 checks for supplementary target information.
11912 * configure: Regenerate.
11913 * Makefile.in (XML_TARGET): Remove.
11914 (target.xml): Remove rule.
11915 (clean): Do not clean up target.xml.
11916 (.PRECIOUS): Do not mention target.xml.
11917
11918 * target.h (struct target_ops): Remove arch_string member.
11919 * linux-low.c (linux_arch_string): Remove.
11920 (linux_target_ops): Remove arch_string initializer.
11921 * linux-low.h (struct linux_target_ops): Remove arch_string member.
11922 * linux-i386-low.c (the_low_target): Remove arch_string initializer.
11923 * linux-x86-64-low.c (the_low_target): Remove arch_string initializer.
11924 * spu-low.c (spu_arch_string): Remove.
11925 (spu_target_ops): Remove arch_string initializer.
11926 * win32-low.c (win32_arch_string): Remove.
11927 (win32_target_ops): Remove arch_string initializer.
11928 * win32-low.h (struct win32_target_ops): Remove arch_string member.
11929 * win32-arm-low.c (the_low_target): Remove arch_string initializer.
11930 * win32-i368-low.c (the_low_target): Remove arch_string initializer.
11931
ee1a7ae4
UW
119322008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
11933
11934 * linux-low.h (struct linux_target_ops): Replace left_pad_xfer field
11935 by collect_ptrace_register and supply_ptrace_register hooks.
11936 * linux-low.c (fetch_register): Use supply_ptrace_register callback
11937 instead of checking for the_low_target.left_pad_xfer.
11938 (usr_store_inferior_registers): Use collect_ptrace_register callback
11939 instead of checking for the_low_target.left_pad_xfer.
11940
11941 * linux-s390-low.c (s390_collect_ptrace_register): New function.
11942 (s390_supply_ptrace_register): Likewise.
11943 (s390_fill_gregset): Call s390_collect_ptrace_register.
11944 (the_low_target): Update.
11945
11946 * linux-ppc64-low.c (ppc_collect_ptrace_register): New function.
11947 (ppc_supply_ptrace_register): Likewise.
11948 (the_low_target): Update.
11949
11950 * linux-i386-low.c (the_low_target): Update.
11951 * linux-x86-64-low.c (the_low_target): Update.
11952
d61ddec4
UW
119532008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
11954
11955 * configure.srv [s390x-*-linux*]: Set srv_regobj to include both
11956 reg-s390.o and reg-s390x.o.
11957
11958 * linux-low.c (new_inferior): New global variable.
11959 (linux_create_inferior, linux_attach): Set it.
11960 (linux_wait_for_process): Call the_low_target.arch_setup after the
11961 target has stopped for the first time.
11962 (initialize_low): Do not call the_low_target.arch_setup.
11963
11964 * linux-s390-low.c (s390_get_pc): Support bi-arch operation.
11965 (s390_set_pc): Likewise.
11966 (s390_arch_setup): New function.
11967 (the_low_target): Use s390_arch_setup as arch_setup routine.
11968
11969 * regcache.c (realloc_register_cache): New function.
11970 (set_register_cache): Call it for each existing regcache.
11971
d05b4ac3
UW
119722008-02-27 Ulrich Weigand <uweigand@de.ibm.com>
11973
11974 * server.h (init_registers): Remove prototype.
11975
11976 * linux-low.h (struct linux_target_ops): Add arch_setup field.
11977 * linux-low.c (initialize_low): Call the_low_target.arch_setup ()
11978 instead of init_registers ().
11979 * linux-arm-low.c (init_registers_arm): Add prototype.
11980 (init_registers_arm_with_iwmmxt): Likewise.
11981 (the_low_target): Add initializer for arch_setup field.
11982 * linux-cris-low.c (init_registers_cris): Add prototype.
11983 (the_low_target): Add initializer for arch_setup field.
11984 * linux-crisv32-low.c (init_registers_crisv32): Add prototype.
11985 (the_low_target): Add initializer for arch_setup field.
11986 * linux-i386-low.c (init_registers_i386_linux): Add prototype.
11987 (the_low_target): Add initializer for arch_setup field.
11988 * linux-ia64-low.c (init_registers_ia64): Add prototype.
11989 (the_low_target): Add initializer for arch_setup field.
11990 * linux-m32r-low.c (init_registers_m32r): Add prototype.
11991 (the_low_target): Add initializer for arch_setup field.
11992 * linux-m68k-low.c (init_registers_m68k): Add prototype.
11993 (the_low_target): Add initializer for arch_setup field.
11994 * linux-mips-low.c (init_registers_mips_linux): Add prototype.
11995 (init_registers_mips64_linux): Likewise.
11996 (the_low_target): Add initializer for arch_setup field.
11997 * linux-ppc-low.c (init_registers_ppc): Add prototype.
11998 (init_registers_powerpc_32, init_registers_powerpc_e500): Likewise.
11999 (the_low_target): Add initializer for arch_setup field.
12000 * linux-ppc64-low.c (init_registers_ppc64): Add prototype.
12001 (init_registers_powerpc_64): Likewise.
12002 (the_low_target): Add initializer for arch_setup field.
12003 * linux-s390-low.c (init_registers_s390): Add prototype.
12004 (init_registers_s390x): Likewise.
12005 (the_low_target): Add initializer for arch_setup field.
12006 * linux-sh-low.c (init_registers_sh): Add prototype.
12007 (the_low_target): Add initializer for arch_setup field.
12008 * linux-x86-64-low.c (init_registers_x86_64_linux): Add prototype.
12009 (the_low_target): Add initializer for arch_setup field.
12010 * linux-xtensa-low.c (init_registers_xtensa): Add prototype.
12011 (the_low_target): Add initializer for arch_setup field.
12012
12013 * win32-low.h (struct win32_target_ops): Add arch_setup field.
12014 * win32-low.c (initialize_low): Call the_low_target.arch_setup ()
12015 instead of init_registers ().
12016 * win32-arm-low.c (init_registers_arm): Add prototype.
12017 (the_low_target): Add initializer for arch_setup field.
12018 * win32-i386-low.c (init_registers_i386): Add prototype.
12019 (the_low_target): Add initializer for arch_setup field.
12020
12021 * spu-low.c (init_registers_spu): Add prototype.
12022 (initialize_low): Call initialie_registers_spu () instead of
12023 initialize_registers ().
12024
fd96d250
PA
120252008-02-19 Pedro Alves <pedro@codesourcery.com>
12026
12027 * server.c (handle_v_requests): When handling the vRun and vAttach
12028 packets, if already debugging a process, don't kill it. Return an
12029 error instead.
12030
d41b6bb4
DJ
120312008-02-17 Daniel Jacobowitz <dan@codesourcery.com>
12032
12033 * server.c (handle_query): Correct length check.
12034
5ac588cf
PA
120352008-02-14 Pedro Alves <pedro_alves@portugalmail.pt>
12036
12037 * win32-low.c (do_initial_child_stuff): Add process handle
12038 parameter. Set current_process_handle and current_process_id from the
12039 parameters. Clear globals.
12040 (win32_create_inferior): Don't set current_process_handle and
12041 current_process_id here. Instead pass them on the call to
12042 do_initial_child_stuff.
12043 (win32_attach): Likewise.
12044 (win32_clear_inferiors): New.
12045 (win32_kill): Don't close the current process handle or the
12046 current thread handle here. Instead call win32_clear_inferiors.
12047 (win32_detach): Don't open a new handle to the process. Call
12048 win32_clear_inferiors.
12049 (win32_join): Don't rely on current_process_handle; open a new
12050 handle using the process id.
12051 (win32_wait): Call win32_clear_inferiors when the inferior process
12052 has exited.
12053
ecd7ecbc
DJ
120542008-02-14 Daniel Jacobowitz <dan@codesourcery.com>
12055
12056 * server.c (monitor_show_help): Add "exit".
12057
1525d545
MG
120582008-02-11 Maxim Grigoriev <maxim2405@gmail.com>
12059
ecd7ecbc 12060 * Makefile.in (SFILES): Add linux-xtensa-low.c.
1525d545
MG
12061 (clean): Add reg-xtensa.c.
12062 (linux-xtensa-low.o, reg-xtensa.o, reg-xtensa.c): New dependencies.
ecd7ecbc
DJ
12063 * configure.srv (xtensa*-*-linux*) New target.
12064 * linux-xtensa-low.c: New.
12065 * xtensa-xtregs.c: New.
1525d545 12066
59a016f0
PA
120672008-02-01 Pedro Alves <pedro_alves@portugalmail.pt>
12068
12069 * hostio.c: Don't include errno.h.
12070 (errno_to_fileio_errno): Move to hostio-errno.
12071 * hostio.c: (hostio_error): Remove the error parameter. Defer the
12072 error number outputting to the target->hostio_last_error callback.
12073 (hostio_packet_error): Use FILEIO_EINVAL directly.
12074 (handle_open, handle_pread, hostio_error, handle_unlink): Update
12075 calls to hostio_error.
12076 * hostio-errno.c: New.
12077 * server.h (hostio_last_error_from_errno): Declare.
12078 * target.h (target_ops): Add hostio_last_error member.
12079 * linux-low.c (linux_target_op): Register hostio_last_error_from_errno
12080 as hostio_last_error handler.
889bf7c5 12081 * spu-low.c (spu_target_ops): Likewise.
59a016f0
PA
12082 * win32-low.c [_WIN32_WCE] (win32_error_to_fileio_error)
12083 (wince_hostio_last_error): New functions.
12084 (win32_target_ops) [_WIN32_WCE]: Register wince_hostio_last_error
12085 as hostio_last_error handler.
12086 (win32_target_ops) [!_WIN32_WCE]: Register
12087 hostio_last_error_from_errno as hostio_last_error handler.
12088 * Makefile.in (SFILES): Add hostio.c and hostio-errno.c.
12089 (hostio-errno.o): New rule.
12090 * configure.ac (GDBSERVER_DEPFILES): Add $srv_hostio_err_objs.
12091 * configure.srv (srv_hostio_err_objs): New variable. Default to
12092 hostio-errno.o.
12093 (arm*-*-mingw32ce*): Set srv_hostio_err_objs to "".
12094 * configure: Regenerate.
12095
2d717e4f
DJ
120962008-01-29 Daniel Jacobowitz <dan@codesourcery.com>
12097
12098 * linux-low.c (linux_attach_lwp): Do not _exit after errors.
12099 (linux_kill, linux_detach): Clean up the process list.
12100 * remote-utils.c (remote_open): Improve port number parsing.
12101 (putpkt_binary, input_interrupt): Only send interrupts if the target
12102 is running.
12103 * server.c (extended_protocol): Make static.
12104 (attached): Define earlier.
12105 (exit_requested, response_needed, program_argv): New variables.
12106 (target_running): New.
12107 (start_inferior): Clear attached here.
12108 (attach_inferior): Set attached here.
12109 (require_running): Define.
12110 (handle_query): Use require_running and target_running. Implement
12111 "monitor exit".
12112 (handle_v_attach, handle_v_run): New.
12113 (handle_v_requests): Use require_running. Handle vAttach and vRun.
12114 (gdbserver_usage): Update.
12115 (main): Redo argument parsing. Handle --debug and --multi. Handle
12116 --attach along with other options or after the port. Save
12117 program_argv. Support no initial program. Resynchronize
12118 communication with GDB after an error. Handle "monitor exit".
12119 Use require_running and target_running. Always allow the extended
12120 protocol. Do not error out for Hc0 or Hc-1. Do not automatically
12121 restart in extended mode.
12122 * README: Refer to the GDB manual. Update --attach usage.
12123
7407e2de
AS
121242007-12-20 Andreas Schwab <schwab@suse.de>
12125
12126 * linux-low.c (STACK_SIZE): Define.
12127 (linux_tracefork_child): Use it. Use __clone2 on ia64.
12128 (linux_test_for_tracefork): Likewise.
12129
b65d95c5
DJ
121302007-12-18 Daniel Jacobowitz <dan@codesourcery.com>
12131
12132 * linux-low.c (linux_wait_for_event): Update messages. Do not
12133 reinsert auto-delete breakpoints.
12134 * mem-break.c (struct breakpoint): Change return type of handler to
12135 int.
12136 (set_breakpoint_at): Update handler type.
12137 (reinsert_breakpoint_handler): Return 1 instead of calling
12138 delete_breakpoint.
12139 (reinsert_breakpoint_by_bp): Check for the original breakpoint before
12140 setting a new one.
12141 (check_breakpoints): Delete auto-delete breakpoints and return 2.
12142 * mem-break.h (set_breakpoint_at): Update handler type.
12143 * thread-db.c (thread_db_create_event, thread_db_create_event): Update.
12144 * win32-low.c (auto_delete_breakpoint): New.
12145 (get_child_debug_event): Use it.
12146
4e799345
DJ
121472007-12-16 Daniel Jacobowitz <dan@codesourcery.com>
12148
12149 * configure.ac: Check for pread and pwrite.
12150 * hostio.c (handle_pread): Fall back to lseek and read.
12151 (handle_pwrite): Fall back to lseek and write.
12152 * config.in, configure: Regenerated.
12153
27524b67
DJ
121542007-12-07 Daniel Jacobowitz <dan@codesourcery.com>
12155
12156 * server.c (myresume): Add own_buf argument.
12157 (main): Update calls.
12158
a20d5e98
DJ
121592007-12-06 Daniel Jacobowitz <dan@codesourcery.com>
12160
12161 * linux-low.c (linux_wait, linux_resume): Do not handle async I/O.
12162 * remote-utils.c (remote_open): Do not call disable_async_io.
12163 (block_async_io): Delete.
12164 (unblock_async_io): Make static.
12165 (initialize_async_io): New.
12166 * server.c (handle_v_cont): Handle async I/O here.
12167 (myresume): Likewise. Move other common resume tasks here...
12168 (main): ... from here. Call initialize_async_io. Disable async
12169 I/O before the main loop.
12170 * server.h (initialize_async_io): Declare.
12171 (block_async_io, unblock_async_io): Delete prototypes.
12172 * spu-low.c (spu_resume, spu_wait): Do not handle async I/O here.
12173
b79d787e
DJ
121742007-12-06 Mick Davis <mickd@goanna.iinet.net.au>
12175
12176 * remote-utils.c (readchar): Allow binary data in received messages.
12177
d97903b2
PA
121782007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
12179
12180 * win32-low.c (attaching): New global.
12181 (win32_create_inferior): Clear the `attaching' global.
12182 (win32_attach): Set the `attaching' global.
12183 (get_child_debug_event) [_WIN32_WCE]: Stop the inferior when
12184 attaching. Only set a breakpoint at the entry point if not
12185 attaching.
12186
311de423
PA
121872007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
12188
12189 * server.c (main): Don't report dll events on the initial
12190 connection on attaches.
12191
6c2d16d2
PA
121922007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
12193
12194 * server.c (main): Relax numerical bases supported for the pid of
12195 the --attach command line argument.
12196
5ca906e6
PA
121972007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
12198
12199 * win32-low.c (win32_attach): Call OpenProcess before
12200 DebugActiveProcess, not after. Add last error output to error
12201 call.
12202
9c6c8194
PA
122032007-12-03 Pedro Alves <pedro_alves@portugalmail.pt>
12204
12205 * win32-low.c (win32_get_thread_context)
12206 (win32_set_thread_context): New functions.
12207 (thread_rec): Use win32_get_thread_context.
12208 (continue_one_thread, win32_resume): Use win32_set_thread_context.
12209 * win32-low.h (win32_thread_info) [_WIN32_WCE]: Add `base_context'
12210 field.
12211
4d5d1aaa
PA
122122007-12-03 Leo Zayas
12213 Pedro Alves <pedro_alves@portugalmail.pt>
12214
12215 * win32-low.c (soft_interrupt_requested, faked_breakpoint): New
12216 global variables.
12217 (child_add_thread): Minor cleanup.
12218 (child_continue): Resume artificially suspended threads before
12219 calling ContinueDebugEvent.
12220 (suspend_one_thread): New.
12221 (fake_breakpoint_event): New.
12222 (get_child_debug_event): Change return type to int. Check here if
12223 gdb sent an interrupt request. If a soft interrupt was requested,
12224 fake a breakpoint event. Return 0 if there is no event to handle,
12225 and 1 otherwise.
12226 (win32_wait): Don't check here if gdb sent an interrupt request.
12227 Ensure there is a valid event to handle.
12228 (win32_request_interrupt): Add soft interruption method as last
12229 resort.
12230
c436e841
PA
122312007-12-03 Leo Zayas
12232 Pedro Alves <pedro_alves@portugalmail.pt>
12233
12234 * win32-low.h (win32_thread_info): Add descriptions to the
12235 structure members. Replace `suspend_count' counter by a
12236 `suspended' flag.
12237 * win32-low.c (thread_rec): Update condition of when to get the
12238 context from the inferior. Rely on ContextFlags being set if it
12239 has already been retrieved. Only suspend the inferior thread if
12240 we haven't already. Warn if that fails.
12241 (continue_one_thread): s/suspend_count/suspended/. Only call
12242 ResumeThread once. Warn if that fails.
12243
e7b5fa67
PA
122442007-12-02 Pedro Alves <pedro_alves@portugalmail.pt>
12245
12246 * win32-low.c (win32_wait): Don't read from the inferior when it
12247 has already exited.
12248
a385171d
PA
122492007-12-02 Pedro Alves <pedro_alves@portugalmail.pt>
12250
12251 * Makefile.in (win32_low_h): New variable.
12252 (win32-low.o): Add dependency on $(win32_low_h).
12253 (win32-arm-low.o, win32-i386-low.o): New rules.
12254
f80c84b3
DJ
122552007-11-30 Daniel Jacobowitz <dan@codesourcery.com>
12256
12257 * hostio.c: Correct copyright year.
12258
a6b151f1
DJ
122592007-11-30 Daniel Jacobowitz <dan@codesourcery.com>
12260
12261 * Makefile.in (OBS): Add hostio.o.
12262 (hostio.o): New rule.
12263 * server.h (handle_vFile): Declare.
12264 * hostio.c: New file.
12265 * server.c (handle_v_requests): Take packet_len and new_packet_len
12266 for binary packets. Call handle_vFile.
12267 (main): Update call to handle_v_requests.
12268
f9387fc3
DJ
122692007-11-05 Daniel Jacobowitz <dan@codesourcery.com>
12270
12271 * linux-low.c: Include <sched.h>.
12272
51c2684e
DJ
122732007-11-01 Daniel Jacobowitz <dan@codesourcery.com>
12274
12275 * linux-low.c (linux_tracefork_grandchild): New.
12276 (linux_tracefork_child): Use clone.
12277 (linux_test_for_tracefork): Use clone; allocate and free a stack.
12278
75f83163
JB
122792007-10-31 Joel Brobecker <brobecker@adacore.com>
12280
12281 * Makefile.in: Use $(SHELL) instead of "sh" to call regdat.sh.
12282
da5898ce
DJ
122832007-10-24 Daniel Jacobowitz <dan@codesourcery.com>
12284
12285 * linux-low.c (handle_extended_wait): Handle unexpected signals.
12286
24a09b5f
DJ
122872007-10-23 Daniel Jacobowitz <dan@codesourcery.com>
12288
12289 * inferiors.c (change_inferior_id): Delete.
12290 (add_pid_to_list, pull_pid_from_list): New.
12291 * linux-low.c (PTRACE_SETOPTIONS, PTRACE_GETEVENTMSG)
12292 (PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK, PTRACE_O_TRACEVFORK)
12293 (PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC, PTRACE_O_TRACEVFORKDONE)
12294 (PTRACE_O_TRACEEXIT, PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK)
12295 (PTRACE_EVENT_CLONE, PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE)
12296 (PTRACE_EVENT_EXIT, __WALL): Provide default definitions.
12297 (stopped_pids, thread_db_active, must_set_ptrace_flags): New variables.
12298 (using_threads): Always set to 1.
12299 (handle_extended_wait): New.
12300 (add_process): Do not set TID.
12301 (linux_create_inferior): Set must_set_ptrace_flags.
12302 (linux_attach_lwp): Remove TID argument. Do not check using_threads.
12303 Use PTRACE_SETOPTIONS. Call new_thread_notify. Update all callers.
12304 (linux_thread_alive): Rename TID argument to LWPID.
12305 (linux_wait_for_process): Handle unknown processes. Do not use TID.
12306 (linux_wait_for_event): Do not use TID or check using_threads. Update
12307 call to dead_thread_notify. Call handle_extended_wait.
12308 (linux_create_inferior): Use PTRACE_SETOPTIONS.
12309 (send_sigstop): Delete sigstop_sent.
12310 (wait_for_sigstop): Avoid TID.
12311 (linux_supports_tracefork_flag, linux_tracefork_child, my_waitpid)
12312 (linux_test_for_tracefork): New.
12313 (linux_lookup_signals): Use thread_db_active and
12314 linux_supports_tracefork_flag.
12315 (initialize_low): Use thread_db_active and linux_test_for_tracefork.
12316 * linux-low.h (get_process_thread): Avoid TID.
12317 (struct process_ifo): Move thread_known and tid to the end. Remove
12318 sigstop_sent.
12319 (linux_attach_lwp, thread_db_init): Update prototypes.
12320 * server.h (change_inferior_id): Delete prototype.
12321 (add_pid_to_list, pull_pid_from_list): New prototypes.
12322 * thread-db.c (thread_db_use_events): New.
12323 (find_first_thread): Rename to...
12324 (find_one_thread): ...this. Update callers and messages. Do not
12325 call fatal. Check thread_db_use_events. Do not call
12326 change_inferior_id or new_thread_notify.
12327 (maybe_attach_thread): Update. Do not call new_thread_notify.
12328 (thread_db_init): Set thread_db_use_events. Check use_events.
12329 * utils.c (fatal, warning): Correct message prefix.
12330
30ed0a8f
DJ
123312007-10-15 Daniel Jacobowitz <dan@codesourcery.com>
12332
12333 * Makefile.in (clean): Remove new files.
12334 (powerpc-32.o, powerpc-32.c, powerpc-e500.o, powerpc-e500.c)
12335 (powerpc-64.o, powerpc-64.c): New rules.
12336 * configure.srv: Use alternate register sets for powerpc64-*-linux*
12337 with AltiVec, powerpc-*-linux* with AltiVec, and powerpc-*-linux*
12338 with SPE.
12339 * linux-ppc-low.c (ppc_regmap): Do not fetch the FP registers for
12340 SPE targets.
12341 (ppc_cannot_store_register): Do not check for FPSCR for SPE targets.
12342 (PTRACE_GETVRREGS, PTRACE_SETVRREGS, SIZEOF_VRREGS, ppc_fill_vrregset)
12343 (ppc_store_vrregset, PTRACE_GETEVRREGS, PTRACE_SETEVRREGS)
12344 (struct gdb_evrregset_t, ppc_fill_evrregset, ppc_store_evrregset): New.
12345 (target_regsets): Add AltiVec and SPE register sets.
12346 * configure.ac: Check for AltiVec and SPE.
12347 * linux-ppc64-low.c (PTRACE_GETVRREGS, PTRACE_SETVRREGS, SIZEOF_VRREGS)
12348 (ppc_fill_vrregset, ppc_store_vrregset): New.
12349 (target_regsets): Add AltiVec register set.
12350 * configure: Regenerated.
12351
fd462a61
DJ
123522007-09-19 Daniel Jacobowitz <dan@codesourcery.com>
12353
12354 * linux-low.c (O_LARGEFILE): Define.
12355 (linux_read_memory): Use /proc/PID/mem.
12356 * configure.ac: Use AC_GNU_SOURCE. Check for pread64.
12357 * configure, config.in: Regenerated.
12358
69f223ed
DJ
123592007-09-04 Daniel Jacobowitz <dan@codesourcery.com>
12360
12361 * linux-low.c (linux_wait_for_event): Do not pass signals while
12362 single-stepping.
12363
aec18585
PA
123642007-09-03 Pedro Alves <pedro_alves@portugalmail.pt>
12365
12366 * win32-low.c (create_process): New.
12367 (win32_create_inferior): Use create_process instead of
12368 CreateProcess. If create_process failed retry appending an ".exe"
12369 suffix. Store the GetLastError result immediatelly after
12370 create_process calls and use it on the call to error.
12371
34d86ddd
PA
123722007-09-03 Pedro Alves <pedro_alves@portugalmail.pt>
12373
12374 * win32-low.c (handle_load_dll): Don't use toolhelp when waiting.
12375
5a0e3bd0
JB
123762007-08-23 Joel Brobecker <brobecker@adacore.com>
12377
12378 * configure.ac: Switch license to GPLv3.
12379
f88c79e6
MS
123802007-08-01 Michael Snyder <msnyder@access-company.com>
12381
12382 * remote-utils.c (putpkt_binary): Memory leak, free buf2.
12383
6b3d9b83
PA
123842007-07-31 Pedro Alves <pedro_alves@portugalmail.pt>
12385
12386 * win32-low.c (winapi_CloseToolhelp32Snapshot) [_WIN32_WCE]: New
12387 typedef.
12388 (win32_CloseToolhelp32Snapshot) [_WIN32_WCE]: New global var.
12389 (load_toolhelp) [_WIN32_WCE]: Load TOOLHELP.DLL. Get
12390 CloseToolhelp32Snapshot.
12391 (toolhelp_get_dll_name) [_WIN32_WCE]: Close the snapshot with
12392 CloseToolhelp32Snapshot.
12393
c588c53c
MS
123942007-07-27 Michael Snyder <michael.snyder@access-company.com>
12395
12396 * server.c (main): Check for inferior exit before main loop.
12397
aa0403d9
PA
123982007-07-18 Pedro Alves <pedro_alves@portugalmail.pt>
12399
12400 * remote-utils.c (remote_open): Set SO_KEEPALIVE on remote_desc
12401 instead of on tmp_desc.
12402
255e7678
DJ
124032007-07-17 Pedro Alves <pedro_alves@portugalmail.pt>
12404 Daniel Jacobowitz <dan@codesourcery.com>
12405
12406 * inferiors.c (all_dlls, dlls_changed, get_dll): New.
12407 (add_thread): Minor cleanups.
12408 (clear_inferiors): Move lower in the file. Clear the DLL
12409 list.
12410 (free_one_dll, match_dll, loaded_dll, unloaded_dll, clear_list): New.
12411 * remote-utils.c (prepare_resume_reply): Check dlls_changed.
12412 (xml_escape_text): New.
12413 * server.c (handle_query): Handle qXfer:libraries:read. Report it
12414 for qSupported.
12415 (handle_v_cont): Report errors.
12416 (gdbserver_version): Update.
12417 (main): Correct size of own_buf. Do not report initial DLL events.
12418 * server.h (struct dll_info, all_dlls, dlls_changed, loaded_dll)
12419 (unloaded_dll, xml_escape_text): New.
12420 * win32-low.c (enum target_waitkind): Update comments.
12421 (win32_add_one_solib, get_image_name, winapi_EnumProcessModules)
12422 (winapi_GetModuleInformation, winapi_GetModuleFileNameExA)
12423 (win32_EnumProcessModules, win32_GetModuleInformation)
12424 (win32_GetModuleFileNameExA, load_psapi, psapi_get_dll_name)
12425 (winapi_CreateToolhelp32Snapshot, winapi_Module32First)
12426 (winapi_Module32Next, win32_CreateToolhelp32Snapshot)
12427 (win32_Module32First, win32_Module32Next, load_toolhelp)
12428 (toolhelp_get_dll_name, handle_load_dll, handle_unload_dll): New.
12429 (get_child_debug_event): Handle DLL events.
12430 (win32_wait): Likewise.
12431
0d37add9
DJ
124322007-07-12 Daniel Jacobowitz <dan@codesourcery.com>
12433
12434 * configure.srv: Set srv_linux_regsets for sh*-*-linux*.
12435 * linux-sh-low.c (sh_fill_gregset, target_regsets): New.
12436
45e2715e
PA
124372007-07-08 Pedro Alves <pedro_alves@portugalmail.pt>
12438
12439 * win32-low.c (handle_output_debug_string): Ignore event if not
12440 waiting.
12441
c5674cf1
PA
124422007-07-08 Pedro Alves <pedro_alves@portugalmail.pt>
12443
12444 * win32-arm-low.c (arm_wince_breakpoint): Fix typo.
12445
2bbe3cc1
DJ
124462007-07-03 Daniel Jacobowitz <dan@codesourcery.com>
12447
12448 * remote-utils.c (look_up_one_symbol): Handle 'm' packets.
12449
ae13219e
DJ
124502007-07-02 Daniel Jacobowitz <dan@codesourcery.com>
12451
12452 * inferiors.c (change_inferior_id): Add comment.
12453 * linux-low.c (check_removed_breakpoint): Add an early
12454 prototype. Improve debug output.
12455 (linux_attach): Doc update.
12456 (linux_detach_one_process, linux_detach): Clean up before releasing
12457 each process.
12458 (send_sigstop, wait_for_sigstop): Improve comments and debug output.
12459 * linux-low.h (struct process_info): Doc improvement.
12460 * mem-break.c (delete_all_breakpoints): New.
12461 * mem-break.h (delete_all_breakpoints): New prototype.
12462 * thread-db.c (find_first_thread): New.
12463 (thread_db_create_event): Call it instead of
12464 thread_db_find_new_threads. Clean up unused variables.
12465 (maybe_attach_thread): Remove first thread handling.
12466 (thread_db_find_new_threads): Use find_first_thread.
12467 (thread_db_get_tls_address): Likewise.
12468
4105de34
DJ
124692007-06-27 Daniel Jacobowitz <dan@codesourcery.com>
12470
12471 * thread-db.c (thread_db_find_new_threads): Add prototype.
12472 (thread_db_create_event): Check for the main thread before adding
12473 a new thread.
12474 (maybe_attach_thread): Only enable event reporting if TID == 0.
12475 (thread_db_get_tls_address): Check for new threads.
12476
2b876972
DJ
124772007-06-20 Daniel Jacobowitz <dan@codesourcery.com>
12478
12479 * linux-low.c (linux_create_inferior): Try execv before execvp.
12480 * spu-low.c (spu_create_inferior): Likewise.
12481
7a245884
DJ
124822007-06-13 Mike Frysinger <vapier@gentoo.org>
12483
12484 * linux-low.c (linux_create_inferior): Change execv to execvp.
12485 * spu-low.c (spu_create_inferior): Likewies.
12486
117ce543
DJ
124872007-06-13 Daniel Jacobowitz <dan@codesourcery.com>
12488
12489 * Makefile.in (clean): Clean new files instead of deleted ones.
12490 (reg-mips.o, reg-mips.c, reg-mips64.o, reg-mips64.c): Delete.
12491 (mips-linux.o, mips-linux.c, mips64-linux.o, mips64-linux.c): New
12492 rules.
12493 * configure.srv: Specify XML files and new regformats for MIPS and
12494 MIPS64 GNU/Linux.
12495 * linux-mips-low.c (mips_num_regs): Set to only used registers.
12496 (mips_regmap): Do not fetch $0. Remove unused registers. Add
12497 an entry for the restart register.
12498 (mips_cannot_fetch_register, mips_cannot_store_register)
12499 (mips_reinsert_addr, mips_fill_fpregset, mips_store_fpregset): Update
12500 register names to match the XML descriptions.
12501 (mips_fill_gregset, mips_store_gregset): Likewise. Handle the
12502 restart register instead of $0.
12503
0e7f50da
UW
125042007-06-12 Ulrich Weigand <uweigand@de.ibm.com>
12505 Markus Deuling <deuling@de.ibm.com>
12506
12507 * remote-utils.c (decode_xfer_write): New function.
12508 * server.h (decode_xfer_write): Add prototype.
12509 * server.c (handle_query): Add PACKET_LEN argument. Support
12510 qXfer:spu:read and qXfer:spu:write packets.
12511 (main): Pass packet_len to handle_query.
12512 * spu-low.c (spu_target_ops): Add spu_proc_xfer_spu.
12513 * target.h (target_ops): Add qxfer_spu.
12514
374c1d38
UW
125152007-06-12 Ulrich Weigand <uweigand@de.ibm.com>
12516
12517 * spu-low.c (spu_proc_xfer_spu): Do not return failure when
12518 accessing non-seekable spufs files.
12519
bb63802a
UW
125202007-05-16 Markus Deuling <deuling@de.ibm.com>
12521
889bf7c5 12522 * server.c (handle_query): Add reply for qC packet.
bb63802a 12523
7390519e
PA
125242007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
12525 Leo Zayas <lerele@champenstudios@com>
12526
12527 * server.h (check_remote_input_interrupt_request): New function.
12528 * remote_utils.c (INVALID_DESCRIPTOR): New define.
12529 (remote_desc): Initialize with INVALID_DESCRIPTOR.
12530 (input_interrupt): Expose on USE_WIN32API too. Fix whitespace.
12531 (check_remote_input_interrupt_request): New function.
12532 * server.h (check_remote_input_interrupt_request): Declare.
3ecf0694 12533 * win32-low.c (winapi_DebugBreakProcess,
7390519e
PA
12534 winapi_GenerateConsoleCtrlEvent): New typedefs.
12535 (get_child_debug_event): Lower Win32 debug event polling from 1 sec
12536 to 250 ms.
12537 (win32_wait): Check for remote interrupt request
12538 with check_remote_input_interrupt_request.
12539 (win32_request_interrupt): New function.
12540 (win32_target_op): Set request_interrupt to win32_request_interrupt.
12541
34b34921
PA
125422007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
12543
12544 * win32-low.c (debug_registers_changed,
12545 debug_registers_used, CONTEXT_EXTENDED_REGISTERS,
12546 CONTEXT_FLOATING_POINT, CONTEXT_DEBUG_REGISTERS,
12547 CONTEXT_DEBUGGER, CONTEXT_DEBUGGER_DR): Delete.
12548 (thread_rec): Get context using the low target.
12549 (child_add_thread): Call thread_added on the low target,
12550 which does the same thing.
12551 (regptr): Delete.
12552 (do_initial_child_stuff): Remove debug registers references.
12553 Set context using the low target. Resume threads after
12554 setting the contexts.
12555 (child_continue): Remove dead variable. Remove debug
12556 registers references.
12557 (child_fetch_inferior_registers): Go through the low target.
12558 (do_child_store_inferior_registers): Remove.
12559 (child_store_inferior_registers): Go through the low target.
12560 (win32_resume): Remove debug registers references.
12561 Set context using the low target.
12562 (handle_exception): Change return type to void. Don't record
12563 context here. Set status to TARGET_WAITKIND_SPURIOUS on a
12564 first chance exception.
889bf7c5 12565 (get_child_debug_event): Change return type to void. Remove
34b34921
PA
12566 goto loop. Always return after waiting for debug event.
12567 (win32_wait): Convert to switch statement. Handle spurious
12568 events.
12569
12570 * win32-i386-low.c (debug_registers_changed,
12571 debug_registers_used): New.
12572 (initial_stuff): Rename to ...
12573 (i386_initial_stuff): ... this. Clear debug registers
12574 state variables.
12575 (store_debug_registers): Delete.
12576 (i386_get_thread_context): New.
12577 (load_debug_registers): Delete.
12578 (i386_set_thread_context): New.
12579 (i386_thread_added): New.
12580 (single_step): Rename to ...
12581 (i386_single_step): ... this.
12582 (do_fetch_inferior_registers): Rename to ...
12583 (i386_fetch_inferior_register): ... this.
12584 (i386_store_inferior_register): New.
12585 (the_low_target): Adapt to new interface.
12586
12587 * win32-arm-low.c (CONTEXT_FLOATING_POINT): Define.
12588 (arm_get_thread_context): New.
12589 (arm_set_thread_context): New.
12590 (regptr): New.
12591 (do_fetch_inferior_registers): Rename to ...
12592 (arm_fetch_inferior_register): ... this.
12593 (arm_store_inferior_register): New.
12594 (arm_wince_breakpoint): Reimplement as unsigned long.
12595 (arm_wince_breakpoint_len): Define.
12596 (the_low_target): Adapt to new interface.
12597
12598 * win32-low.h (target_ops): Remove regmap, store_debug_registers and
12599 load_debug_registers. Add get_thread_context, set_thread_context,
12600 thread_added and store_inferior_register. Rename
12601 fetch_inferior_registers to fetch_inferior_register.
12602 (regptr): Remove declaration.
12603
dd6953e1
PA
126042007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
12605
12606 * linux-low.c (linux_detach): Change return type to int. Return 0.
12607 * spu-low.c (spu_detach): Likewise.
12608
444d6139
PA
126092007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
12610
12611 * target.h (target_ops): Change return type of detach to int.
12612 Add join.
12613 (join_inferior): New.
12614 * server.c (main): Don't skip detach support on mingw32.
12615 If the inferior doesn't support detaching return error.
12616 Call join_inferior instead of using waitpid.
12617 * linux-low.c (linux_join): New.
12618 (linux_target_op): Add linux_join.
12619 * spu-low.c (spu_join): New.
12620 (spu_target_ops): Add spu_join.
12621 * win32-low.c (win32_detach): Adapt to new interface.
12622 Reopen current_process_handle before detaching. Issue a child
12623 resume before detaching.
12624 (win32_join): New.
12625 (win32_target_op): Add win32_join.
12626
1d5315fe
PA
126272007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
12628
12629 * win32-low.c (win32-attach): Fix return value.
12630 * target.h (target_ops): Describe ATTACH return values.
12631
bf914831
PA
126322007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
12633
12634 * win32-low.c (GETPROCADDRESS): Define.
12635 (winapi_DebugActiveProcessStop): Add WINAPI. typedef as pointer.
12636 (winapi_DebugSetProcessKillOnExit): Likewise.
12637 (win32_create_inferior): Force usage of ansi CreateProcessA.
12638 (win32_attach): Use GETPROCADDRESS.
12639 (win32_detach): Likewise.
12640
f72f3e60
PA
126412007-05-10 Pedro Alves <pedro_alves@portugalmail.pt>
12642
12643 * win32-low.c (win32_wait): Don't use WSTOPSIG.
12644
ed50f18f
PA
126452007-03-30 Pedro Alves <pedro_alves@portugalmail.pt>
12646
12647 * win32-low.c: Commit leftover changes from 2007-03-29.
12648
0c2ead7e
DJ
126492007-03-30 Daniel Jacobowitz <dan@codesourcery.com>
12650
12651 * i387-fp.c (struct i387_fsave, struct i387_fxsave): Make 16-bit
12652 fields short instead of int. Add explicit padding.
12653 (i387_cache_to_fsave): Remove unnecessary casts.
12654 (i387_fsave_to_cache): Doc fix.
12655 (i387_cache_to_fxsave): Remove unnecessary casts and masking.
12656
73725ff3
DJ
126572007-03-30 Daniel Jacobowitz <dan@codesourcery.com>
12658
12659 * i387-fp.c (i387_cache_to_fxsave): Reinitialize val2 before use.
12660 (i387_fxsave_to_cache): Check fp->ftag while building ftag value.
12661
d99f33d8
PA
126622007-03-29 Pedro Alves <pedro_alves@portugalmail.pt>
12663
12664 * configure.srv (arm*-*-mingw32ce*): Move near the other
12665 arm targets.
12666
68070c10
PA
126672007-03-29 Pedro Alves <pedro_alves@portugalmail.pt>
12668
2482afc6 12669 * configure.ac: Add errno checking.
68070c10
PA
12670 (AC_CHECK_HEADERS): Add errno.h, fcntl.h, signal.h,
12671 sys/file.h and malloc.h.
12672 (AC_CHECK_DECLS): Add perror.
12673 (srv_mingwce): Handle.
2482afc6 12674 * configure.srv (i[34567]86-*-cygwin*): Add
68070c10
PA
12675 win32-i386-low.o to srv_tgtobj.
12676 (i[34567]86-*-mingw*): Likewise.
12677 (arm*-*-mingw32ce*): Add case.
12678 * gdbreplay.c [HAVE_SYS_FILE_H, HAVE_SIGNAL_H,
12679 HAVE_FCNTL_H, HAVE_ERRNO_H, HAVE_MALLOC_H]: Check.
12680 [__MINGW32CE__] (strerror): New function.
12681 [__MINGW32CE__] (errno): Define to GetLastError.
12682 [__MINGW32CE__] (COUNTOF): New macro.
12683 (remote_open): Remove extra close call.
12684 * mem-break.c (delete_breakpoint_at): New function.
12685 * mem-break.h (delete_breakpoint_at): Declare.
12686 * remote-utils.c [HAVE_SYS_FILE_H, HAVE_SIGNAL_H,
12687 HAVE_FCNTL_H, HAVE_UNISTD_H, HAVE_ERRNO_H]: Check.
12688 [USE_WIN32API] (read, write): Add char* casts.
12689 * server.c [HAVE_UNISTD_H, HAVE_SIGNAL_H]: Check.
12690 * server.h: Include wincecompat.h on Windows CE.
12691 [HAVE_ERRNO_H]: Check.
12692 (perror): Declare if not declared.
12693 * utils.c: Add stdlib.h, errno.h and malloc.h includes.
12694 (perror_with_name): Remove errno declaration.
12695 * wincecompat.h: New.
12696 * wincecompat.c: New.
12697 * win32-low.h: New.
12698 * win32-arm-low.c: New.
12699 * win32-i386-low.c: New.
12700 (win32-low.c): Include mem-break.h and win32-low.h, and winnt.h.
12701 (OUTMSG2): Make it safe.
12702 (_T): New macro.
12703 (COUNTOF): New macro.
12704 (NUM_REGS): Get it from the low target.
12705 (CONTEXT_EXTENDED_REGISTERS, CONTEXT_FLOATING_POINT,
12706 CONTEXT_DEBUG_REGISTERS): Add fallbacks to 0.
12707 (thread_rec): Let low target handle debug registers.
12708 (child_add_thread): Likewise.
12709 (child_init_thread_list): Likewise.
12710 (continue_one_thread): Likewise.
12711 (regptr): New.
12712 (do_child_fetch_inferior_registers): Move to ...
12713 * win32-i386-low.c: ... here, and rename to ...
12714 (do_fetch_inferior_registers): ... this.
889bf7c5 12715 * win32-low.c (child_fetch_inferior_registers):
68070c10
PA
12716 Go through the low target.
12717 (do_child_store_inferior_registers): Use regptr.
12718 (strwinerror): New function.
12719 (win32_create_inferior): Handle Windows CE.
12720 Use strwinerror instead of strerror on Windows error
12721 codes. Add program to the error output.
12722 Don't close the main thread handle on Windows CE.
12723 (win32_attach): Use coredll.dll on Windows CE.
12724 (win32_kill): Close current process and current
12725 thread handles.
12726 (win32_detach): Use coredll.dll on Windows CE.
12727 (win32_resume): Let low target handle debug registers, and
12728 step request.
12729 (handle_exception): Add/Remove initial breakpoint. Avoid
12730 non-existant WSTOPSIG on Windows CE.
12731 (win32_read_inferior_memory): Cast to remove warning.
12732 (win32_arch_string): Go through the low target.
12733 (initialize_low): Call set_breakpoint_data with the low
12734 target's breakpoint.
12735 * win32-low.c (dr, FLAG_TRACE_BIT, FCS_REGNUM,
12736 FOP_REGNUM, mappings): Move to ...
12737 * win32-i386-low.c: ... here.
12738 * win32-low.c (win32_thread_info): Move to ...
12739 * win32-low.h: ... here.
12740 * Makefile.in (SFILES): Add win32-low.c, win32-i386-low.c,
12741 win32-arm-low.c and wincecompat.c.
12742 (all:): Add $EXEEXT.
12743 (install-only:): Likewise.
12744 (gdbserver:): Likewise.
12745 (gdbreplay:): Likewise.
12746 * config.in: Regenerate.
12747 * configure: Regenerate.
12748
41093d81
PA
127492007-03-28 Pedro Alves <pedro_alves@portugalmail.pt>
12750
12751 * win32-low.c: Rename typedef thread_info to
12752 win32_thread_info throughout.
12753
544afa54
PA
127542007-03-28 Pedro Alves <pedro_alves@portugalmail.pt>
12755
12756 * win32-i386-low.c: Rename to ...
12757 * win32-low.c: ... this.
12758 * configure.srv: Replace win32-i386-low.o with win32-low.o.
12759 * Makefile.in: Likewise.
12760
bce7165d
PA
127612007-03-27 Pedro Alves <pedro_alves@portugalmail.pt>
12762
12763 * remote-utils.c (monitor_output): Constify msg parameter.
12764 * server.h (monitor_output): Likewise.
12765 * win32-i386-low.c (handle_output_debug_string): New.
12766 (win32_kill): Handle OUTPUT_DEBUG_STRING_EVENT events using
12767 handle_output_debug_string.
12768 (get_child_debug_event): Likewise.
12769
506c7aa0
DJ
127702007-03-27 Mat Hostetter <mat@lcs.mit.edu>
12771
12772 * server.c (main): Correct strtoul check.
12773
42c81e2a
DJ
127742007-03-27 Jon Ringle <jon@ringle.org>
12775
12776 * linux-low.c: Check __ARCH_HAS_MMU__ also.
12777
9453113a
DJ
127782007-03-27 Brooks Moses <brooks.moses@codesourcery.com>
12779
12780 * Makefile.in: Add dummy "pdf" and "install-pdf" targets.
12781
64a69107
DJ
127822007-02-27 Daniel Jacobowitz <dan@codesourcery.com>
12783
12784 * terminal.h: Check HAVE_SGTTY_H.
12785
127862007-02-27 Mat Hostetter <mat@lcs.mit.edu>
6f8486da
DJ
12787
12788 * remote-utils.c (remote_open): Print out the assigned port number.
12789
c74d0ad8
DJ
127902007-02-26 Daniel Jacobowitz <dan@codesourcery.com>
12791
12792 * remote-utils.c (monitor_output): New function.
12793 * server.c (debug_threads): Define here.
12794 (monitor_show_help): New function.
12795 (handle_query): Handle qRcmd.
12796 (main): Do not handle 'd' packet.
12797 * server.h (debug_threads, remote_debug, monitor_output): Declare.
12798 * linux-low.c, spu-low.c, win32-i386-low.c: Remove definitions
12799 of debug_threads.
12800
de7c3b4a
PA
128012007-02-25 Pedro Alves <pedro_alves@portugalmail.pt>
12802
12803 * Makefile.in (EXEEXT): New.
12804 (clean): Use $(EXEEXT).
12805
ef57601b
PA
128062007-02-25 Pedro Alves <pedro_alves@portugalmail.pt>
12807
12808 * target.h (target_ops): Rename send_signal to request_interrupt,
12809 and remove enum target_signal parameter.
12810 * linux-low.c (linux_request_interrupt): Rename from
12811 linux_send_signal, and always send SIGINT.
12812 * spu-low.c (spu_request_interrupt): Rename from spu_send_signal,
12813 and always send SIGINT.
12814 * remote-utils.c (putpkt_binary): Call request_interrupt, instead
12815 of send_signal.
12816 (input_interrupt): Likewise.
12817
820f2bda
PA
128182007-02-25 Pedro Alves <pedro_alves@portugalmail.pt>
12819
12820 * server.c (get_features_xml): Check if target implemented
12821 arch_string.
12822 * win32-i386-low.c (win32_arch_string): New.
12823 (win32_target_ops): Add win32_arch_string as arch_string member.
12824
ab39bf24
UW
128252007-02-22 Markus Deuling <deuling@de.ibm.com>
12826
12827 * spu-low.c (spu_arch_string): New.
12828 (spu_target_ops): Add spu_arch_string.
12829
61ff6e04
DJ
128302007-02-16 Daniel Jacobowitz <dan@codesourcery.com>
12831
12832 * remote-utils.c: Remove HAVE_TERMINAL_H check.
12833 * configure.ac: Do not check for terminal.h.
12834 * configure, config.in: Regenerated.
12835
fb1e4ffc
DJ
128362007-02-08 Daniel Jacobowitz <dan@codesourcery.com>
12837
12838 * Makefile.in (OBS): Add $(XML_BUILTIN).
12839 (XML_DIR, XML_TARGET, XML_FILES, XML_BUILTIN): New.
12840 (clean): Update.
12841 (target.xml, xml-builtin.c, stamp-xml, arm-with-iwmmxt.o)
12842 (arm-with-iwmmxt.c): New.
12843 * config.in, configure: Regenerate.
12844 * configure.ac: Check for iWMMXt. Handle srv_xmltarget,
12845 srv_xmlbuiltin, and srv_xmlfiles. Define USE_XML.
12846 * configure.srv: Mention srv_xmltarget and srv_xmlfiles.
12847 (arm*-*-linux*): Add iWMMXt and regset support.
12848 * linux-arm-low.c (PTRACE_GETWMMXREGS, PTRACE_SETWMMXREGS): Define.
12849 (arm_fill_gregset, arm_store_gregset, arm_fill_wmmxregset)
12850 (arm_store_wmmxregset, target_regsets): New.
12851 * server.c (get_features_xml): Take annex argument. Check builtin
12852 XML documents.
12853 (handle_query): Handle multiple annexes.
12854
0f48aa01
DJ
128552007-01-29 Daniel Jacobowitz <dan@codesourcery.com>
12856
12857 * remote-utils.c [USE_WIN32API] (read, write): Define.
12858 (putpkt_binary, input_interrupt, readchar, getpkt): Use read and
12859 write.
12860
23181151
DJ
128612007-01-09 Daniel Jacobowitz <dan@codesourcery.com>
12862
12863 * linux-i386-low.c (the_low_target): Set arch_string.
12864 * linux-x86-64-low.c (the_low_target): Likewise.
12865 * linux-low.c (linux_arch_string): New.
12866 (linux_target_ops): Add it.
12867 * linux-low.h (struct linux_target_ops): Add arch_string.
12868 * server.c (write_qxfer_response): Use const void * for DATA.
12869 (get_features_xml): New.
12870 (handle_query): Handle qXfer:features:read. Report it for qSupported.
12871 * target.h (struct target_ops): Add arch_string method.
12872
9d606399
DJ
128732007-01-03 Denis Pilat <denis.pilat@st.com>
12874 Daniel Jacobowitz <dan@codesourcery.com>
12875
12876 * linux-low.c (linux_kill): Handle being called with no threads.
12877 * win32-i386-low.c (win32_kill): Likewise.
12878 (get_child_debug_event): Clear current_process_handle.
12879
128802006-12-30 Denis PILAT <denis.pilat@st.com>
8264bb58
DJ
12881 Daniel Jacobowitz <dan@codesourcery.com>
12882
12883 * remote-utils.c (remote_open): Check the type of specified
12884 serial port devices before opening them.
12885 * server.c (main): Kill the inferior if an error occurs during
12886 the first remote_open.
12887
a5e13d24
DJ
128882006-12-05 Markus Deuling <deuling@de.ibm.com>
12889
12890 * README: Update supported targets.
12891
186947f7
DJ
128922006-11-28 Daniel Jacobowitz <dan@codesourcery.com>
12893
12894 * Makefile.in (clean): Remove reg-mips64.c.
12895 (reg-mips64.c, reg-mips64.o): New rules.
12896 * configure.srv: Handle mips64. Include regset support for mips.
12897 * linux-mips-low.c (union mips_register): New.
12898 (mips_get_pc, mips_set_pc, mips_reinsert_addr): Use it.
12899 (mips_breakpoint, mips_breakpoint_at): Use int.
12900 (mips_collect_register, mips_supply_register)
12901 (mips_collect_register_32bit, mips_supply_register_32bit)
12902 (mips_fill_gregset, mips_store_gregset, mips_fill_fpregset)
12903 (mips_store_fpregset, target_regsets): New.
12904 * thread-db.c (thread_db_get_tls_address): Use uintptr_t.
12905
a13e2c95
UW
129062006-11-22 Ulrich Weigand <uweigand@de.ibm.com>
12907
12908 * configure.srv: Add target "spu*-*-*".
12909 * Makefile.in (clean): Remove reg-spu.c.
12910 (reg-spu.c, reg-spu.o, spu-low.o): Add dependencies.
12911 * spu-low.c: New file.
12912
cb7283db
DJ
129132006-11-16 Daniel Jacobowitz <dan@codesourcery.com>
12914
12915 * configure.ac: Correct td_thr_tls_get_addr test.
12916 * configure: Regenerated.
12917
89be2091
DJ
129182006-11-16 Daniel Jacobowitz <dan@codesourcery.com>
12919
12920 * linux-low.c (linux_wait_for_event): Reformat. Use the
12921 pass_signals array.
12922 * remote-utils.c (decode_address_to_semicolon): New.
12923 * server.c (pass_signals, handle_general_set): New.
12924 (handle_query): Mention QPassSignals for qSupported.
12925 (main): Call handle_general_set.
12926 * server.h (pass_signals, decode_address_to_semicolon): New.
12927
000ef4f0
DJ
129282006-11-06 Daniel Jacobowitz <dan@codesourcery.com>
12929
12930 * server.c (handle_query): Correct error handling for read_auxv.
12931
b7149293
UW
129322005-10-19 Ulrich Weigand <uweigand@de.ibm.com>
12933
12934 * configure.srv [s390-*-linux*, s390x-*-linux*]: Set srv_linux_regsets
12935 and srv_linux_thread_db to yes.
12936 * linux-s390-low.c (s390_fill_gregset): New function.
12937 (target_regsets): Define data structure.
12938
dae5f5cf
DJ
129392006-10-17 Daniel Jacobowitz <dan@codesourcery.com>
12940
12941 * acinclude.m4 (SRV_CHECK_TLS_GET_ADDR): New.
12942 * configure.ac: Use it. Define HAVE_TD_THR_TLS_GET_ADDR.
12943 * config.in, configure: Regenerated.
12944 * inferiors.c (gdb_id_to_thread): New function.
12945 (gdb_id_to_thread_id): Use it.
12946 * linux-low.c (linux_target_ops): Use thread_db_get_tls_address.
12947 * linux-low.h (struct process_info): Add th member.
12948 (thread_db_get_tls_address): New prototype.
12949 * remote-utils.c (decode_address): Make non-static.
12950 * server.c (handle_query): Handle qGetTLSAddr.
12951 * server.h (gdb_id_to_thread, decode_address): New prototypes.
12952 * target.h (struct target_ops): Add get_tls_address.
12953 * thread-db.c (maybe_attach_thread): Save the thread handle.
12954 (thread_db_get_tls_address): New.
12955
32ca6d61
DJ
129562006-09-28 Daniel Jacobowitz <dan@codesourcery.com>
12957
12958 * linux-low.c (PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
12959 (linux_resume_one_process): Take a siginfo_t *. Update all
12960 callers. Queue it if necessary. Use PTRACE_SETSIGINFO.
12961 (struct pending_signals): Add a siginfo_t.
12962 (linux_wait_for_process): Always set last_status.
12963 (linux_wait_for_event): Use PTRACE_GETSIGINFO.
12964 (linux_queue_one_thread): Use PTRACE_GETSIGINFO.
12965 * linux-low.h (struct process_info): Add last_status.
12966
5ffff7c1
DJ
129672006-09-21 Daniel Jacobowitz <dan@codesourcery.com>
12968
12969 * remote-utils.c (try_rle): New function.
12970 (putpkt_binary): Use it.
12971
8695c747
DJ
129722006-08-19 Daniel Jacobowitz <dan@codesourcery.com>
12973
12974 * Makefile.in (clean): Clean reg-x86-64-linux.c.
12975 (reg-x86-64-linux.o, reg-x86-64-linux.c): New.
12976 * configure.srv (x86_64-*-linux*): Use reg-x86-64-linux.o.
12977 * linux-x86-64-low.c (x86_64_regmap): Include ORIG_RAX.
12978 (x86_64_fill_gregset, x86_64_store_gregset): Skip floating
12979 point registers.
12980
290fadea
RS
129812006-08-08 Richard Sandiford <richard@codesourcery.com>
12982
12983 * server.c (terminal_fd): New variable.
12984 (old_foreground_pgrp): Likewise.
12985 (restore_old_foreground_pgrp): New function.
12986 (start_inferior): Record the terminal file descriptor in terminal_fd
12987 and its original foreground group in old_foreground_pgrp. Register
12988 restore_old_foreground_pgrp with atexit().
12989
9f2e1e63
DJ
129902006-07-26 Daniel Jacobowitz <dan@codesourcery.com>
12991
12992 * server.c (handle_query): Correct qPart to qXfer.
12993
b80864fb
DJ
129942006-07-22 Daniel Jacobowitz <dan@codesourcery.com>
12995
12996 * configure.ac: Check for more headers which are missing on
12997 Windows. Automatically supply -lwsock32 and USE_WIN32API.
12998 * configure.srv: Add Cygwin and mingw32.
12999 * remote-utils.c: Don't include headers unconditionally which
13000 are missing on mingw32. Include <winsock.h> for mingw32.
13001 (remote_open): Adjust for mingw32 support. Flush
13002 standard error after writing to it.
13003 (remote_close, putpkt_binary, input_interrupt, block_async_io)
13004 (unblock_async_io, enable_async_io, disable_async_io)
13005 (readchar, getpkt): Update for Winsock support.
13006 (prepare_resume_reply): Expect a protocol signal number.
13007 * server.c: Disable <sys/wait.h> on mingw32.
13008 (start_inferior): Adjust for mingw32 support. Flush
13009 standard error after writing to it.
13010 (attach_inferior): Likewise. Use protocol signal
13011 numbers.
13012 (main): Skip 'D' packet on mingw32. Use protocol signal numbers
13013 and names.
13014 * win32-i386-low.c: New file.
13015 * Makefile.in (XM_CLIBS): Set.
13016 (gdbserver, gdbreplay): Use $(INTERNAL_CFLAGS).
13017 (win32-i386-low.o): New dependency rule.
13018 * linux-low.c (linux_wait): Use target signal numbers.
13019 * target.h (struct target_ops): Doc fix.
13020 * server.h (target_signal_to_name): New prototype.
13021 * gdbreplay.c: Don't include headers unconditionally which
13022 are missing on mingw32. Include <winsock.h> for mingw32.
13023 (remote_close, remote_open): Adjust for Winsock support.
13024 * configure, config.in: Regenerated.
13025
0876f84a
DJ
130262006-07-12 Daniel Jacobowitz <dan@codesourcery.com>
13027
13028 * server.c (decode_xfer_read, write_qxfer_response): New.
13029 (handle_query): Take a packet length argument. Handle
13030 qXfer:auxv:read instead of qPart:auxv:read. Mention it in
13031 the qSupported response.
13032 (main): Update call to handle_query.
13033
01f9e8fa
DJ
130342006-06-22 Daniel Jacobowitz <dan@codesourcery.com>
13035
13036 * remote-utils.c (remote_escape_output, remote_unescape_input): New.
13037 (putpkt_binary): Renamed from putpkt and adjusted for binary
13038 data.
13039 (putpkt): New wrapper for putpkt_binary.
13040 (readchar): Don't mask off the high bit.
13041 (decode_X_packet): New function.
13042 * server.c (main): Call putpkt_binary if a handler sets the packet
13043 length. Save the length of the incoming packet. Handle 'X'.
13044 * server.h (gdb_byte, remote_escape_output, decode_X_packet): New.
13045
be2a5f71
DJ
130462006-06-21 Daniel Jacobowitz <dan@codesourcery.com>
13047
13048 * server.c (handle_query): Handle qSupported.
13049
ea025f5f
DJ
130502006-05-30 Daniel Jacobowitz <dan@codesourcery.com>
13051
13052 * remote-utils.c (all_symbols_looked_up): New variable.
13053 (look_up_one_symbol): Check it.
13054 * server.h (look_up_one_symbol): New declaration.
13055 * thread-db.c (thread_db_init): Set all_symbols_looked_up.
13056
9308fc88
DJ
130572006-05-30 Daniel Jacobowitz <dan@codesourcery.com>
13058
13059 * Makefile.in (linux-arm-low.o): Update dependencies.
66f338c7 13060 * linux-arm-low.c: Include "gdb_proc_service.h".
9308fc88
DJ
13061 (PTRACE_GET_THREAD_AREA): Define.
13062 (ps_get_thread_area): New function.
13063
52fb6437
NS
130642006-05-09 Nathan Sidwell <nathan@codesourcery.com>
13065
13066 * configure.srv (m68k*-*-uclinux*): New target.
13067 * linux-low.c (linux_create_inferior): Use vfork on mmuless systems.
13068 (linux_resume_one_process): Remove extraneous cast.
13069 (linux_read_offsets): New.
13070 (linux_target_op): Add linux_read_offsets on mmuless systems.
13071 * server.c (handle_query): Add qOffsets logic.
13072 * target.h (struct target_ops): Add read_offsets.
13073
21b0f40c
DJ
130742006-03-15 Daniel Jacobowitz <dan@codesourcery.com>
13075
13076 * linux-mips-low.c: Include <sys/ptrace.h> and "gdb_proc_service.h".
13077 (PTRACE_GET_THREAD_AREA): Define.
13078 (ps_get_thread_area): New function.
13079 * Makefile.in (linux-i386-low.o, linux-mips-low.o)
13080 (linux-x86-64-low.o): Update.
13081
0050a760
DJ
130822006-03-15 Daniel Jacobowitz <dan@codesourcery.com>
13083
13084 * configure.ac: Remove checks for prfpregset_t.
13085 * gdb_proc_service.h: New file.
13086 * linux-i386-low.c, linux-x86-64-low.c, thread-db.c: Use the
13087 new "gdb_proc_service.h".
13088 * proc-service.c: Likewise.
13089 (ps_pglobal_lookup, ps_pdread, ps_pdwrite): Use psaddr_t.
13090 (ps_lgetfpregs, ps_lsetfpregs): Use a void* argument.
13091 * Makefile.in (gdb_proc_service_h): Updated.
13092 * configure, config.in: Regenerated.
13093
b92a518e
DJ
130942006-03-03 Daniel Jacobowitz <dan@codesourcery.com>
13095
13096 * remote-utils.c (prepare_resume_reply): Move declaration
13097 of gdb_id_from_wait to the top of the block.
13098
545587ee
DJ
130992006-02-15 Daniel Jacobowitz <dan@codesourcery.com>
13100
13101 * linux-low.c (regsets_store_inferior_registers): Read the regset
13102 from the target before filling it.
13103
9db87ebd
DJ
131042006-02-08 Daniel Jacobowitz <dan@codesourcery.com>
13105
13106 * server.c (attach_inferior): Return SIGTRAP for a successful
13107 attach.
13108
dd24457d
DJ
131092006-02-01 Daniel Jacobowitz <dan@codesourcery.com>
13110
13111 * Makefile.in (OBS): Add version.o.
13112 (STAGESTUFF): Delete.
13113 (version.o): Add dependencies.
13114 (version.c): Replace rule.
13115 (clean): Remove version.c.
13116 * server.c (gdbserver_version): New.
13117 (gdbserver_usage): Use printf.
13118 (main): Handle --version and --help.
13119 * server.h (version, host_name): Add declarations.
13120
6f0f660e
EZ
131212005-12-23 Eli Zaretskii <eliz@gnu.org>
13122
889bf7c5
PA
13123 * linux-arm-low.c:
13124 * linux-arm-low.c:
13125 * inferiors.c:
13126 * i387-fp.h:
13127 * i387-fp.c:
13128 * gdbreplay.c:
13129 * regcache.c:
13130 * proc-service.c:
13131 * mem-break.h:
13132 * mem-break.c:
13133 * linux-x86-64-low.c:
13134 * linux-sh-low.c:
13135 * linux-s390-low.c:
13136 * linux-ppc64-low.c:
13137 * linux-ppc-low.c:
13138 * linux-mips-low.c:
13139 * linux-m68k-low.c:
13140 * linux-m32r-low.c:
13141 * linux-low.h:
13142 * linux-low.c:
13143 * linux-ia64-low.c:
13144 * linux-i386-low.c:
13145 * linux-crisv32-low.c:
13146 * thread-db.c:
13147 * terminal.h:
13148 * target.h:
13149 * target.c:
13150 * server.h:
13151 * server.c:
13152 * remote-utils.c:
13153 * regcache.h:
13154 * utils.c:
13155 * Makefile.in:
13156 * configure.ac:
6f0f660e
EZ
13157 * gdbserver.1: Add (C) after Copyright. Update the FSF
13158 address.
13159
9d1fb177
DJ
131602005-11-13 Daniel Jacobowitz <dan@codesourcery.com>
13161
13162 * linux-arm-low.c (arm_eabi_breakpoint): New variable.
13163 (arm_breakpoint_at): Recognize both breakpoints.
13164 (the_low_target): Use the correct breakpoint instruction.
13165
011a70c2
DJ
131662005-11-02 Daniel Jacobowitz <dan@codesourcery.com>
13167
13168 * configure.srv (x86_64-*-linux*): Turn on thread_db support.
13169 * linux-x86-64-low.c (x86_64_breakpoint, x86_64_breakpoint_len)
13170 (x86_64_get_pc, x86_64_set_pc, x86_64_breakpoint_at): New.
13171 (the_low_target): Update.
13172
7fb85e41
AS
131732005-10-25 Andreas Schwab <schwab@suse.de>
13174
13175 * server.c (main): Allocate mem_buf with PBUFSIZ bytes.
13176
13177 * linux-ia64-low.c (ia64_regmap): Remove NAT registers.
13178 (ia64_num_regs): Reduce to 462.
13179
3db0444b
DJ
131802005-09-17 Daniel Jacobowitz <dan@codesourcery.com>
13181
13182 * acinclude.m4: Correct quoting.
13183 * aclocal.m4: Regenerated.
13184
13185 Suggested by SZOKOVACS Robert <szo@ies.hu>:
13186 * thread-db.c (thread_db_err_str): Handle TD_VERSION.
13187 (thread_db_init): Call thread_db_err_str.
13188 * configure.ac: Check for TD_VERSION.
13189 * config.in, configure: Regenerated.
13190
bee0189a
DJ
131912005-07-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
13192
13193 * server.h (error, fatal, warning): Add ATTR_FORMAT.
13194
e9d25b98
DJ
131952005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
13196
13197 * configure.ac: Define HAVE_LINUX_REGSETS even if PTRACE_GETREGS
13198 is not available. Define HAVE_PTRACE_GETREGS if it is.
13199 * config.in, configure: Regenerated.
13200 * configure.srv: Set srv_linux_regsets for PowerPC and PowerPC64.
13201 * linux-i386-low.c, linux-m68k-low.c: Update to use
13202 HAVE_PTRACE_GETREGS.
13203 * linux-low.c (regsets_fetch_inferior_registers)
13204 (regsets_store_inferior_registers): Only return 0 if we processed
13205 GENERAL_REGS.
13206 * linux-ppc-low.c (ppc_fill_gregset, target_regsets): New.
13207 * linux-ppc64-low.c (ppc_fill_gregset, target_regsets): New.
13208
a06660f7
DJ
132092005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
13210
13211 * inferiors.c (struct thread_info): Add gdb_id.
13212 (add_thread): Add gdb_id argument.
13213 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id): New.
13214 * linux-low.c (linux_create_inferior, linux_attach_lwp): Update
13215 calls to add_thread.
13216 * remote-utils.c (prepare_resume_reply: Use thread_to_gdb_id.
13217 * server.c (handle_query): Use thread_to_gdb_id.
13218 (handle_v_cont, main): Use gdb_id_to_thread_id.
13219 * server.h (add_thread): Update prototype.
13220 (thread_id_to_gdb_id, thread_to_gdb_id, gdb_id_to_thread_id): New
13221 prototypes.
13222
5a1f5858
DJ
132232005-07-13 Daniel Jacobowitz <dan@codesourcery.com>
13224
13225 * linux-low.c (fetch_register, usr_store_inferior_registers): Handle
13226 left-padded registers.
13227 * linux-low.h (struct linux_target_ops): Add left_pad_xfer.
13228 * linux-ppc64-low.c (the_low_target): Set left_pad_xfer.
13229
e122f1f5
SE
132302005-07-01 Steve Ellcey <sje@cup.hp.com>
13231
13232 * configure.ac (BFD_NEED_DECLARATION): Replace with AC_CHECK_DECLS.
13233 * configure: Regenerate.
13234 * config.in: Regenerate.
13235 * server.h (NEED_DECLARATION_STRERROR):
13236 Replace with !HAVE_DECL_STRERROR.
13237
d592fa2f
DJ
132382005-06-16 Daniel Jacobowitz <dan@codesourcery.com>
13239
13240 * linux-low.c (linux_wait, linux_send_signal): Don't test
13241 an unsigned long variable for > 0 if it could be MAX_ULONG.
13242 * server.c (myresume): Likewise.
13243 * target.c (set_desired_inferior): Likewise.
13244
ccbd4912
MK
132452005-06-13 Mark Kettenis <kettenis@gnu.org>
13246
13247 * configure.ac: Simplify and improve check for socklen_t.
13248 * configure, config.in: Regenerate.
13249
f450004a
DJ
132502005-06-12 Daniel Jacobowitz <dan@codesourcery.com>
13251
13252 * acconfig.h: Remove.
13253 * configure.ac: Add a test for socklen_t. Use three-argument
13254 AC_DEFINE throughout.
13255 * config.in: Regenerated using autoheader 2.59.
13256 * configure: Regenerated.
13257
13258 * gdbreplay.c (socklen_t): Provide a default.
13259 (remote_open): Use socklen_t.
13260 * remote-utils.c (socklen_t): Provide a default.
13261 (remote_open): Use socklen_t.
13262 (convert_int_to_ascii, convert_ascii_to_int, decode_M_packet): Use
13263 unsigned char.
13264
13265 * i387-fp.c (struct i387_fsave, struct i387_fxsave): Use unsigned
13266 char for buffers.
13267 * linux-low.c (linux_read_memory, linux_write_memory)
13268 (linux_read_auxv): Likewise.
13269 * mem-break.c (breakpoint_data, set_breakpoint_data, check_mem_read)
13270 (check_mem_write): Likewise.
13271 * mem-break.h (set_breakpoint_data, check_mem_read, check_mem_write):
13272 Likewise.
13273 * regcache.c (struct inferior_rgcache_data, registers_to_string)
13274 (registers_from_string, register_data): Likewise.
13275 * server.c (handle_query, main): Likewise.
13276 * server.h (convert_ascii_to_int, convert_int_to_ascii)
13277 (decode_M_packet): Likewise.
13278 * target.c (read_inferior_memory, write_inferior_memory): Likewise.
13279 * target.h (struct target_ops): Update read_memory, write_memory,
13280 and read_auxv.
13281 (read_inferior_memory, write_inferior_memory): Update.
13282 * linux-low.h (struct linux_target_ops): Change type of breakpoint
13283 to unsigned char *.
13284 * linux-arm-low.c, linux-cris-low.c, linux-crisv32-low.c,
13285 linux-i386-low.c, linux-m32r-low.c, linux-m68k-low.c,
13286 linux-mips-low.c, linux-ppc-low.c, linux-ppc64-low.c,
13287 linux-s390-low.c, linux-sh-low.c: Update for changes in
13288 read_inferior_memory and the_low_target->breakpoint.
13289
eee84df1
DJ
132902005-05-28 Daniel Jacobowitz <dan@codesourcery.com>
13291
13292 * Makefile.in (SFILES): Add linux-ppc64-low.c.
13293 (linux-ppc64-low.o, reg-ppc64.c, reg-ppc64.o): New targets.
13294 * configure.srv: Add powerpc64-*-linux*.
13295 * linux-ppc64-low.c: New file.
13296
45b134e5
OF
132972005-05-23 Orjan Friberg <orjanf@axis.com>
13298
13299 * linux-cris-low.c: New file with support for CRIS.
13300 * linux-crisv32-low.c: Ditto for CRISv32.
13301 * Makefile.in (SFILES): Add linux-cris-low.c, linux-crisv32-low.c.
13302 (clean): Add reg-cris.c and reg-crisv32.c.
889bf7c5 13303 Add linux-cris-low.o, linux-crisv32-low.o, reg-cris.o, reg-cris.c,
45b134e5
OF
13304 reg-crisv32.o, and reg-crisv32.c to make rules.
13305 * configure.srv: Add cris-*-linux* and crisv32-*-linux* to list of
13306 recognized targets.
13307
48d93c75
UW
133082005-05-16 Ulrich Weigand <uweigand@de.ibm.com>
13309
13310 * linux-low.c (fetch_register): Ensure buffer size is a multiple
13311 of sizeof (PTRACE_XFER_TYPE).
13312 (usr_store_inferior_registers): Likewise. Zero out excess bytes.
13313
e013ee27
OF
133142005-05-12 Orjan Friberg <orjanf@axis.com>
13315
889bf7c5 13316 * target.h (struct target_ops): Add insert_watchpoint,
e013ee27
OF
13317 remove_watchpoint, stopped_by_watchpoint, stopped_data_address function
13318 pointers for hardware watchpoint support.
13319 * linux-low.h (struct linux_target_ops): Ditto.
13320 * linux-low.c (linux_insert_watchpoint, linux_remove_watchpoint)
13321 (linux_stopped_by_watchpoint, linux_stopped_data_address): New. Add
13322 to linux_target_ops.
13323 * remote-utils.c (prepare_resume_reply): Add watchpoint information to
13324 reply packet.
13325 * server.c (main): Recognize 'Z' and 'z' packets.
13326
b0ded00b
UW
133272005-05-10 Ulrich Weigand <uweigand@de.ibm.com>
13328
13329 * linux-s390-low.c (s390_breakpoint, s390_breakpoint_len): Define.
13330 (s390_get_pc, s390_set_pc, s390_breakpoint_at): New functions.
13331 (the_low_target): Add new members.
13332
8643e2ad
DJ
133332005-05-04 Daniel Jacobowitz <dan@codesourcery.com>
13334
13335 * proc-service.c (ps_lgetregs): Search all_processes instead of
13336 all_threads.
13337
fc620387
DJ
133382005-05-04 Daniel Jacobowitz <dan@codesourcery.com>
13339
13340 * server.c (start_inferior): Change return type to int.
13341 (attach_inferior): Change sigptr to int *.
13342 (handle_v_cont, handle_v_requests): Change signal to int *.
13343 (main): Change signal to int.
13344
133452005-04-15 Kei Sakamoto <sakamoto.kei@renesas.com>
7cfbc4a0
KI
13346
13347 * Makefile.in: Add linux-m32r-low.o, reg-m32r.c and reg-m32r.o.
13348 * configure.srv: Add m32r*-*-linux*.
13349 * linux-m32r-low.c: New file.
13350
e0e76420
DJ
133512005-03-04 Daniel Jacobowitz <dan@codesourcery.com>
13352
13353 * Makefile.in (stamp-h): Set CONFIG_HEADERS explicitly.
13354
a1928bad
DJ
133552005-03-03 Daniel Jacobowitz <dan@codesourcery.com>
13356
13357 * inferiors.c (change_inferior_id, add_thread, find_inferior_id):
13358 Take unsigned long arguments for PIDs.
13359 * linux-low.c (add_process, linux_attach_lwp, linux_attach)
13360 (linux_thread_alive, linux_wait_for_event, kill_lwp, send_sigstop)
13361 (wait_for_sigstop, linux_resume_one_process)
13362 (regsets_fetch_inferior_registers, linux_send_signal)
13363 (linux_read_auxv): Likewise. Update the types of variables holding
13364 PIDs. Update format string specifiers.
13365 * linux-low.h (struct process_info, linux_attach_lwp): Likewise.
13366 * remote-utils.c (prepare_resume_reply): Likewise.
13367 * server.c (cont_thread, general_thread, step_thread)
13368 (thread_from_wait, old_thread_from_wait, signal_pid): Change type to
13369 unsigned long.
13370 (handle_query): Update format specifiers.
13371 (handle_v_cont, main): Use strtoul for thread IDs.
13372 * server.h (struct inferior_list_entry): Use unsigned long for ID.
13373 (add_thread, find_inferior_id, change_inferior_id, cont_thread)
13374 (general_thread, step_thread, thread_from_wait)
13375 (old_thread_from_wait): Update.
13376 * target.h (struct thread_resume): Use unsigned long for THREAD.
13377 (struct target_ops): Use unsigned long for arguments to attach and
13378 thread_alive.
13379
dcdb98d2
DJ
133802005-02-24 Daniel Jacobowitz <dan@codesourcery.com>
13381
13382 * acinclude.m4: Include bfd/bfd.m4 directly.
13383 * configure.ac: Use AC_ARG_PROGRAM. Suggested by Aron Griffis
13384 <agriffis@toolchain.org>.
13385 * aclocal.m4, configure: Regenerated.
13386
bec39cab
AC
133872005-01-07 Andrew Cagney <cagney@gnu.org>
13388
13389 * configure.ac: Rename configure.in, require autoconf 2.59.
13390 * configure: Re-generate.
13391
434c4c77
DJ
133922004-12-08 Daniel Jacobowitz <dan@debian.org>
13393
13394 * acinclude.m4 (SRV_CHECK_THREAD_DB): Add ps_get_thread_area. Reset
13395 LIBS when finished.
13396 * aclocal.m4: Regenerated.
13397 * configure: Regenerated.
13398
db1d3e1b
AS
133992004-11-21 Andreas Schwab <schwab@suse.de>
13400
13401 * linux-m68k-low.c (m68k_num_gregs): Define.
13402 (m68k_fill_gregset, m68k_store_gregset, m68k_fill_fpregset)
13403 (m68k_store_fpregset, target_regsets) [HAVE_LINUX_REGSETS]: New.
13404 (m68k_breakpoint, m68k_breakpoint_len, m68k_get_pc, m68k_set_pc)
13405 (m68k_breakpoint_at): New. Add to the_low_target.
13406
13407 * configure.srv (m68*-*-linux*): Set srv_linux_regsets and
13408 srv_linux_thread_db to yes.
13409
43360365
JB
134102004-10-20 Joel Brobecker <brobecker@gnat.com>
13411
13412 * linux-x86-64-low.c (ARCH_SET_GS): Add definition if missing.
13413 (ARCH_SET_FS): Likewise.
13414 (ARCH_GET_FS): Likewise.
13415 (ARCH_GET_GS): Likewise.
13416
fd500816
DJ
134172004-10-16 Daniel Jacobowitz <dan@debian.org>
13418
13419 * linux-i386-low.c (ps_get_thread_area): New.
13420 * linux-x86-64-low.c (ps_get_thread_area): New.
13421 * linux-low.c: Include <sys/syscall.h>.
13422 (linux_kill_one_process): Don't kill the first thread here.
13423 (linux_kill): Kill the first thread here.
13424 (kill_lwp): New function.
13425 (send_sigstop, linux_send_signal): Use it.
13426 * proc-service.c: Clean up #ifdefs.
13427 (fpregset_info): Delete.
13428 (ps_lgetregs): Update and enable implementation.
13429 (ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs): Remove disabled
13430 implementations.
13431 * remote-utils.c (struct sym_cache, symbol_cache): New.
13432 (input_interrupt): Print a clearer message.
13433 (async_io_enabled): New variable.
13434 (enable_async_io, disable_async_io): Use it. Update comments.
13435 (look_up_one_symbol): Use the symbol cache.
13436 * thread-db.c (thread_db_look_up_symbols): New function.
13437 (thread_db_init): Update comments. Call thread_db_look_up_symbols.
13438
f6de3c42
DJ
134392004-10-16 Daniel Jacobowitz <dan@debian.org>
13440
13441 * configure.in: Test for -rdynamic.
13442 * configure: Regenerated.
13443 * Makefile (INTERNAL_LDFLAGS): New.
13444 (gdbserver, gdbreplay): Use it.
13445
2c0fc042
AC
134462004-09-02 Andrew Cagney <cagney@gnu.org>
13447
13448 * Makefile.in (TAGS): Replace TM_FILE with DEPRECATED_TM_FILE.
13449
075b3282
DJ
134502004-03-23 Daniel Jacobowitz <drow@mvista.com>
13451
13452 * linux-low.c (linux_wait): Clear all_processes list also.
13453
fa6a77dc
DJ
134542004-03-12 Daniel Jacobowitz <drow@mvista.com>
13455
13456 * linux-low.c: Include <errno.h>. Remove extern declaration of
13457 errno.
13458
6d782a97
DJ
134592004-03-12 Daniel Jacobowitz <drow@mvista.com>
13460
13461 * gdbreplay.c, server.h, utils.c: Update copyright years.
13462
3a7fb99b
DJ
134632004-03-04 Nathan J. Williams <nathanw@wasabisystems.com>
13464
13465 * server.c (main): Print child status or termination signal from
13466 variable 'signal', not 'sig'.
13467
c3e735a6
DJ
134682004-03-04 Nathan J. Williams <nathanw@wasabisystems.com>
13469
13470 * linux-low.c (linux_read_memory): Change return type to
13471 int. Check for and return error from ptrace().
13472 * target.c (read_inferior_memory): Change return type to int. Pass
13473 back return status from the_target->read_memory().
13474 * target.h (struct target_ops): Adapt *read_memory() prototype.
13475 Update comment.
13476 (read_inferior_memory): Adapt prototype.
13477 * server.c (main): Return an error packet if
13478 read_inferior_memory() returns an error.
13479
a59d1c82
DJ
134802004-03-04 Daniel Jacobowitz <drow@mvista.com>
13481
13482 * Makefile.in (distclean): Remove config.h, stamp-h, and config.log.
13483 Unify with other clean targets.
13484
dc3f8883
DJ
134852004-02-29 Daniel Jacobowitz <drow@mvista.com>
13486
13487 * server.c (handle_v_cont): Call set_desired_inferior.
13488
89a208da
DJ
134892004-02-29 Daniel Jacobowitz <drow@mvista.com>
13490
13491 * remote-utils.c (prepare_resume_reply): Always supply "thread:".
13492
62ea82f5
DJ
134932004-02-29 Daniel Jacobowitz <drow@mvista.com>
13494
13495 * linux-low.c (linux_wait): Unblock async I/O.
13496 (linux_resume): Block and enable async I/O.
13497 * remote-utils.c (block_async_io, unblock_async_io): New functions.
13498 * server.h (block_async_io, unblock_async_io): Add prototypes.
13499
6910d122
DJ
135002004-02-29 Daniel Jacobowitz <drow@mvista.com>
13501
13502 * remote-utils.c (remote_open): Print a status notice after
13503 opening a TCP port.
13504 * server.c (attach_inferior): Print a status notice after
13505 attaching.
13506
135072004-02-29 Daniel Jacobowitz <drow@mvista.com>
d677d77d
DJ
13508
13509 * linux-arm-low.c (arm_get_pc): Print out stop PC in debug mode.
13510
c89dc5d4
DJ
135112004-02-26 Daniel Jacobowitz <drow@mvista.com>
13512
13513 * remote-utils.c (write_enn): Use "E01" instead of "ENN" for the
13514 error packet.
13515 * server.c, target.h: Update copyright years.
13516
4b8dad4a
RM
135172004-02-25 Roland McGrath <roland@redhat.com>
13518
13519 * target.h (struct target_ops): New member `read_auxv'.
13520 * server.c (handle_query): Handle qPart:auxv:read: query using that.
13521 * linux-low.c (linux_read_auxv): New function.
13522 (linux_target_ops): Initialize `read_auxv' member to that.
13523
d7446758
JB
135242004-02-17 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
13525
13526 Committed by Jim Blandy <jimb@redhat.com>.
13527
13528 * linux-s390-low.c (s390_num_regs): Update.
4b8dad4a 13529 (s390_regmap): Remove control registers. Use __s390x__ predefine
d7446758
JB
13530 instead of GPR_SIZE to distiguish s390 and s390x targets.
13531
5544ad89
DJ
135322004-01-31 Daniel Jacobowitz <drow@mvista.com>
13533
13534 * linux-low.c: Update copyright year.
13535 (check_removed_breakpoint): Clear pending_is_breakpoint.
13536 (linux_set_resume_request, linux_queue_one_thread)
13537 (resume_status_pending_p): New functions.
13538 (linux_continue_one_thread): Use process->resume.
13539 (linux_resume): Only resume threads if there are no pending events.
13540 * linux-low.h (struct process_info): Add resume request
13541 pointer.
13542
2a68b70e
DJ
135432004-01-30 Daniel Jacobowitz <drow@mvista.com>
13544
13545 * regcache.c (new_register_cache): Clear the allocated register
13546 buffer. Suggested by Atsushi Nemoto <anemo@mba.ocn.ne.jp>.
13547
64386c31
DJ
135482003-10-13 Daniel Jacobowitz <drow@mvista.com>
13549
13550 * linux-low.c (linux_resume): Take a struct thread_resume *
13551 argument.
13552 (linux_wait): Update call.
13553 (resume_ptr): New static variable.
13554 (linux_continue_one_thread): Renamed from
13555 linux_continue_one_process. Use resume_ptr.
13556 (linux_resume): Use linux_continue_one_thread.
13557 * server.c (handle_v_cont, handle_v_requests): New functions.
13558 (myresume): New function.
13559 (main): Handle 'v' case.
13560 * target.h (struct thread_resume): New type.
13561 (struct target_ops): Change argument of "resume" to struct
13562 thread_resume *.
13563 (myresume): Delete macro.
13564
c938e9b0
L
135652003-08-08 H.J. Lu <hongjiu.lu@intel.com>
13566
13567 * Makefile.in (install-only): Create dest dir. Support DESTDIR.
13568 (uninstall): Support DESTDIR.
13569
7f313d07
BC
13570Mon Jul 21 20:09:34 UTC 2003 Brendan Conoboy <blc@redhat.com>
13571
13572 * configure.srv: Add xscale*linux copy of arm*linux entry.
13573
3b2fc2ea
DJ
135742003-07-24 Daniel Jacobowitz <drow@mvista.com>
13575
13576 * linux-arm-low.c (arm_reinsert_addr): New function.
13577 (the_low_target): Add arm_reinsert_addr.
13578
1c0a559e
MK
135792003-07-08 Mark Kettenis <kettenis@gnu.org>
13580
13581 * mem-break.c: Remove whitespace at end of file.
13582
43d5792c
DJ
135832003-06-28 Daniel Jacobowitz <drow@mvista.com>
13584
13585 * configure.in: Check whether we need to prototype strerror.
13586 * server.h: Optionally prototype strerror.
13587 * gdbreplay.c (perror_with_name): Use strerror.
13588 * linux-low.c (linux_attach_lwp): Use strerror.
13589 * utils.c (perror_with_name): Use strerror.
13590 * config.in, configure: Regenerated.
13591
c8a86edf
DJ
135922003-06-28 Daniel Jacobowitz <drow@mvista.com>
13593
13594 * linux-sh-low.c (sh_regmap): Fix FP register offsets, reported by
13595 SUGIOKA Toshinobu <sugioka@itonet.co.jp>.
13596
73d37363
DJ
135972003-06-20 Daniel Jacobowitz <drow@mvista.com>
13598
13599 * Makefile.in (SFILES): Update.
13600 * low-hppabsd.c, low-lynx.c, low-nbsd.c, low-sim.c, low-sparc.c,
13601 low-sun3.c: Remove files.
13602
6ad8ae5c
DJ
136032003-06-17 Daniel Jacobowitz <drow@mvista.com>
13604
13605 * linux-low.c: Move comment to linux_thread_alive where it belonged.
13606 (linux_detach_one_process, linux_detach): New functions.
13607 (linux_target_ops): Add linux_detach.
13608 * server.c (main): Handle 'D' packet.
13609 * target.h (struct target_ops): Add "detach" member.
13610 (detach_inferior): Define.
13611
1581182a
MK
136122003-06-13 Mark Kettenis <kettenis@gnu.org>
13613
13614 From Kelley Cook <kelleycook@wideopenwest.com>:
13615 * configure.srv: Accept i[34567]86 variants.
13616
e5379b03
DJ
136172003-06-05 Daniel Jacobowitz <drow@mvista.com>
13618
13619 * linux-low.c (linux_wait_for_event): Correct comment typos.
13620 (linux_resume_one_process): Call check_removed_breakpoint.
13621 (linux_send_signal): New function.
13622 (linux_target_ops): Add linux_send_signal.
13623 * remote-utils.c (putpkt, input_interrupt): Use send_signal instead
13624 of kill.
13625 * target.h (struct target_ops): Add send_signal.
13626
2ff29de4
JB
136272003-05-29 Jim Blandy <jimb@redhat.com>
13628
13629 * linux-low.c (usr_store_inferior_registers): Transfer buf in
13630 PTRACE_XFER_TYPE-sized chunks, not int-sized chunks. Otherwise,
13631 if 'int' is smaller than PTRACE_XFER_TYPE, you end up throwing
13632 away part of the register's value.
13633
254787d4
DJ
136342003-03-26 Daniel Jacobowitz <drow@mvista.com>
13635
13636 * linux-low.c (linux_create_inferior): Use __SIGRTMIN.
13637 (linux_wait_for_event, linux_init_signals): Likewise.
13638
94e10508
DJ
136392003-03-17 Daniel Jacobowitz <drow@mvista.com>
13640
13641 * configure.in: Check for stdlib.h.
13642 * configure: Regenerated.
13643 * config.in: Regenerated.
13644
4c0711e0
DJ
136452003-01-04 Andreas Schwab <schwab@suse.de>
13646
13647 * linux-m68k-low.c (m68k_num_regs): Define to 29 instead of 31.
13648
ef66e766
AC
136492003-01-02 Andrew Cagney <ac131313@redhat.com>
13650
13651 * Makefile.in: Remove obsolete code.
13652
a1358604
DJ
136532002-11-20 Daniel Jacobowitz <drow@mvista.com>
13654
13655 * linux-s390-low.c (s390_regmap): Check GPR_SIZE instead of
13656 defined(PT_FPR0_HI).
13657
23ce3b1c
DJ
136582002-11-17 Stuart Hughes <seh@zee2.com>
13659
13660 * linux-arm-low.c (arm_num_regs): Increase.
13661 (arm_regmap): Include status register.
13662
136632002-11-17 Daniel Jacobowitz <drow@mvista.com>
13664
13665 * linux-low.c (register_addr): Remove incorrect -1 check.
13666
a9fa9f7d
DJ
136672002-08-29 Daniel Jacobowitz <drow@mvista.com>
13668
13669 * linux-low.c (linux_create_inferior): Call setpgid. Return
13670 the new PID.
13671 (unstopped_p, linux_signal_pid): Remove.
13672 (linux_target_ops): Remove linux_signal_pid.
13673 * remote-utils.c (putpkt, input_interrupt): Use signal_pid
13674 global instead of target method.
13675 * target.h (struct target_ops): Remove signal_pid. Update comment
13676 for create_inferior.
13677 * server.c (signal_pid): New variable.
13678 (create_inferior): Set signal_pid. Block SIGTTOU and SIGTTIN in
4b8dad4a 13679 gdbserver. Set the child to be the foreground process group.
a9fa9f7d
DJ
13680 (attach_inferior): Set signal_pid.
13681
17574093
DJ
136822002-08-23 Daniel Jacobowitz <drow@mvista.com>
13683
13684 * ChangeLog: New file, with entries from gdb/ChangeLog after GDB 5.2.
13685
136862002-08-20 Jim Blandy <jimb@redhat.com>
13687
13688 * Makefile.in (LDFLAGS): Allow the configure script to establish a
13689 default for this.
13690
136912002-08-01 Andrew Cagney <cagney@redhat.com>
13692
13693 * Makefile.in: Make chill references obsolete.
13694
136952002-07-24 Kevin Buettner <kevinb@redhat.com>
13696
13697 * configure.in (unistd.h): Add to AC_CHECK_HEADERS list.
13698 * configure: Regenerate.
13699 * config.in: Regenerate.
13700
137012002-07-09 David O'Brien <obrien@FreeBSD.org>
13702
13703 * gdbreplay.c (stdlib.h, unistd.h): Conditionaly include.
13704 (perror_with_name, remote_close, remote_open, expect, play): Static.
13705
137062002-07-04 Michal Ludvig <mludvig@suse.cz>
13707
4b8dad4a 13708 * linux-x86-64-low.c (x86_64_regmap): Make it an array of
17574093
DJ
13709 byte offsets instead of an array of indexes.
13710 (x86_64_store_gregset, x86_64_store_fpregset): Parameter made const.
13711
137122002-06-13 Daniel Jacobowitz <drow@mvista.com>
13713
13714 * regcache.c: Add comment.
13715
137162002-06-11 Daniel Jacobowitz <drow@mvista.com>
13717
13718 * thread-db.c: New file.
13719 * proc-service.c: New file.
13720 * acinclude.m4: New file.
13721 * Makefile.in: Add GDBSERVER_LIBS, gdb_proc_service_h,
13722 proc-service.o, and thread-db.o.
13723 (linux-low.o): Add USE_THREAD_DB.
13724 * acconfig.h: Add HAVE_PRGREGSET_T, HAVE_PRFPREGSET_T,
13725 HAVE_LWPID_T, HAVE_PSADDR_T, and PRFPREGSET_T_BROKEN.
13726 * aclocal.m4: Regenerated.
13727 * config.in: Regenerated.
13728 * configure: Regenerated.
13729 * configure.in: Check for proc_service.h, sys/procfs.h,
13730 thread_db.h, and linux/elf.h headrs.
13731 Check for lwpid_t, psaddr_t, prgregset_t, prfpregset_t, and
13732 PRFPREGSET_T_BROKEN. Introduce srv_thread_depfiles and USE_THREAD_DB.
13733 Check for -lthread_db and thread support.
13734 * configure.srv: Enable thread_db support for ARM, i386, MIPS,
13735 PowerPC, and SuperH.
13736 * i387-fp.c: Constify arguments.
13737 * i387-fp.h: Likewise.
13738 * inferiors.c: (struct thread_info): Renamed from
13739 `struct inferior_info'. Remove PID member. Use generic inferior
13740 list header. All uses updated.
13741 (inferiors, signal_pid): Removed.
13742 (all_threads): New variable.
13743 (get_thread): Define.
13744 (add_inferior_to_list): New function.
13745 (for_each_inferior): New function.
13746 (change_inferior_id): New function.
13747 (add_inferior): Removed.
13748 (remove_inferior): New function.
13749 (add_thread): New function.
13750 (free_one_thread): New function.
13751 (remove_thread): New function.
13752 (clear_inferiors): Use for_each_inferior and free_one_thread.
13753 (find_inferior): New function.
13754 (find_inferior_id): New function.
13755 (inferior_target_data): Update argument type.
13756 (set_inferior_target_data): Likewise.
13757 (inferior_regcache_data): Likewise.
13758 (set_inferior_regcache_data): Likewise.
13759 * linux-low.c (linux_bp_reinsert): Remove.
13760 (all_processes, stopping_threads, using_thrads)
13761 (struct pending_signals, debug_threads, pid_of): New.
13762 (inferior_pid): Replace with macro.
13763 (struct inferior_linux_data): Remove.
13764 (get_stop_pc, add_process): New functions.
13765 (linux_create_inferior): Restore SIGRTMIN+1 before calling exec.
13766 Use add_process and add_thread.
13767 (linux_attach_lwp): New function, based on old linux_attach. Use
13768 add_process and add_thread. Set stop_expected for new threads.
13769 (linux_attach): New function.
13770 (linux_kill_one_process): New function.
13771 (linux_kill): Kill all LWPs.
13772 (linux_thread_alive): Use find_inferior_id.
13773 (check_removed_breakpoints, status_pending_p): New functions.
13774 (linux_wait_for_process): Renamed from linux_wait_for_one_inferior.
13775 Update. Use WNOHANG. Wait for cloned processes also. Update process
13776 struct for the found process.
13777 (linux_wait_for_event): New function.
13778 (linux_wait): Use it. Support LWPs.
13779 (send_sigstop, wait_for_sigstop, stop_all_processes)
13780 (linux_resume_one_process, linux_continue_one_process): New functions.
13781 (linux_resume): Support LWPs.
13782 (REGISTER_RAW_SIZE): Remove.
13783 (fetch_register): Use register_size instead. Call supply_register.
13784 (usr_store_inferior_registers): Likewise. Call collect_register.
13785 Fix recursive case.
13786 (regsets_fetch_inferior_registers): Improve error message.
13787 (regsets_store_inferior_registers): Add debugging.
13788 (linux_look_up_symbols): Call thread_db_init if USE_THREAD_DB.
13789 (unstopped_p, linux_signal_pid): New functions.
13790 (linux_target_ops): Add linux_signal_pid.
13791 (linux_init_signals): New function.
13792 (initialize_low): Call it. Initialize using_threads.
13793 * regcache.c (inferior_regcache_data): Add valid
13794 flag.
13795 (get_regcache): Fetch registers lazily. Add fetch argument
13796 and update all callers.
13797 (regcache_invalidate_one, regcache_invalidate): New
13798 functions.
13799 (new_register_cache): Renamed from create_register_cache.
13800 Return the new regcache.
13801 (free_register_cache): Change argument to a void *.
13802 (registers_to_string, registers_from_string): Call get_regcache
13803 with fetch flag set.
13804 (register_data): Make static. Pass fetch flag to get_regcache.
13805 (supply_register): Call get_regcache with fetch flag clear.
13806 (collect_register): Call get_regcache with fetch flag set.
13807 (collect_register_as_string): New function.
13808 * regcache.h: Update.
13809 * remote-utils.c (putpkt): Flush after debug output and use
13810 stderr.
13811 Handle input interrupts while waiting for an ACK.
13812 (input_interrupt): Use signal_pid method.
13813 (getpkt): Flush after debug output and use stderr.
13814 (outreg): Use collect_register_as_string.
13815 (new_thread_notify, dead_thread_notify): New functions.
13816 (prepare_resume_reply): Check using_threads. Set thread_from_wait
13817 and general_thread.
13818 (look_up_one_symbol): Flush after debug output.
13819 * server.c (step_thread, server_waiting): New variables.
13820 (start_inferior): Don't use signal_pid. Update call to mywait.
13821 (attach_inferior): Update call to mywait.
13822 (handle_query): Handle qfThreadInfo and qsThreadInfo.
13823 (main): Don't fetch/store registers explicitly. Use
13824 set_desired_inferior. Support proposed ``Hs'' packet. Update
13825 calls to mywait.
13826 * server.h: Update.
13827 (struct inferior_list, struct_inferior_list_entry): New.
13828 * target.c (set_desired_inferior): New.
13829 (write_inferior_memory): Constify.
13830 (mywait): New function.
13831 * target.h: Update.
13832 (struct target_ops): New signal_pid method.
13833 (mywait): Removed macro, added prototype.
13834
13835 * linux-low.h (regset_func): Removed.
13836 (regset_fill_func, regset_store_func): New.
13837 (enum regset_type): New.
13838 (struct regset_info): Add type field. Use new operation types.
13839 (struct linux_target_ops): stop_pc renamed to get_pc.
13840 Add decr_pc_after_break and breakpoint_at.
13841 (get_process, get_thread_proess, get_process_thread)
13842 (strut process_info, all_processes, linux_attach_lwp)
13843 (thread_db_init): New.
13844
13845 * linux-arm-low.c (arm_get_pc, arm_set_pc,
13846 arm_breakpoint, arm_breakpoint_len, arm_breakpoint_at): New.
13847 (the_low_target): Add new members.
13848 * linux-i386-low.c (i386_store_gregset, i386_store_fpregset)
13849 (i386_store_fpxregset): Constify.
13850 (target_regsets): Add new kind identifier.
13851 (i386_get_pc): Renamed from i386_stop_pc. Simplify.
13852 (i386_set_pc): Add debugging.
13853 (i386_breakpoint_at): New function.
13854 (the_low_target): Add new members.
13855 * linux-mips-low.c (mips_get_pc, mips_set_pc)
13856 (mips_breakpoint, mips_breakpoint_len, mips_reinsert_addr)
13857 (mips_breakpoint_at): New.
13858 (the_low_target): Add new members.
13859 * linux-ppc-low.c (ppc_get_pc, ppc_set_pc)
13860 (ppc_breakpoint, ppc_breakpoint_len, ppc_breakpoint_at): New.
13861 (the_low_target): Add new members.
13862 * linux-sh-low.c (sh_get_pc, sh_set_pc)
13863 (sh_breakpoint, sh_breakpoint_len, sh_breakpoint_at): New.
13864 (the_low_target): Add new members.
13865 * linux-x86-64-low.c (target_regsets): Add new kind
13866 identifier.
13867
138682002-05-15 Daniel Jacobowitz <drow@mvista.com>
13869
13870 From Martin Pool <mbp@samba.org>:
13871 * server.c (gdbserver_usage): New function.
13872 (main): Call it.
13873
138742002-05-14 Daniel Jacobowitz <drow@mvista.com>
13875
13876 * mem-break.c (reinsert_breakpoint_by_bp): Correct typo
13877 stop_at -> stop_pc.
13878
138792002-05-04 Andrew Cagney <ac131313@redhat.com>
13880
13881 * Makefile.in: Remove obsolete code.
13882
138832002-04-24 Michal Ludvig <mludvig@suse.cz>
13884
13885 * linux-low.c (regsets_fetch_inferior_registers),
13886 (regsets_store_inferior_registers): Removed cast to int from
13887 ptrace() calls.
13888 * regcache.h: Added declaration of struct inferior_info.
13889
138902002-04-20 Daniel Jacobowitz <drow@mvista.com>
13891
13892 * inferiors.c (struct inferior_info): Add regcache_data.
13893 (add_inferior): Call create_register_cache.
13894 (clear_inferiors): Call free_register_cache.
13895 (inferior_regcache_data, set_inferior_regcache_data): New functions.
13896 * regcache.c (struct inferior_regcache_data): New.
13897 (registers): Remove.
13898 (get_regcache): New function.
13899 (create_register_cache, free_register_cache): New functions.
13900 (set_register_cache): Don't initialize the register cache here.
13901 (registers_to_string, registers_from_string, register_data): Call
13902 get_regcache.
13903 * regcache.h: Add prototypes.
13904 * server.h: Likewise.
13905
139062002-04-20 Daniel Jacobowitz <drow@mvista.com>
13907
13908 * mem-break.c: New file.
13909 * mem-break.h: New file.
13910 * Makefile.in: Add mem-break.o rule; update server.h
13911 dependencies.
13912 * inferiors.c (struct inferior_info): Add target_data
13913 member.
13914 (clear_inferiors): Free target_data member if set.
13915 (inferior_target_data, set_inferior_target_data): New functions.
13916 * linux-i386-low.c (i386_breakpoint, i386_breakpoint_len)
13917 (i386_stop_pc, i386_set_pc): New. Add to the_low_target.
13918 * linux-low.c (linux_bp_reinsert): New variable.
13919 (struct inferior_linux_data): New.
13920 (linux_create_inferior): Use set_inferior_target_data.
13921 (linux_attach): Likewise. Call add_inferior.
13922 (linux_wait_for_one_inferior): New function.
13923 (linux_wait): Call it.
13924 (linux_write_memory): Add const.
13925 (initialize_low): Call set_breakpoint_data.
13926 * linux-low.h (struct linux_target_ops): Add breakpoint
13927 handling members.
13928 * server.c (attach_inferior): Remove extra add_inferior
13929 call.
13930 * server.h: Include mem-break.h. Update inferior.c
13931 prototypes.
13932 * target.c (read_inferior_memory)
13933 (write_inferior_memory): New functions.
13934 * target.h (read_inferior_memory)
13935 (write_inferior_memory): Change macros to prototypes.
13936 (struct target_ops): Update comments. Add const to write_memory
13937 definition.
13938
139392002-04-11 Daniel Jacobowitz <drow@mvista.com>
13940
13941 * linux-low.c (usr_store_inferior_registers): Support
13942 registers which are allowed to fail to store.
13943 * linux-low.h (linux_target_ops): Likewise.
13944 * linux-ppc-low.c (ppc_regmap): Support FPSCR.
13945 (ppc_cannot_store_register): FPSCR may not be storable.
13946
139472002-04-09 Daniel Jacobowitz <drow@mvista.com>
13948
13949 * server.h: Include <string.h> if HAVE_STRING_H.
13950 * ChangeLog: Correct paths in last ChangeLog entry.
13951
139522002-04-09 Daniel Jacobowitz <drow@mvista.com>
13953
13954 * linux-low.h: Remove obsolete prototypes.
13955 (struct linux_target_ops): New.
13956 (extern the_low_target): New.
13957 * linux-low.c (num_regs, regmap): Remove declarations.
13958 (register_addr): Use the_low_target explicitly.
13959 (fetch_register): Likewise.
13960 (usr_fetch_inferior_registers): Likewise.
13961 (usr_store_inferior_registers): Likewise.
13962 * linux-arm-low.c (num_regs): Remove.
13963 (arm_num_regs): Define.
13964 (arm_regmap): Renamed from regmap, made static.
13965 (arm_cannot_fetch_register): Renamed from cannot_fetch_register,
13966 made static.
13967 (arm_cannot_store_register): Renamed from cannot_store_register,
13968 made static.
13969 (the_low_target): New.
13970 * linux-i386-low.c (num_regs): Remove.
13971 (i386_num_regs): Define.
13972 (i386_regmap): Renamed from regmap, made static.
13973 (i386_cannot_fetch_register): Renamed from cannot_fetch_register,
13974 made static.
13975 (i386_cannot_store_register): Renamed from cannot_store_register,
13976 made static.
13977 (the_low_target): New.
13978 * linux-ia64-low.c (num_regs): Remove.
13979 (ia64_num_regs): Define.
13980 (ia64_regmap): Renamed from regmap, made static.
13981 (ia64_cannot_fetch_register): Renamed from cannot_fetch_register,
13982 made static.
13983 (ia64_cannot_store_register): Renamed from cannot_store_register,
13984 made static.
13985 (the_low_target): New.
13986 * linux-m68k-low.c (num_regs): Remove.
13987 (m68k_num_regs): Define.
13988 (m68k_regmap): Renamed from regmap, made static.
13989 (m68k_cannot_fetch_register): Renamed from cannot_fetch_register,
13990 made static.
13991 (m68k_cannot_store_register): Renamed from cannot_store_register,
13992 made static.
13993 (the_low_target): New.
13994 * linux-mips-low.c (num_regs): Remove.
13995 (mips_num_regs): Define.
13996 (mips_regmap): Renamed from regmap, made static.
13997 (mips_cannot_fetch_register): Renamed from cannot_fetch_register,
13998 made static.
13999 (mips_cannot_store_register): Renamed from cannot_store_register,
14000 made static.
14001 (the_low_target): New.
14002 * linux-ppc-low.c (num_regs): Remove.
14003 (ppc_num_regs): Define.
14004 (ppc_regmap): Renamed from regmap, made static.
14005 (ppc_cannot_fetch_register): Renamed from cannot_fetch_register,
14006 made static.
14007 (ppc_cannot_store_register): Renamed from cannot_store_register,
14008 made static.
14009 (the_low_target): New.
14010 * linux-s390-low.c (num_regs): Remove.
14011 (s390_num_regs): Define.
14012 (s390_regmap): Renamed from regmap, made static.
14013 (s390_cannot_fetch_register): Renamed from cannot_fetch_register,
14014 made static.
14015 (s390_cannot_store_register): Renamed from cannot_store_register,
14016 made static.
14017 (the_low_target): New.
14018 * linux-sh-low.c (num_regs): Remove.
14019 (sh_num_regs): Define.
14020 (sh_regmap): Renamed from regmap, made static.
14021 (sh_cannot_fetch_register): Renamed from cannot_fetch_register,
14022 made static.
14023 (sh_cannot_store_register): Renamed from cannot_store_register,
14024 made static.
14025 (the_low_target): New.
14026 * linux-x86-64-low.c (x86_64_regmap): Renamed from regmap.
14027 (the_low_target): New.
14028
140292002-04-09 Daniel Jacobowitz <drow@mvista.com>
14030
14031 * Makefile.in: Add stamp-h target.
14032 * configure.in: Create stamp-h.
14033 * configure: Regenerated.
14034
140352002-04-09 Daniel Jacobowitz <drow@mvista.com>
14036
14037 * inferiors.c: New file.
14038 * target.c: New file.
14039 * target.h: New file.
14040 * Makefile.in: Add target.o and inferiors.o. Update
14041 dependencies.
14042 * linux-low.c (inferior_pid): New static variable,
14043 moved from server.c.
14044 (linux_create_inferior): Renamed from create_inferior.
14045 Call add_inferior. Return 0 on success instead of a PID.
14046 (linux_attach): Renamed from myattach.
14047 (linux_kill): Renamed from kill_inferior. Call clear_inferiors ().
14048 (linux_thread_alive): Renamed from mythread_alive.
14049 (linux_wait): Renamed from mywait. Call clear_inferiors () if the
14050 child dies.
14051 (linux_resume): Renamed from myresume. Add missing ``return 0''.
14052 (regsets_store_inferior_registers): Correct error message.
14053 Add missing ``return 0''.
14054 (linux_fetch_registers): Renamed from fetch_inferior_registers.
14055 (linux_store_registers): Renamed from store_inferior_registers.
14056 (linux_read_memory): Renamed from read_inferior_memory.
14057 (linux_write_memory): Renamed from write_inferior_memory.
14058 (linux_target_ops): New structure.
14059 (initialize_low): Call set_target_ops ().
14060 * remote-utils.c (unhexify): New function.
14061 (hexify): New function.
14062 (input_interrupt): Send signals to ``signal_pid''.
14063 * server.c (inferior_pid): Remove.
14064 (start_inferior): Update create_inferior call.
14065 (attach_inferior): Call add_inferior.
14066 (handle_query): New function.
14067 (main): Call handle_query for `q' packets.
14068 * server.h: Include "target.h". Remove obsolete prototypes.
14069 Add prototypes for "inferiors.c", "target.c", hexify, and unhexify.
14070
140712002-04-09 Daniel Jacobowitz <drow@mvista.com>
14072
14073 * Makefile.in: Add WARN_CFLAGS. Update configury
14074 dependencies.
14075 * configure.in: Check for <string.h>
14076 * configure: Regenerate.
14077 * config.in: Regenerate.
14078 * gdbreplay.c: Include needed system headers.
14079 (remote_open): Remove strchr prototype.
14080 * linux-low.h: Correct #ifdef to HAVE_LINUX_USRREGS.
14081 * regcache.c (supply_register): Change buf argument to const void *.
14082 (supply_register_by_name): Likewise.
14083 (collect_register): Change buf argument to void *.
14084 (collect_register_by_name): Likewise.
14085 * regcache.h: Add missing prototypes.
14086 * remote-utils.c: Include <arpa/inet.h> for inet_ntoa.
14087 * server.c (handle_query): New function.
14088 (attached): New static variable, moved out of main.
14089 (main): Quiet longjmp clobber warnings.
14090 * server.h: Add ATTR_NORETURN and ATTR_FORMAT. Update prototypes.
14091 * utils.c (error): Remove NORETURN.
14092 (fatal): Likewise.