Commit graph

12483 commits

Author SHA1 Message Date
Daniel Jacobowitz
9e35dae425 2006-10-09 Jan Kratochvil <jan.kratochvil@redhat.com>
Daniel Jacobowitz  <dan@codesourcery.com>

	* Makefile.in (expprint.o, parse.o, target.o): Update.
	* dwarf2loc.c (dwarf_expr_tls_address): Move body to
	target_translate_tls_address.  Call it.
	* eval.c (evaluate_subexp_standard): Handle UNOP_MEMVAL_TLS.
	* expprint.c (print_subexp_standard): Likewise.
	(op_name_standard, dump_subexp_body_standard): Likewise.
	* expression.h (enum exp_opcode): Add UNOP_MEMVAL_TLS.
	(union exp_element): Add objfile.
	* parse.c (write_exp_elt_objfile): New function.
	(msym_tls_symbol_type): New.
	(write_exp_msymbol): Handle TLS.
	(operator_length_standard): Handle UNOP_MEMVAL_TLS.
	(build_parse): Initialize msym_tls_symbol_type.
	* parser-defs.h (write_exp_elt_objfile): New prototype.
	* target.c (target_translate_tls_address): New.
	* target.h (target_translate_tls_address): Add prototype.

2006-10-09  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* gdb.threads/tls-nodebug.c, gdb.threads/tls-nodebug.exp: New test.
2006-10-10 03:17:53 +00:00
Daniel Jacobowitz
58dc52c34d * solib.c (solib_open): Handle an empty solib_absolute_prefix like a
missing one.
2006-10-09 20:16:10 +00:00
Daniel Jacobowitz
8bb752867c * solib.c (solib_read_symbols): Stop if the file was not found. 2006-10-09 19:58:07 +00:00
Daniel Jacobowitz
d9639e1329 2006-10-09 Paul Pluzhnikov <ppluzhnikov@charter.net>
PR c++/2116
	* valops.c (find_overload_match): Check for a NULL name.

2006-10-09  Daniel Jacobowitz  <dan@codesourcery.com>

	PR c++/2116
	* gdb.cp/call-c.cc, gdb.cp/call-c.exp, gdb.cp/call-c-1.c: New.
2006-10-09 19:28:14 +00:00
Joel Brobecker
714e295ef0 * dwarf2read.c (read_array_type): Set the type name if the name
attribute is present.
2006-10-06 20:42:02 +00:00
Joel Brobecker
631b0ed020 * blockframe.c (block_innermost_frame): Rewrite frame search logic. 2006-10-06 02:01:34 +00:00
Daniel Jacobowitz
dbc981de23 * Makefile.in (gdb_expat_h): New.
(xml_support_h): Add gdb_expat.h dependency.
	(memory-map.o, xml-support.o): Likewise.
	* gdb_expat.h: New file.
	* xml-support.h: Include it.
	* memory-map.c, xml-support.c: Likewise.  Remove XML_STATUS_OK
	definitions.
2006-10-05 19:42:31 +00:00
Daniel Jacobowitz
0b83947edd * remote.c (get_remote_state_raw): Renamed from get_remote_state.
(get_remote_state): New function.
	(init_remote_state, _initialize_remote): Use get_remote_state_raw.
2006-10-05 19:20:52 +00:00
Fred Fish
8aceae7e50 Reviewed and approved by Daniel Jacobowitz <drow@false.org>
2006-10-04  Fred Fish  <fnf@specifix.com>
	* vec.c: Include defs.h first.  This pulls in config.h which can
	affect other includes.
2006-10-05 01:04:23 +00:00
Joel Brobecker
f31b375174 * somread.c (som_symtab_read): Avoid using alloca for potentially
large buffers.
2006-10-04 21:36:39 +00:00
Daniel Jacobowitz
d0a0254a41 * arch-utils.h (gdbarch_info_fill): Remove duplicate prototype. 2006-10-04 20:14:44 +00:00
Daniel Jacobowitz
f2d483c447 * memory-map.c (XML_STATUS_OK, XML_STATUS_ERROR): Provide default
definitions.
	* xml-support.c (XML_STATUS_OK, XML_STATUS_ERROR): Likewise.
