* linux-x86-64-low.c (ps_get_thread_area): New.
* linux-low.c: Include <sys/syscall.h>.
(linux_kill_one_process): Don't kill the first thread here.
(linux_kill): Kill the first thread here.
(kill_lwp): New function.
(send_sigstop, linux_send_signal): Use it.
* proc-service.c: Clean up #ifdefs.
(fpregset_info): Delete.
(ps_lgetregs): Update and enable implementation.
(ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs): Remove disabled
implementations.
* remote-utils.c (struct sym_cache, symbol_cache): New.
(input_interrupt): Print a clearer message.
(async_io_enabled): New variable.
(enable_async_io, disable_async_io): Use it. Update comments.
(look_up_one_symbol): Use the symbol cache.
* thread-db.c (thread_db_look_up_symbols): New function.
(thread_db_init): Update comments. Call thread_db_look_up_symbols.
* ada-exp.y, ada-lex.l: Use xmalloc and xrealloc through out.
* inf-ptrace.c: Include "gdb_wait.h" instead of <wait.h>.
* Makefile.in (.y.c, .l.c): Don't replace xmalloc with xxmalloc.
Update dependencies.
(ada_evaluate_subexp): Change error message for
OP_FUNCALL case so as not to indicate an internal error.
From Joel Brobecker; committed by Paul Hilfinger.
* ada-lang.c (ada_template_to_fixed_record_type_1): Detect bogus
type sizes in XVE/XVU types, and emit a warning when that happens,
instead of rounding up the size of the resulting type.
Some minor reformatting.
(ada_is_aligner_type): Do not consider a type as an aligner type
if there is a corresponding XVS type as well.
(ada_evaluate_subexp): For TERNOP_SLICE, handle cases where we
have several levels of pointer indirection to the array.
From Jerome Guitton; committed by Paul Hilfinger.
* ada-lang.c (check_size): New function.
(coerce_unspec_val_to_type): call check_size to make sure
that the object size is reasonable.
(ada_evaluate_subexp): in UNOP_IND: Ditto. In TERNOP_SLICE:
Implements the case when we get a reference when we evaluate
the expression of one of the bounds of the slice.
(ada_value_struct_elt): when a packed array field is
a reference, use ada_coerce_ref to dereference it; use
ada_value_ind only if it is a pointer.
a bit to avoid the necessity of an advance declaration. Remove
declaration.
(set_reg_offset): Move implemenation up.
(mips16_get_imm): Likewise.
(mips16_scan_prologue): Likewise.
(reset_saved_regs): Likewise.
(mips32_scan_prologue): Likewise.
Remove sp as a parameter, compute it internally instead. Move
prologue scanning limit from heuristic_proc_desc to here.
(mips16_scan_prologue): Likewise.
(mips_insn16_frame_cache): Replace call to heuristic_proc_desc
by call to mips16_scan_prologue.
(mips_insn32_frame_cache): Replace call to heuristic_proc_desc
by call to mips32_scan_prologue.
(heuristic_proc_desc): Remove code that's no longer necessary.
Update calls to mips16_scan_prologue and mips32_scan_prologue.
(mips_skip_prologue): Update calls to mips16_scan_prologue
and mips32_scan_prologue.
mips16_skip_prologue. Now return the address of the first
instruction past the function prologue.
(mips16_skip_prologue): Remove, no longer necessary.
(mips_skip_prologue): Replace call to mips16_skip_prologue
by call to mips16_scan_prologue.
mips32_skip_prologue. Now return the address of the first
instruction past the function prologue.
(mips32_skip_prologue): Remove. No longer necessary.
(mips16_skip_prologue): Add parameter end_pc instead of
computing it.
(mips_skip_prologue): Compute the upper limit for the
prologue scanning. Update call to mips16_skip_prologue.
Replace call to mips32_skip_prologue by call to
mips32_scan_prologue.
* gdb.threads/schedlock.c: Add comment markers to use to find
line numbers.
* gdb.threads/schedlock.exp: Adjust regex to handle the new
comments.
* gdb.threads/watchthreads.exp: Use gdb_get_line_number to find
breakpoint lines.
(fetch_fpregs): Use i387_supply_fxsave to fill the floating-point
registers when the floating-point state isn't initialized.
* Makefile.in (i386gnu-nat.o): Update dependencies.
* gdb.threads/bp_in_thread.exp: Use runto_main and "continue" instead
of "run", since the latter doesn't work with remote targets. Adjust
the breakpoint numbering accordingly.
* gdb.threads/pthread_cond_wait.exp: Ditto.
(mips_insn16_frame_cache): Pass frame cache in call to
heuristic_proc_desc. Move some code to mips16_heuristic_proc_desc.
Remove code that became redundant as a consequence.
(mips32_heuristic_proc_desc): No longer compute a fake
procedure descriptor. Compute the full frame cache instead.
Some minor comment reformatting.
(sparc_linux_sigtramp_start): Change first argument from CORE_ADDR
to struct frame_info *. Use safe_frame_unwind_memory instead of
deprecated_read_memory_nobpt.
(sparc32_linux_sigtramp_start, sparc32_linux_rt_sigtramp_start):
Change argumen from CORE_ADDR to struct frame_info *. Adjust for
changed signature of sparc_linux_sigtramp_start.
(sparc32_linux_pc_in_sigtramp): Remove function.
(sparc32_linux_sigtramp_p): New function.
(sparc32_linux_sigtramp_frame_sniffer): Use
sparc32_linux_sigtramp_p instead of sparc32_linux_pc_in_sigtramp.