gdb/
2009-03-21 Jan Kratochvil <jan.kratochvil@redhat.com>
Jim Blandy <jimb@red-bean.com>
Thiago Jung Bauermann <bauerman@br.ibm.com>
Tom Tromey <tromey@redhat.com>
Miscellaneous fixes to the Python code.
* python/python-cmd.c (cmdpy_init): Accept keyword
arguments.
* python/python-value.c (valpy_string): Accept keyword
arguments.
(valpy_binop): Use `break' to exit from the TRY_CATCH block.
Do not call value_to_value_object on NULL RES_VAL.
(value_object_methods): Change `string' entry to also accept
keyword arguments.
(convert_value_from_python): Return a copy of the value if obj is
a gdb.Value object.
(value_object_methods): Mark the `string' method as accepting
keywords, and show method "prototype" in the doc string.
* python/python.c (get_parameter): Don't return inside a
TRY_CATCH.
* gdb.texinfo (Values From Inferior): Fix optional arguments
markup.
(Commands In Python): Adjust argument names of gdb.Command.__init__
to what the function accepts as keywords.
Alan Modra [Sat, 21 Mar 2009 02:35:27 +0000 (02:35 +0000)]
* elf32-ppc.c (is_pic_glink_stub): Delete.
(is_nonpic_glink_stub): New function.
(ppc_elf_get_synthetic_symtab): Check for last non-pic stub rather
than first pic one.
(struct ppc_elf_link_hash_table <glink_pltresolve>): Comment fix.
Tom Tromey [Fri, 20 Mar 2009 22:00:11 +0000 (22:00 +0000)]
2009-03-20 Tom Tromey <tromey@redhat.com>
Jan Kratochvil <jan.kratochvil@redhat.com>
* dwarf2read.c (process_die): Handle DW_TAG_typedef.
* eval.c (evaluate_subexp_standard) <OP_TYPE>: Strip a single
typedef.
* ada-lang.c (decode_packed_array_type): Call CHECK_TYPEDEF on the
SYMBOL_TYPE result.
* ada-typeprint.c (print_array_type): Do the NULL check
unconditionally.
Kai Tietz [Thu, 19 Mar 2009 11:02:09 +0000 (11:02 +0000)]
2009-03-19 Kai Tietz <kai.tietz@onevision.com>
* bfd-in2.h: Regenerated.
* coffcode.h (sec_to_styp_flags): For pe-coff add SEC_READONLY
for debugging sections and map memory read/write dependent on
SEC_COFF_NOREAD.
(styp_to_sec_flags): Set SEC_COFF_NOREAD for sections
without memory read flags set.
* section.c: Add SEC_COFF_NOREAD to section flags.
Alan Modra [Thu, 19 Mar 2009 07:04:12 +0000 (07:04 +0000)]
bfd/
* elf32-spu.c (spu_elf_find_overlays): Separate error return from
"no overlays" return. If there are overlays, create overlay
manager entry symbols here, so that..
(spu_elf_build_stubs): ..we don't need to set them up here.
Simplify entry symbol tests.
* elf32-spu.h (spu_elf_find_overlays): Update prototype.
ld/
* emultempl/spuelf.em (spu_before_allocation): Report errors from
spu_elf_find_overlays.
Ian Lance Taylor [Thu, 19 Mar 2009 05:51:49 +0000 (05:51 +0000)]
* script-sections.h: Include <list>.
(class Script_sections): Change Sections_elements from std::vector
to std::list. Typedef public Elements_iterator. Add
orphan_section_placement_, data_segment_align_start_, and
saw_data_segment_align_ fields. Remove data_segment_align_index_
field.
* script-sections.cc (class Orphan_section_placement): New class.
(class Sections_element): Add virtual functions is_relro and
orphan_section_init. Remove virtual function place_orphan_here.
(class Output_section_definition): Add is_relro and
orphan_section_init. Remove place_orphan_here.
(class Orphan_output_section): Likewise.
(Script_sections::Script_sections): Update for field changes.
(Script_sections::data_segment_align): Set saw_data_segment_align_
and data_segment_align_start_, not data_segment_align_index.
(Script_sections::data_segment_relro_end): Check
saw_data_segment_align_. Use data_segment_align_start_ rather
than data_segment_align_index_.
(Script_sections::place_orphan): Rewrite to use
Orphan_section_placement.
Doug Evans [Wed, 18 Mar 2009 16:47:45 +0000 (16:47 +0000)]
* linux-nat.c (linux_nat_find_memory_regions): Result of PIDGET is an
int, not a long long.
(linux_nat_info_proc_cmd): Store pid in long instead of long long.
Pedro Alves [Wed, 18 Mar 2009 15:36:01 +0000 (15:36 +0000)]
* return-nodebug.c: Don't include stdio.h.
(init): Delete.
(func): Delete definition and provide extern declaration.
(t): New.
(main): Don't call printf. Call func and store its result in t.
* return-nodebug1.c: New.
* return-nodebug.exp: Don't expect stdio output. Instead, print
the global variable t. Drop printf formatters and cast types from
foreach loop. Don't use prepare_for_testing. Compile
return-nodebug.c and return-nodebug1.c in separate steps. Don't
define FORMAT or CAST.
Andrew Stubbs [Wed, 18 Mar 2009 15:28:24 +0000 (15:28 +0000)]
2009-03-18 Andrew Stubbs <ams@codesourcery.com>
gas/
* config/tc-arm.c (md_apply_fix): Check BFD_RELOC_ARM_IMMEDIATE and
BFD_RELOC_ARM_ADRL_IMMEDIATE value is in the correct section.
Check BFD_RELOC_ARM_ADRL_IMMEDIATE has a defined symbol.
gas/testsuites/
* gas/arm/adr-invalid.d: New file.
* gas/arm/adr-invalid.l: New file.
* gas/arm/adr-invalid.s: New file.
Alan Modra [Wed, 18 Mar 2009 11:47:18 +0000 (11:47 +0000)]
bfd/
* vms-hdr.c: Don't include alloca.h.
opcodes/
* cgen-opc.c: Include alloca-conf.h rather than alloca.h.
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
Ian Lance Taylor [Wed, 18 Mar 2009 05:09:52 +0000 (05:09 +0000)]
* archive.cc (Archive::add_symbols): Check for a version attached
to the symbol name in the archive map.
* testsuite/Makefile.am (check_PROGRAMS): Add ver_test_11.
(ver_test_11_SOURCES, ver_test_11_DEPENDENCIES): Define.
(ver_test_11_LDFLAGS, ver_test_11_LDADD): Define.
(ver_test_11.a): New target.
* testsuite/Makefile.in: Rebuild.
Ian Lance Taylor [Tue, 17 Mar 2009 22:25:30 +0000 (22:25 +0000)]
* configure.ac: Check for chsize and posix_fallocate. Replace
ftruncate.
* ftruncate.c: New file, from gnulib.
* output.cc (posix_fallocate): Define dummy version if not
HAVE_POSIX_FALLOCATE.
(Output_file::map): Call posix_fallocate rather than lseek and
write.
* gold.h (ftruncate): Declare if not HAVE_FTRUNCATE.
* configure, Makefile.in, config.in: Rebuild.
Joel Brobecker [Tue, 17 Mar 2009 17:26:52 +0000 (17:26 +0000)]
* frame.c (get_prev_frame_1): Do not perform the inner_frame
sanity check if this_frame is not NORMAL.
(frame_id_inner): Update the description of this function.
Ian Lance Taylor [Tue, 17 Mar 2009 17:09:44 +0000 (17:09 +0000)]
* descriptors.cc: Include "options.h".
(FD_CLOEXEC, O_CLOEXEC): Define if not defined.
(Descriptors::open): Always use O_CLOEXEC when opening a new
descriptor. If we have a plugin, and O_CLOEXEC was not defined,
then set FD_CLOEXEC.
Alan Modra [Tue, 17 Mar 2009 12:46:19 +0000 (12:46 +0000)]
bfd/
* elf32-spu.h (struct spu_elf_params): ovly_flavour now only 1 bit.
Add compact_stub.
(emum _ovly_flavour): Delete ovly_compact, ovly_none.
* elf32-spu.c (struct spu_link_hash_table): Replace ovly_load and
ovly_return fields with ovly_entry[2]. Adjust all users.
(spu_elf_find_overlays): Set ovly_entry[1] from __icache_call_handler
when soft-icache.
(spu_elf_build_stubs): Likewise.
(ovl_stub_size): Change arg to spu_elf_params pointer. Adjust for
ovly_flavour changes. Update all callers.
(ovl_stub_size_log2): New function.
(build_stub): Handle compact icache stubs. Use different manager
entry point for stubs in non-icache area.
(spu_elf_size_stubs): Don't allocate space for indirect branch
descriptors.
(spu_elf_build_stubs): And don't built them.
ld/
* emultempl/spu_icache.S: Add new entry to dummy handler.
* emultempl/spu_icache.o_c: Regenerate.
* emultempl/spuelf.em (params): Init new field.
(no_overlays): New static var.
(spu_before_allocation): Use it.
(OPTION_SPU_COMPACT_STUBS): Define.
(PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add compact-stubs.
(PARSE_AND_LIST_ARGS_CASES): Handle compact-stubs. Adjust no-overlays
handling.
ld/testsuite/
* ld-spu/icache1.d: Update for fixed set_id, new manager entry, and
reduced data.
Ian Lance Taylor [Tue, 17 Mar 2009 07:07:21 +0000 (07:07 +0000)]
* symtab.cc (Symbol_table::define_default_version): New function,
broken out of add_from_object.
(Symbol_table::add_from_object): Call define_default_version.
(Symbol_table::define_special_symbol): Add resolve_oldsym
parameter. Change all callers. If the version for a symbol comes
from a version script, resolve it with the symbol with the same
name with no version. Also add the symbol without a version if
appropriate.
(do_define_in_output_data): If resolving with oldsym, don't delete
sym.
(do_define_in_output_segment): Likewise.
(do_define_as_constant): Likewise.
* symtab.h (class Symbol_table): Update declarations.
Alan Modra [Tue, 17 Mar 2009 05:33:00 +0000 (05:33 +0000)]
ld/
* configure.host (HOSTING_LIBS): Two dollars on shell variable
expansion to suit make.
ld/testsuite
* config/default.exp (get_link_files): Replace double dollars with
single dollars.
Hui Zhu [Tue, 17 Mar 2009 05:11:40 +0000 (05:11 +0000)]
*stack.c: Include valprint.h.
(disassemble_next_line): New enum.
(show_disassemble_next_line): New function. Show the current
value of disassemble-next-line.
(gdb_disassembly_stub_args): New struct for argument passing
between function do_gdb_disassembly and function
gdb_disassembly_stub.
(gdb_disassembly_stub): New function. Helper for
gdb_disassembly.
(do_gdb_disassembly): New function. Use TRY_CATCH to catch
the exception from the gdb_disassembly because it will be
broken by filter sometime.
(print_frame_info): If disassemble-next-line is set to auto
or on and doesn't have the line debug messages for $pc,
output the next instruction.
If disassemble-next-line is set to on and there is line debug
messages, output assembly codes for next line.
(_initialize_stack): Make the "set disassemble-next-line"
command an auto-boolean command. Change its class to
class_stack. Place it in the top level set list. Extend help
to describe the auto mode.
Joel Brobecker [Mon, 16 Mar 2009 21:12:46 +0000 (21:12 +0000)]
* remote-mips.c (mips_load): Replace call to regcache_set_valid_p,
which is undefined, by call to regcache_invalidate, which should
do what the original author wanted to do.
Joel Brobecker [Sun, 15 Mar 2009 21:05:41 +0000 (21:05 +0000)]
* aix-thread.c (aix_thread_thread_alive, aix_thread_pid_to_str):
Use the ops parameter to get to the target beneath, rather than
using the current_target global. Using the current_target global
was an unintended accident.
Joel Brobecker [Sun, 15 Mar 2009 19:38:42 +0000 (19:38 +0000)]
Modernize the aix-thread later by getting rid of the base_target
global. This brings back to life the AIX port which was otherwise
crashing all the time.
* aix-thread.c (base_target): Delete.
(pd_enable): Do not set base_target.
(aix_thread_attach): Use find_target_beneath instead of base_target.
(aix_thread_detach, aix_thread_resume, aix_thread_wait)
(aix_thread_fetch_registers, aix_thread_store_registers),
(aix_thread_xfer_partial, aix_thread_mourn_inferior)
(aix_thread_thread_alive, aix_thread_pid_to_str): Likewise.
(aix_thread_kill): Delete. Does not seem necessary.
(init_aix_thread_ops): Do not set aix_thread_ops.to_kill.
Ulrich Weigand [Sun, 15 Mar 2009 15:15:29 +0000 (15:15 +0000)]
* elf32-spu.c (spu_elf_check_vma): Do not reset auto_overlay
parameter just because fixed sections fit into local store.
(spu_elf_auto_overlay): Do not declare as "noreturn". Skip
generating overlays if fixed sections plus reserved stack
and heap space fit into local store.
Jan Kratochvil [Sun, 15 Mar 2009 09:19:40 +0000 (09:19 +0000)]
gdb/
* stack.c (return_command <retval_exp>): New variables retval_expr
and old_chain. Inline parse_and_eval to initialize retval_expr. Check
RETVAL_EXPR for UNOP_CAST and set RETURN_TYPE to the RETURN_VALUE type
if RETURN_TYPE is NULL.
gdb/doc/
* gdb.texinfo (Returning): New description for missing debug info.
Jan Kratochvil [Sat, 14 Mar 2009 14:25:55 +0000 (14:25 +0000)]
Fix a racy FAIL.
* gdb.base/multi-forks.exp (continue_to_exit_bp_loc): New function with
code from `follow parent, print pids'.
(`follow child, print pids', `follow parent, print pids'): Call it.
Replace `gdb_test "break..."' by gdb_breakpoint.