2006-10-03 15:54:01 +00:00
Daniel Jacobowitz
f08799f98e * remote.c (remote_write_bytes_aux): Doc fix. 2006-09-22 13:50:36 +00:00
Daniel Jacobowitz
a76d924dff * Makefile.in (SFILES): Add target-memory.c.
(COMMON_OBS): Add target-memory.o.
	* memattr.c (lookup_mem_region): Adjust handling for
	the top of memory.  Improve comments.
	* remote.c (packet_check_result): New function, split out
	from packet_ok.  Recognize "E." as an error prefix.
	(packet_ok): Use it.
	(remote_write_bytes_aux): New function, renamed from
	remote_write_bytes.  Take packet header, packet format,
	and length flag as arguments.
	(remote_write_bytes): Rewrite to use remote_write_bytes_aux.
	(remote_send_printf, restore_remote_timeout)
	(remote_flash_timeout, remote_flash_erase, remote_flash_write)
	(remote_flash_done): New.
	(remote_xfer_partial): Handle flash writes.
	(init_remote_ops, init_remote_async_ops): Set to_flash_erase
	and to_flash_done.
	* symfile.c (struct load_section_data): Include a pointer to
	the cumulative stats and a request queue.  Move most members
	to other types.
	(struct load_progress_data, struct load_progress_section_data): New
	types.
	(load_progress): Handle a NULL baton and zero bytes.  Update for
	type changes.
	(load_section_callback): Create memory write requests instead of
	writing to memory.  Don't print the progress message here.
	(clear_memory_write_data): New function.
	(generic_load): Use target_write_memory_blocks.
	* target-memory.c: New file.
	* target.c (update_current_target): Mention new uninherited methods.
	(memory_xfer_partial): Issue an error for flash writes.
	(target_flash_erase, target_flash_done): New functions.
	(target_write_with_progress): Call the progress callback at the
	start also.
	* target.h (enum target_object): Add TARGET_OBJECT_FLASH.
	(target_write_with_progress): Update comment.
	(struct target_ops): Add to_flash_erase and to_flash_done.
	(target_flash_erase, target_flash_done, struct memory_write_request)
	(memory_write_request_s, enum flash_preserve_mode)
	(target_write_memory_blocks): New, including a vector type
	for memory_write_request_s.
2006-09-21 14:00:53 +00:00
Daniel Jacobowitz
fd79eceebf gdb/
2006-09-21  Vladimir Prus  <vladimir@codesourcery.com>
	    Daniel Jacobowitz  <dan@codesourcery.com>
	    Nathan Sidwell  <nathan@codesourcery.com>

	* Makefile.in (SFILES): Add memory-map.c and xml-support.c.
	(memory_map_h, xml_support_h): New.
	(target_h): Add vec_h dependency.
	(COMMON_OBS): Add memory-map.o and xml-support.o.
	(memory-map.o, xml-support.o): New rules.
	(remote.o): Update.
	* exceptions.h (enum errors): Add XML_PARSE_ERROR.
	* infcmd.c (run_command_1, attach_command): Call target_pre_inferior.
	* memattr.c (default_mem_attrib): Initialize blocksize.
	(target_mem_region_list, mem_use_target)
	(target_mem_regions_valid, mem_region_cmp, mem_region_init)
	(require_user_regions, require_target_regions)
	(invalidate_target_mem_regions): New.
	(create_mem_region): Use mem_region_init.
	(mem_clear): Move higher.
	(lookup_mem_region): Use require_target_regions.
	(mem_command): Implement "mem auto".
	(mem_info_command): Handle target-supplied regions and flash
	attributes.
	(mem_enable_command, mem_disable_command, mem_delete_command): Use
	require_user_regions.
	(_initialize_mem): Mention "mem auto" in help.
	* memattr.h (enum mem_access_mode): Add MEM_FLASH.
	(struct mem_attrib): Add blocksize.
	(invalidate_target_mem_regions, mem_region_init, mem_region_cmp): New
	prototypes.
	* remote.c: Include "memory-map.h".
	(PACKET_qXfer_memory_map): New enum value.
	(remote_protocol_features): Add qXfer:memory-map:read.
	(remote_xfer_partial): Handle memory maps.
	(remote_memory_map): New.
	(init_remote_ops, init_remote_async_ops): Set to_memory_map.
	(_initialize_remote): Register qXfer:memory-map:read.
	* target.c (update_current_target): Mention to_memory_map.
	(target_memory_map, target_pre_inferior): New.
	(target_preopen): Call target_pre_inferior.
	* target.h: Include "vec.h".
	(enum target_object): Add TARGET_OBJECT_MEMORY_MAP.
	(struct target_ops): Add to_memory_map.
	(target_memory_map, target_pre_inferior): New prototypes.
	* memory-map.c, memory-map.h, xml-support.c, xml-support.h: New files.
gdb/doc/
2006-09-21  Vladimir Prus  <vladimir@codesourcery.com>
	    Daniel Jacobowitz  <dan@codesourcery.com>

	* gdb.texinfo (Memory Region Attributes): Mention target-supplied
	memory regions and "mem auto".
2006-09-21 13:54:03 +00:00
Daniel Jacobowitz
253c8abb67 * ada-lex.l (HIGH_BYTE_POSN, is_digit_in_base, digit_to_int)
(strtoulst): Moved to ...
	* utils.c (HIGH_BYTE_POSN, is_digit_in_base, digit_to_int)
	(strtoulst): ... here.  Enhanced to behave more similarly
	to strtoul.
	* defs.h (strtoulst): New prototype.
2006-09-21 13:50:51 +00:00
Daniel Jacobowitz
c96fc75e9e * Makefile.in (memattr_h, memattr.o): Update.
* memattr.h: Include "vec.h".
	(struct mem_region): Remove linked list pointer.
	(mem_region_s): New typedef and corresponding vector.
	* memattr.c: Include "vec.h".
	(mem_region_chain): Delete.
	(mem_region_list): New vector pointer.
	(mem_region_lessthan): New function.
	(create_mem_region): Remove unused return value.  Use vector
	operations.  Remove linear search.
	(delete_mem_region): Delete.
	(lookup_mem_region): Use vector operations.  Add a FIXME.
	(mem_info_command): Update to work with vectors.
	(mem_enable, mem_enable_command, mem_disable, mem_disable_command)
	(mem_free, mem_delete): Likewise.
2006-09-21 13:48:29 +00:00
Daniel Jacobowitz
350da6eece 2006-09-21 Nathan Sidwell <nathan@codesourcery.com>
gdb/
	* vec.h: New file.
	* vec.c: New file.
	* Makefile.in (SFILES): Add vec.c.
	(vec_h): New.
	(COMMON_OBJS): Add vec.o.
	(vec.o): New target.
gdb/doc/
	* gdbint.texinfo (Array Containers): New section.
2006-09-21 13:47:56 +00:00
Daniel Jacobowitz
2e9f762528 PR remote/2154
* remote.c (remote_thread_alive): Remove local buf.
	(remote_get_threadinfo): Remove local threadinfo_pkt.
	(remote_get_threadlist): Remove unused threadlist_packet.
	(remote_current_thread): Remove local buf.
	(remote_threads_info): Set bufp after getpkt.
	(remote_threads_extra_info): Remove local bufp.
	(get_offsets): Set buf after getpkt.
	(remote_check_symbols): Set reply after getpkt.
	(remote_vcont_probe): Set buf after getpkt.
	(remote_resume): Set buf after set_thread.
	(remote_wait, remote_async_wait): Set buf after getpkt.
	(fetch_register_using_p): Set buf after remote_send.
	(remote_fetch_registers): Likewise.
	(store_register_using_P): Don't use buf after remote_send.
	(check_binary_download, remote_write_bytes)
	(remote_read_bytes, remote_rcmd): Remove local buf.
2006-09-20 19:13:02 +00:00
Vladimir Prus
f28f46e7d6 Fix grammar 2006-09-17 15:48:34 +00:00
Vladimir Prus
6e90a7df84 * mi/mi-cmd-stack.c (mi_cmd_stack_list_args): Don't emit error
if high requested frame number is larger then number of available
	frames.
2006-09-17 15:45:50 +00:00
Nick Roberts
d51ca893c3 *** empty log message *** 2006-09-16 09:47:42 +00:00
Daniel Jacobowitz
04d1f77003 2006-09-16 Andrzej Zaborowski <balrog@zabor.org>
* interps.c (interpreter_exec_cmd): Restore interpreter properties.
2006-09-16 04:10:41 +00:00
Daniel Jacobowitz
5a2901d9ed PR threads/2149
* infrun.c (handle_inferior_event): Context switch after fork
	and exec events.
2006-09-10 16:21:03 +00:00
Daniel Jacobowitz
4c85081011 * infcall.c (call_function_by_hand): Check for function pointer
types.
2006-09-10 15:44:36 +00:00
Andreas Schwab
0ba5a9325b * m68k-tdep.c (m68k_analyze_register_saves): Fix decoding of
`move.l %R,-(%sp)'.
2006-09-09 23:07:32 +00:00
Vladimir Prus
2ab1eb7abc Allow the HIGH-FRAME parameter for -stack-list-frames to be larger
than the number of available frames.
2006-09-07 16:40:19 +00:00
Joel Brobecker
7a0b019608 From Stephan Springl <springl-gdb@bfw-online.de>
* fork-child.c (fork_inferior): Fix typo.
2006-09-07 16:22:57 +00:00
DJ Delorie
d56874a7f0 * m32c-tdep.c (m32c_decode_srcdest4): Initialize fields in sd
that may not be initialized elsewhere.
(m32c_decode_sd23): Likewise.
2006-08-28 21:13:31 +00:00
Daniel Jacobowitz
14711c8202 * buildsym.c (finish_block): Don't adjust the boundaries of
nested functions.
2006-08-25 16:32:32 +00:00
Andreas Schwab
f414f22f4b * symfile.c (add_symbol_file_command): Fix off-by-one when
extending sect_opts.
2006-08-24 12:43:10 +00:00
Nick Roberts
461c8a2c97 *** empty log message *** 2006-08-23 21:28:49 +00:00
Nick Roberts
77a458b31a *** empty log message *** 2006-08-22 21:44:57 +00:00
Mark Kettenis
316703b918 * valprint.c (val_print_type_code_flags): Fix GNU coding standards
violation.
2006-08-22 21:36:05 +00:00
Mark Kettenis
2a1ce6ec59 * alpha-tdep.c (alpha_register_to_value, alpha_value_to_register)
(alpha_push_dummy_call, alpha_extract_return_value)
(alpha_breakpoint_from_pc, alpha_read_insn)
(alpha_get_longjmp_target, alpha_supply_int_regs)
(alpha_fill_int_regs, alpha_supply_fp_regs, alpha_fill_fp_regs)
(alpha_next_pc): Use gdb_byte instead of (unsigned) char where
appropriate.
2006-08-22 21:31:36 +00:00
Mark Kettenis
fd93680669 * sparc64-tdep.c (sparc64_pstate_type, sparc64_fsr_type)
(sparc64_fprs_type): New variables.
(sparc64_init_types): New function.:
(sparc64_register_info): Use appropriate flag types for %fsr and
%fprs.
(sparc64_pseudo_register_info): Use appropriate type for %pstate.
(_initialize_sparc64_tdep): New function.
2006-08-22 20:57:56 +00:00
Mark Kettenis
befae75944 * valprint.c (val_print_type_code_flags): Fix for bitfields larger
than 32 bits.
2006-08-22 20:32:39 +00:00
Mark Kettenis
76b7178d0d * gdbtypes.c (init_flags_type): Set all fields to zero instead of
just the first one.
2006-08-22 19:45:12 +00:00
Daniel Jacobowitz
d3f4f91a6f * Makefile.in (INTERNAL_CPPFLAGS): New.
(INTERNAL_CFLAGS_BASE): Use it.
2006-08-22 19:08:31 +00:00
Michael Snyder
a98b27f2d3 2006-08-22 Michael Snyder <Michael.Snyder@PalmSource.com>
* MAINTAINERS: Update my email address.
2006-08-22 17:57:41 +00:00
Daniel Jacobowitz
8695c747d8 gdb/
* Makefile.in (amd64_linux_tdep_h): New.
	(amd64-linux-nat.o, amd64-linux-tdep.o): Update.
	* amd64-linux-nat.c (amd64_linux_gregset64_reg_offset): Add
	ORIG_RAX.
	(_initialize_amd64_linux_nat): Set amd64_native_gregset64_num_regs.
	* amd64-linux-tdep.c (amd64_linux_register_name)
	(amd64_linux_register_type, amd64_linux_register_reggroup_p)
	(amd64_linux_write_pc): New.
	(amd64_linux_init_abi): Use them, and update num_regs.
	* amd64-linux-tdep.h: New file.
	* amd64-tdep.c (amd64_register_name, amd64_register_type): Make
	public.
	* amd64-tdep.h (amd64_register_name, amd64_register_type): New
	prototypes.

	* regformats/reg-x86-64-linux.dat: New file.
gdb/testsuite/
	* Makefile.in (clean): Clean reg-x86-64-linux.c.
	(reg-x86-64-linux.o, reg-x86-64-linux.c): New.
	* configure.srv (x86_64-*-linux*): Use reg-x86-64-linux.o.
	* linux-x86-64-low.c (x86_64_regmap): Include ORIG_RAX.
	(x86_64_fill_gregset, x86_64_store_gregset): Skip floating
	point registers.
2006-08-19 15:15:18 +00:00
Daniel Jacobowitz
c17eaafea7 * infrun.c (handle_inferior_event): Check the current frame ID
before unwinding to the previous frame.
2006-08-19 03:19:00 +00:00
Daniel Jacobowitz
61049d3bcf * dwarf2read.c (quirk_gcc_member_function_pointer): Add GCC PR
number in a comment.
2006-08-18 13:26:31 +00:00
Mark Kettenis
2c9771d330 * sparc-nat.c (sparc_xfer_wcookie): Signal EOF. Tweak comment. 2006-08-18 08:49:04 +00:00
Daniel Jacobowitz
c0dd20ea15 * dwarf2read.c (quirk_gcc_member_function_pointer): New.
(read_structure_type): Call it.
2006-08-18 04:10:30 +00:00
Daniel Jacobowitz
17218d9171 * NEWS: Mention "set trust-readonly-sections" fix. 2006-08-16 20:33:23 +00:00
Daniel Jacobowitz
2bc416ba69 * remote.c, target.c: Strip trailing whitespace. 2006-08-16 18:31:03 +00:00
Daniel Jacobowitz
cf7a04e8fb PR remote/1966
* dcache.c (dcache_write_line): Use target_write.
	(dcache_read_line): Use target_read.
	* mi/mi-main.c (mi_cmd_data_read_memory): Use target_read.
	* symfile.c (struct load_section_data): Add new per-section
	members.
	(load_progress): New function.
	(load_section_callback): Pass load_progress to the new
	target_write_with_progress.
	* target.c (current_xfer_partial, memory_xfer_partial): New.
	(target_xfer_partial): New prototype.
	(target_xfer_memory, target_xfer_partial_p, xfer_using_stratum)
	(do_xfer_memory, target_xfer_memory_partial)
	(target_read_memory_partial, target_write_memory_partial): Delete.
	(trust_readonly): Move higher in the file.
	(update_current_target): Use current_xer_partial.
	(target_xfer_partial): Use memory_xfer_partial.  Handle
	TARGET_OBJECT_RAW_MEMORY specially.
	(target_read_memory): Use target_read.
	(target_write_memory): Use target_write.
	(default_xfer_partial): Call to_xfer_partial directly.
	(target_write_with_progress): New function, based on target_write.
	(target_write): Call it.
	* target.h (enum target_object): Add TARGET_OBJECT_RAW_MEMORY.
	(target_write_with_progress): New prototype.
	(do_xfer_memory, target_read_memory_partial)
	(target_write_memory_partial): Delete prototypes.
2006-08-15 18:46:25 +00:00
Daniel Jacobowitz
b2182ed226 * remote.c (remote_write_bytes): Take a const buffer argument.
Do the checks from remote_xfer_memory.
	(remote_read_bytes): Do the checks from remote_xfer_memory.
	(remote_xfer_memory): Remove checks pushed into lower level
	functions.
	(remote_xfer_partial): Call remote_write_bytes and remote_read_bytes
	directly.
	* remote.h (remote_write_bytes): Update prototype.
2006-08-15 18:17:57 +00:00
Andrew Stubbs
9fa66fd711 2006-08-11 Andrew Stubbs <andrew.stubbs@st.com>
* NEWS: Add 'set trace-commands' command.
2006-08-11 12:46:03 +00:00