Ulrich Weigand [Tue, 19 Oct 2010 21:30:54 +0000 (21:30 +0000)]
* arm-tdep.c (thumb_get_next_pc_raw): Handle Thumb-16 encoding
for "mov pc, REG" as well.
(thumb_instruction_changes_pc): Likewise.
Ulrich Weigand [Tue, 19 Oct 2010 21:29:23 +0000 (21:29 +0000)]
* gdb.base/watch_thread_num.exp: Revert 2008-09-03 change.
Skip test completely if gdb,no_hardware_watchpoints.
Ulrich Weigand [Tue, 19 Oct 2010 21:28:33 +0000 (21:28 +0000)]
* gdb.base/foll-fork.exp: Make regexps to match catchpoint hits more
strict, but do not check for any particular function name within libc.
Sami Wagiaalla [Tue, 19 Oct 2010 20:53:15 +0000 (20:53 +0000)]
Support overloading of 'operator->'.
2010-10-19 Sami Wagiaalla <swagiaal@redhat.com>
PR C++/11500:
* valarith.c (value_x_unop): Handle STRUCTOP_PTR.
* eval.c (evaluate_subexp_standard): Check for overload of
'operator->'.
* valarith.c (value_x_binop): Throw NOT_FOUND_ERROR.
(value_x_unop): Ditto.
* valops.c: Include "exceptions.h".
(find_overload_match): Throw NOT_FOUND_ERROR.
(value_struct_elt): Ditto.
2010-10-19 Sami Wagiaalla <swagiaal@redhat.com>
* gdb.cp/smartp.exp: New test.
* gdb.cp/smartp.cc : New test.
Tom Tromey [Tue, 19 Oct 2010 20:11:37 +0000 (20:11 +0000)]
* python/py-cmd.c (cmdpy_function): Unreference exception state.
H.J. Lu [Tue, 19 Oct 2010 17:13:30 +0000 (17:13 +0000)]
Add testcase for PR gas/12049.
2010-10-19 H.J. Lu <hongjiu.lu@intel.com>
PR gas/12049
* gas/i386/i386.exp: Run relax-1 and relax-2.
* gas/i386/relax-1.d: New.
* gas/i386/relax-1.s: Likewise.
* gas/i386/relax-2.d: Likewise.
* gas/i386/relax-2.s: Likewise.
Sami Wagiaalla [Tue, 19 Oct 2010 16:07:25 +0000 (16:07 +0000)]
Support pointer to bool conversion.
2010-10-19 Sami Wagiaalla <swagiaal@redhat.com>
* gdbtypes.h: Introduce BOOL_PTR_CONVERSION_BADNESS.
* gdbtypes.c (rank_one_type): Use BOOL_PTR_CONVERSION_BADNESS
for conversion.
Make all other conversions illegal.
2010-10-19 Sami Wagiaalla <swagiaal@redhat.com>
* gdb.cp/converts.exp: Test pointer to bool conversion.
Test pointer to long conversion.
* gdb.cp/oranking.exp: Removed relevant kfail.
Alan Modra [Tue, 19 Oct 2010 12:14:23 +0000 (12:14 +0000)]
* write.c (relax_segment): Correct address on frag added to stop
leb128/align frags bouncing.
Alan Modra [Tue, 19 Oct 2010 12:00:33 +0000 (12:00 +0000)]
PR gas/12049
* frags.h (struct frag): Add "region" field.
* write.c (relax_frag): Don't add "stretch" to forward reference
target if there is an intervening org or align.
(relax_segment): Set region.
Doug Evans [Tue, 19 Oct 2010 04:22:20 +0000 (04:22 +0000)]
* c-typeprint.c (c_type_print_base, case TYPE_CODE_TYPEDEF): Verify
assumptions of when this case happens. Print "<unnamed typedef>".
gdbadmin [Tue, 19 Oct 2010 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Mon, 18 Oct 2010 23:00:05 +0000 (23:00 +0000)]
daily update
Tom Tromey [Mon, 18 Oct 2010 19:14:03 +0000 (19:14 +0000)]
gdb
* valprint.c (val_print_string): Pass 'encoding' to
LA_PRINT_STRING.
gdb/testsuite
* gdb.python/py-prettyprint.exp (run_lang_tests): Test encoding
argument to lazy_string.
* gdb.python/py-prettyprint.py (pp_ls_encoding): New global.
(pp_ls.to_string): Use it.
* gdb.python/py-prettyprint.c (main): Move declarations to top.
Add "estring2" local.
DJ Delorie [Mon, 18 Oct 2010 17:08:53 +0000 (17:08 +0000)]
merge from gcc
Kai Tietz [Mon, 18 Oct 2010 05:50:31 +0000 (05:50 +0000)]
2010-10-18 Kai Tietz <kaI.tietz@onevision.com>
* gas/i386/disp32.d: Adjust initial symbol check.
* gas/i386/x86-64-disp32.d: Likewise.
Cary Coutant [Mon, 18 Oct 2010 05:39:23 +0000 (05:39 +0000)]
* output.h (Output_segment::set_section_addresses): Change function
signature. Update all callers.
* output.cc (Output_segment::is_first_section_relro): Ignore TLS
sections.
(Output_segment::set_section_addresses): Align after last TLS
section. Add padding before last relro section instead of after.
Maciej W. Rozycki [Mon, 18 Oct 2010 01:35:06 +0000 (01:35 +0000)]
* gas/mips/ld.d: Spell out section offsets and addends
explicitly. Clean up some regexps.
* gas/mips/ld-ilocks.d: Likewise. Add missing "$" prefixes to
the names of FP registers.
* gas/mips/ld-ilocks-addr32.d: Likewise.
* gas/mips/ld.s: Align sections to 4k, adjust padding.
Maciej W. Rozycki [Mon, 18 Oct 2010 00:55:23 +0000 (00:55 +0000)]
* gas/mips/ld.d: Use wildcard address matching.
* gas/mips/ld-ilocks.d: Likewise.
* gas/mips/ld-ilocks-addr32.d: Likewise.
Maciej W. Rozycki [Mon, 18 Oct 2010 00:44:18 +0000 (00:44 +0000)]
* gas/mips/mips.exp (run_dump_test_arch): Get the name of the
architecture to check against for an architecture-specific test
from the properties instead of the name passed.
Maciej W. Rozycki [Mon, 18 Oct 2010 00:17:43 +0000 (00:17 +0000)]
* config/tc-mips.c (macro)[ldd_std]: Fix the relaxation variant
for absolute addressing.
Maciej W. Rozycki [Mon, 18 Oct 2010 00:15:35 +0000 (00:15 +0000)]
opcodes/
* mips-opc.c (mips_builtin_opcodes): Move M_LD_OB and M_SD_OB
macros before their corresponding MIPS III hardware instructions.
gas/
* config/tc-mips.c (macro)[M_LD_OB, M_SD_OB]: Handle 64-bit ABIs.
gas/testsuite/
* gas/mips/lineno.s: Convert to o32.
* gas/mips/lineno.d: Adjust patterns accordingly. Force the o32
ABI.
Maciej W. Rozycki [Mon, 18 Oct 2010 00:11:08 +0000 (00:11 +0000)]
* config/tc-mips.c (mips_pseudo_table): Add "sbss".
(s_change_sec): Handle it.
gdbadmin [Mon, 18 Oct 2010 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 17 Oct 2010 23:00:05 +0000 (23:00 +0000)]
daily update
Jan Kratochvil [Sun, 17 Oct 2010 18:55:09 +0000 (18:55 +0000)]
gdb/testsuite/
Fix s390x compatibility.
* gdb.dwarf2/pr11465.S (DW_TAG_pointer_type): Use PTRBITS. Twice.
* gdb.dwarf2/pr11465.exp: Set ptrbits, use it for -DPTRBITS.
Jan Kratochvil [Sun, 17 Oct 2010 18:49:47 +0000 (18:49 +0000)]
gdb/
Fix the `stopped language detection' testcase for gcc-4.5.
* dwarf2read.c (read_partial_die): Set also LANGUAGE_OF_MAIN.
* symfile.c (set_initial_language): Move variable filename to a more
inner block. Prefer LANGUAGE_OF_MAIN.
* symtab.c (language_of_main): New variable.
(set_main_name): Always reset LANGUAGE_OF_MAIN.
* symtab.h (language_of_main): New declaration.
Jan Kratochvil [Sun, 17 Oct 2010 18:24:47 +0000 (18:24 +0000)]
gdb/
* gdbthread.h (currently_stepping): New declaration.
* infrun.c (currently_stepping): Remove the forward declaration.
(currently_stepping): Make it global.
* linux-nat.c (resume_callback) <lp->stopped && lp->status == 0>: New
variables tp and step, initialized them. Pass STEP to to_resume.
Print also possibly "PTRACE_SINGLESTEP" if STEP. Initialize LP->STEP.
* remote.c (currently_stepping_callback): New.
(remote_vcont_resume)
<ptid_equal (ptid, minus_one_ptid) || ptid_is_pid (ptid)>:
New variable tp. Call currently_stepping_callback and step such
thread.
gdb/testsuite/
* gdb.threads/sigstep-threads.exp: New file.
* gdb.threads/sigstep-threads.c: New file.
Jan Kratochvil [Sun, 17 Oct 2010 17:45:17 +0000 (17:45 +0000)]
gdb/
* infrun.c (follow_exec): Replace symbol_file_add_main by
symbol_file_add with SYMFILE_DEFER_BP_RESET, set_initial_language and
breakpoint_re_set.
* m32r-rom.c (m32r_load, m32r_upload_command): Use parameter 0 for
clear_symtab_users.
* objfiles.c (free_all_objfiles): Likewise.
* remote-m32r-sdi.c (m32r_load): Likewise.
* solib-som.c (som_solib_create_inferior_hook): Likewise.
* symfile.c (new_symfile_objfile): New comment for add_flags. Call
clear_symtab_users with ADD_FLAGS.
(reread_symbols): Use parameter 0 for clear_symtab_users.
(clear_symtab_users): New parameter add_flags. Do not call
breakpoint_re_set if SYMFILE_DEFER_BP_RESET.
(clear_symtab_users_cleanup): Use parameter 0 for clear_symtab_users.
* symtab.h (clear_symtab_users): New parameter add_flags.
gdb/testsuite/
* gdb.base/pie-execl.exp: New file.
* gdb.base/pie-execl.c: New file.
Doug Kwan [Sun, 17 Oct 2010 15:12:50 +0000 (15:12 +0000)]
2010-10-17 Doug Kwan <dougkwan@google.com>
* gold/arm.cc (Target_arm::got_section): Use correct order and set
GOT output section to be writable.
Jan Kratochvil [Sun, 17 Oct 2010 08:43:46 +0000 (08:43 +0000)]
gdb/
Fix GCC false warning.
* varobj.c (value_get_print_value) <str_addr>: Initialize it.
gdbadmin [Sun, 17 Oct 2010 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sat, 16 Oct 2010 23:00:05 +0000 (23:00 +0000)]
daily update
H.J. Lu [Sat, 16 Oct 2010 21:53:16 +0000 (21:53 +0000)]
Add CpuNop to CPU_GENERIC64_FLAGS.
gas/testsuite/
2010-10-16 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/i386.exp: Run x86-64-nops-1-g64.
* gas/i386/x86-64-nops-1.d: Remove -mtune=generic64.
* gas/i386/x86-64-nops-1-g64.d: New.
opcodes/
2010-10-16 H.J. Lu <hongjiu.lu@intel.com>
* i386-gen.c (cpu_flag_init): Add CpuNop to CPU_GENERIC64_FLAGS.
* i386-init.h: Regenerated.
Kai Tietz [Sat, 16 Oct 2010 20:11:40 +0000 (20:11 +0000)]
2010-10-16 Kai Tietz <kai.tietz@onevision.com>
* ld-pe/pe-run2.exp: Prefix --enable-auto-import by -Wl.
Cary Coutant [Sat, 16 Oct 2010 00:37:25 +0000 (00:37 +0000)]
* layout.cc (Layout::set_segment_offsets): Don't try to realign data
segment that has been aligned for relro.
* output.cc (Output_segment::set_section_addresses): Change signature;
adjust all callers. Account for alignment when totalling
size of relro sections.
* output.h (Output_segment::set_section_addresses): Change signature.
* testsuite/Makefile.am (relro_test.sh, relro_test.stdout): New
targets.
* testsuite/Makefile.in: Regenerate.
* testsuite/relro_test.cc: Add alignment attributes to test proper
alignment of relro sections when padding is necessary.
* testsuite/relro_test.sh: New script.
gdbadmin [Sat, 16 Oct 2010 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Pierre Muller [Fri, 15 Oct 2010 23:08:04 +0000 (23:08 +0000)]
* p-typeprint.c (pascal_type_print_method_args): Fix problem in
display of type of method arguments.
Alan Modra [Fri, 15 Oct 2010 23:00:05 +0000 (23:00 +0000)]
daily update
Mike Frysinger [Fri, 15 Oct 2010 20:53:28 +0000 (20:53 +0000)]
gas: blackfin: add tests for recent loop label fixes
Signed-off-by: David Gibson <david.gibson@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Fri, 15 Oct 2010 20:52:36 +0000 (20:52 +0000)]
gas: blackfin: add illegal insn tests
Make sure all illegal insns get assembled & decoded correctly.
Signed-off-by: Robin Getz <robin.getz@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Fri, 15 Oct 2010 20:44:46 +0000 (20:44 +0000)]
gas: blackfin: fix encoding of BYTEOP2M insn
The BYTEOP2M parser incorrectly calls BYTEOP2P to generate the opcode.
Once we've fixed that, it's easy to see that the disassembler also likes
to decode this insn incorrectly. So fix that and then add some tests.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Fri, 15 Oct 2010 20:43:16 +0000 (20:43 +0000)]
gas: blackfin: generalize matching in the video tests
The exact symbol addresses are not important to these tests. We only
care about the opcodes and the disassembly output. This makes adding
more insns to these tests easier.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Tom Tromey [Fri, 15 Oct 2010 18:54:13 +0000 (18:54 +0000)]
PR python/11948:
* varobj.c (value_get_print_value): Use val_print_string to print
lazy strings.
* python/py-prettyprint.c (print_string_repr): Use
val_print_string to print lazy strings. Fix cleanup logic.
(print_children): Likewise.
* python/python-internal.h (gdbpy_extract_lazy_string): Update.
* python/py-lazy-string.c (gdbpy_extract_lazy_string): Rewrite.
Change return type to 'void', add 'addr' argument.
* value.h (val_print_string): Update.
* valprint.c (val_print_string): Add 'encoding' argument.
* printcmd.c (print_formatted): Update.
* p-valprint.c (pascal_val_print): Update.
* m2-valprint.c (print_unpacked_pointer): Update.
(m2_print_array_contents): Likewise.
* jv-valprint.c (java_value_print): Update.
* f-valprint.c (f_val_print): Update.
* c-valprint.c (c_val_print): Update.
* auxv.c (fprint_target_auxv): Update.
Jan Kratochvil [Fri, 15 Oct 2010 17:48:48 +0000 (17:48 +0000)]
gdb/
PR exp/12117
* gdbtypes.c (check_typedef): Clean up function comment.
Keep track of instance flags as we strip typedefs and create a new
type to preserve them if necessary.
* gdbtypes.h (type) <instance_flags>: Extend the comment.
gdb/testsuite/
PR exp/12117
* gdb.cp/ptype-cv-cp.cc: New file.
* gdb.cp/ptype-cv-cp.exp: New file.
Dave Korn [Fri, 15 Oct 2010 16:21:41 +0000 (16:21 +0000)]
Provide win32-based dlapi replacements on windows platforms without dlfcn.h.
ld/ChangeLog:
* configure.in: If <dlfcn.h> can't be found, try for <Windows.h>
* configure: Regenerate.
* config.in: Likewise.
* plugin.c [!HAVE_DLFCN_H && HAVE_WINDOWS_H] (dlopen): Provide
trival LoadLibrary-based replacement for Windows systems.
[!HAVE_DLFCN_H && HAVE_WINDOWS_H] (dlsym): Likewise trivial
replacement based on GetProcAddress.
[!HAVE_DLFCN_H && HAVE_WINDOWS_H] (dlsym): Likewise FreeLibrary.
* sysdep.h: Don't infer presence of <dlfcn.h> from ENABLE_PLUGINS
anymore, use its own guard.
Dave Korn [Fri, 15 Oct 2010 16:09:36 +0000 (16:09 +0000)]
Fix potential use-after-free bugs.
ld/ChangeLog:
* plugin.c (add_input_file): Take copy of input string.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
Dave Korn [Fri, 15 Oct 2010 16:07:06 +0000 (16:07 +0000)]
Avoid testsuite errors when no cross compiler is available.
ld/testsuite/ChangeLog:
* ld-plugin/plugin.exp: Don't error out if there is no target compiler
available, make tests UNSUPPORTED instead.
Pierre Muller [Fri, 15 Oct 2010 15:42:51 +0000 (15:42 +0000)]
* p-lang.c (is_pascal_string_type): Use TYPE_FIELD_NAME accessor.
gdbadmin [Fri, 15 Oct 2010 00:00:04 +0000 (00:00 +0000)]
*** empty log message ***
H.J. Lu [Thu, 14 Oct 2010 23:16:19 +0000 (23:16 +0000)]
Remove CheckRegSize from movq.
2010-10-14 H.J. Lu <hongjiu.lu@intel.com>
* i386-opc.tbl: Remove CheckRegSize from movq.
* i386-tbl.h: Regenerated.
Alan Modra [Thu, 14 Oct 2010 23:00:05 +0000 (23:00 +0000)]
daily update
Cary Coutant [Thu, 14 Oct 2010 22:10:22 +0000 (22:10 +0000)]
* debug.h (DEBUG_INCREMENTAL): New flag.
(debug_string_to_enum): Add DEBUG_INCREMENTAL).
* gold.cc (queue_initial_tasks): Check parameters for incremental link
mode.
* incremental.cc (report_command_line): Ignore all forms of
--incremental.
* layout.cc (Layout::Layout): Check parameters for incremental link
mode.
* options.cc (General_options::parse_incremental): New function.
(General_options::parse_no_incremental): New function.
(General_options::parse_incremental_full): New function.
(General_options::parse_incremental_update): New function.
(General_options::incremental_mode_): New data member.
(General_options::finalize): Check incremental_mode_.
* options.h (General_options): Update help text for --incremental.
Add --no-incremental, --incremental-full, --incremental-update.
(General_options::Incremental_mode): New enum type.
(General_options::incremental_mode): New function.
(General_options::incremental_mode_): New data member.
* parameters.cc (Parameters::incremental_mode_): New data member.
(Parameters::set_options): Set incremental_mode_.
(Parameters::set_incremental_full): New function.
(Parameters::incremental): New function.
(Parameters::incremental_update): New function.
(set_parameters_incremental_full): New function.
* parameters.h (Parameters::set_incremental_full): New function.
(Parameters::incremental): New function.
(Parameters::incremental_update): New function.
(Parameters::incremental_mode_): New data member.
(set_parameters_incremental_full): New function.
* plugin.cc (Plugin_manager::add_input_file): Check parameters for
incremental link mode.
* reloc.cc (Sized_relobj::do_read_relocs): Likewise.
(Sized_relobj::do_relocate_sections): Likewise.
* testsuite/Makefile.am (incremental_test): Use --incremental-full
option.
* testsuite/Makefile.in: Regenerate.
* testsuite/incremental_test.sh: Filter all forms of --incremental.
H.J. Lu [Thu, 14 Oct 2010 21:37:30 +0000 (21:37 +0000)]
Remove CheckRegSize from instructions with 0, 1 or fixed operands.
2010-10-14 H.J. Lu <hongjiu.lu@intel.com>
* i386-opc.tbl: Remove CheckRegSize from instructions with
0, 1 or fixed operands.
* i386-tbl.h: Regenerated.
H.J. Lu [Thu, 14 Oct 2010 18:45:10 +0000 (18:45 +0000)]
Add CheckRegSize to instructions which require register size check.
gas/
2010-10-14 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (match_template): Check checkregsize
instead of w for register size check.
gas/testsuite/
2010-10-14 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/i386.exp: Run inval-reg.
* gas/i386/inval-reg.l: New.
* gas/i386/inval-reg.s: Likewise.
opcodes/
2010-10-14 H.J. Lu <hongjiu.lu@intel.com>
* i386-gen.c (opcode_modifiers): Add CheckRegSize.
* i386-opc.h (CheckRegSize): New.
(i386_opcode_modifier): Add checkregsize.
* i386-opc.tbl: Add CheckRegSize to instructions which
require register size check.
* i386-tbl.h: Regenerated.
Sami Wagiaalla [Thu, 14 Oct 2010 16:13:43 +0000 (16:13 +0000)]
Fixed void* vs int* overload issue (PR C++/10343).
2010-10-14 Sami Wagiaalla <swagiaal@redhat.com>
* gdbtypes.h: Create BASE_PTR_CONVERSION_BADNESS.
* gdbtypes.c (rank_one_type): Move type comparison code out of here
to...
(types_equal): ...here. And changed it as follows:
Outside of typedefs type must be of the same TYPE_CODE.
When compairing two pointers or references they are equal if their
targets are equal.
Correct pointer conversions.
2010-10-14 Sami Wagiaalla <swagiaal@redhat.com>
* gdb.cp/converts.cc: New test program.
* gdb.cp/converts.exp: New test.
* gdb.cp/overload.exp: Added test for void* vs int*.
* gdb.cp/overload.exp: Ditto.
* gdb.cp/oranking.exp: Removed related kfail.
Pierre Muller [Thu, 14 Oct 2010 15:18:54 +0000 (15:18 +0000)]
* p-lang.c (is_pascal_string_type): Avoid crashes on structures
having fields without names.
H.J. Lu [Thu, 14 Oct 2010 13:31:13 +0000 (13:31 +0000)]
Add .d32 encoding suffix.
gas/
2010-10-14 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (_i386_insn): Add disp32_encoding.
(md_assemble): Don't call optimize_disp if disp32_encoding is
set.
(parse_insn): Support .d32 to force 32bit displacement.
(output_branch): Use BIG if disp32_encoding is set.
* doc/c-i386.texi: Document .d32 encoding suffix.
gas/testsuite/
2010-10-14 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/disp32.d: New.
* gas/i386/disp32.s: Likewise.
* gas/i386/x86-64-disp32.d: Likewise.
* gas/i386/x86-64-disp32.s: Likewise.
* gas/i386/i386.exp: Run disp32 and x86-64-disp32.
Dave Korn [Thu, 14 Oct 2010 01:31:33 +0000 (01:31 +0000)]
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
gdbadmin [Thu, 14 Oct 2010 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Wed, 13 Oct 2010 23:00:05 +0000 (23:00 +0000)]
daily update
Doug Evans [Wed, 13 Oct 2010 20:08:46 +0000 (20:08 +0000)]
New python module gdb.types.
* NEWS: Document it.
* data-directory/Makefile.in (PYTHON_FILES): Add gdb/types.py.
* python/lib/gdb/types.py: New file.
testsuite/
* lib/gdb-python.exp (gdb_check_python_config): New function.
* gdb.python/Makefile.in (EXECUTABLES): Add lib-types.
* gdb.python/lib-types.cc: New file.
* gdb.python/lib-types.exp: New file.
doc/
* gdb.texinfo (Python): Add "Python modules".
(Types in Python): Add reference to gdb.types section.
(Python modules): New node.
Tom Tromey [Wed, 13 Oct 2010 17:38:09 +0000 (17:38 +0000)]
* language.h (LA_PRINT_ARRAY_INDEX): Fix argument name.
Doug Evans [Wed, 13 Oct 2010 15:10:10 +0000 (15:10 +0000)]
* c-typeprint.c: Whitespace cleanup.
(cp_type_print_method_args): Remove unnecessary forward decl.
(cp_type_print_derivation_info): Ditto.
(c_type_print_varspec_prefix): Mark as static at definition.
(c_type_print_modifier): Fix arg descriptions.
Jan Kratochvil [Wed, 13 Oct 2010 13:24:40 +0000 (13:24 +0000)]
gdb/
* python/py-breakpoint.c (bppy_set_condition): New comment.
* python/py-cmd.c (cmdpy_function): Call also gdbpy_print_stack for
failed PyUnicode_Decode.
(cmdpy_completer): Skip element for failed
python_string_to_host_string.
(cmdpy_init): Return -1 on failed python_string_to_host_string.
* python/py-frame.c (frapy_read_var): Extend the function comment.
* python/py-function.c (fnpy_init): Return -1 on failed
python_string_to_host_string.
* python/py-inferior.c (infpy_read_memory, infpy_write_memory): Extend
the function comment.
(infpy_search_memory): Extend the function comment. Remove the
PyErr_SetString call on already set error state.
* python/py-param.c (set_parameter_value): Extend the function
comment. Return -1 on failed python_string_to_host_string, twice.
(set_attr): Extend the function comment.
(compute_enum_values): Extend the function comment. New variable
back_to. Protect self->enumeration by BACK_TO cleanups. Return 0 on
failed python_string_to_host_string.
(get_doc_string): Call gdbpy_print_stack on failed
python_string_to_host_string.
(parmpy_init): Extend the function comment.
* python/py-prettyprint.c (pretty_print_one_value): Likewise.
(gdbpy_get_display_hint, print_children): Call gdbpy_print_stack on
failed python_string_to_host_string.
* python/py-value.c (valpy_new, valpy_getitem, valpy_call)
(valpy_binop, valpy_richcompare): Extend the function comment.
* python/python.c
(struct python_env) <error_type, error_value, error_traceback>: New
fields.
(restore_python_env): Handle PyErr_Occurred. Call PyErr_Restore.
(ensure_python_env): Call PyErr_Fetch.
* varobj.c (update_dynamic_varobj_children): Call gdbpy_print_stack on
failed convert_value_from_python.
(value_get_print_value): Call gdbpy_print_stack on failed
python_string_to_target_python_string.
gdb/testsuite/
* gdb.python/py-error.exp: New file.
* gdb.python/py-error.py: New file.
gdbadmin [Wed, 13 Oct 2010 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Tue, 12 Oct 2010 23:00:04 +0000 (23:00 +0000)]
daily update
Tom Tromey [Tue, 12 Oct 2010 22:44:20 +0000 (22:44 +0000)]
* python/py-prettyprint.c (search_pp_list): Fix error checking.
Sami Wagiaalla [Tue, 12 Oct 2010 20:58:17 +0000 (20:58 +0000)]
Eliminate 'is_ancestor' redundant code.
2010-10-12 Sami Wagiaalla <swagiaal@redhat.com>
* gdbtypes.c (do_is_ancestor): New function.
(is_ancestor): Use do_is_ancestor.
(is_public_ancestor): Use do_is_ancestor.
Ian Lance Taylor [Tue, 12 Oct 2010 19:23:15 +0000 (19:23 +0000)]
Correct ChangeLog attribution.
Ian Lance Taylor [Tue, 12 Oct 2010 19:21:41 +0000 (19:21 +0000)]
* script-sections.h (class Script_sections): Make
Sections_elements typedef public.
* script-sections.cc (class Sort_output_sections): Add elements_
field. Add constructor which sets it; change all callers.
(Sort_output_sections::is_before): New function.
(Sort_output_sections::operator()): Call is_before.
* configure.ac (NATIVE_OR_CROSS_LINKER): New automake
conditional.
* testsuite/script_test_10.sh: New test. Test script section
order.
* testsuite/script_test_10.t: Likewise.
* testsuite/script_test_10.s: Likewise.
* testsuite/Makefile.am: Wrap the cross linker tests and the
common tests into NATIVE_OR_CROSS_LINKER.
(check_SCRIPTS): Add script_test_10.sh.
(check_DATA): Add script_test_10.stdout.
(script_test_10.o, script_test_10): New targets.
(script_test_10.stdout): New target.
* configure, testsuite/Makefile.in: Regenerate.
Ian Lance Taylor [Tue, 12 Oct 2010 19:00:30 +0000 (19:00 +0000)]
* arm.cc (Target_arm::Scan::local): Report the unsupported reloc
error for the deprecated relocations.
(Target_arm::Scan::global): Likewise.
(Target_arm::Relocate::relocate): Likewise.
Jan Kratochvil [Tue, 12 Oct 2010 18:41:06 +0000 (18:41 +0000)]
gdb/testsuite/
* gdb.base/break-interp.exp (test_ld): Replace gdb_expect by
gdb_test_multiple.
Rainer Orth [Tue, 12 Oct 2010 18:39:36 +0000 (18:39 +0000)]
* emultempl/solaris2.em (elf_solaris2_before_allocation): Renamed
basever_syms to global_syms.
Emit global_syms into .dynamic section for all executables and
shared objects.
(elf_solaris2_after_allocation): New function.
(LDEMUL_AFTER_ALLOCATION): Use it.
* emulparams/solaris2.sh: New file.
* emulparams/elf32_sparc_sol2.sh: Use it.
* emulparams/elf64_sparc_sol2.sh: Likewise.
* emulparams/elf_i386_sol2.sh: Likewise.
* emulparams/elf_x86_64_sol2.sh: Likewise.
* Makefile.am (eelf32_sparc_sol2.c): Depend on
$(srcdir)/emulparams/solaris2.sh.
(eelf64_sparc_sol2.c): Likewise.
(eelf_x86_64_sol2.c): Likewise.
(eelf_i386_sol2.c): Likewise.
* Makefile.in: Regenerate.
Jan Kratochvil [Tue, 12 Oct 2010 18:12:49 +0000 (18:12 +0000)]
gdb/testsuite/
* gdb.base/break-interp.exp: Use ldlags for linking flags.
* gdb.base/prelink.exp: Likewise.
* gdb.base/solib-nodir.exp: Likewise.
* lib/gdb.exp (gdb_compile) <*-*-openbsd*>
(gdb_compile) <shlib_load>: Use ldlags for linking flags.
* lib/prelink-support.exp (build_executable_own_libs): Likewise.
Ulrich Weigand [Tue, 12 Oct 2010 17:17:36 +0000 (17:17 +0000)]
* break-interp.exp (test_ld): Use two separate gdb_expect statements
for the "info files" test to avoid timeouts on slow machines.
Pierre Muller [Tue, 12 Oct 2010 15:40:03 +0000 (15:40 +0000)]
* ser-go32.c (struct dos_ops): Add missing fdopen field.
Richard Sandiford [Tue, 12 Oct 2010 15:30:24 +0000 (15:30 +0000)]
gold/
* fileread.cc (Input_file::find_file): Initialize *found_name
and *namep when using the fallback search for case 4.
Matthew Gretton-Dann [Tue, 12 Oct 2010 08:46:15 +0000 (08:46 +0000)]
* gdb/arm-tdep.c (arm_mode_strings): Add NULL entry at end of array.
gdbadmin [Tue, 12 Oct 2010 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Cary Coutant [Mon, 11 Oct 2010 23:15:25 +0000 (23:15 +0000)]
* options.h (class General_options): Redefine -z lazy as an alias for
the negation of -z now.
Alan Modra [Mon, 11 Oct 2010 23:00:05 +0000 (23:00 +0000)]
daily update
Andreas Schwab [Mon, 11 Oct 2010 22:18:42 +0000 (22:18 +0000)]
binutils/:
* binutils-all/m68k/objdump.exp: Add fnop test.
* binutils-all/m68k/fnop.s: New file.
opcodes/:
* m68k-opc.c (m68k_opcodes): Move fnop before fbf.
Jan Kratochvil [Mon, 11 Oct 2010 21:36:26 +0000 (21:36 +0000)]
gdb/testsuite/
* gdb.cp/infcall-dlopen.cc (openlib): Support NULL FILENAME.
(main): Make openlib dummy call.
Ian Lance Taylor [Mon, 11 Oct 2010 20:04:04 +0000 (20:04 +0000)]
* resolve.cc (symbol_to_bits): Report the value of the unsupported
binding.
Doug Evans [Mon, 11 Oct 2010 19:24:52 +0000 (19:24 +0000)]
* c-typeprint.c (c_type_print_modifier): Add note that this prints
the address space id too.
Doug Evans [Mon, 11 Oct 2010 15:46:09 +0000 (15:46 +0000)]
* gdb.texinfo (Values From Inferior): Add reference to "Types in
Python" from gdb.Value.type description.
Andreas Krebbel [Mon, 11 Oct 2010 11:56:53 +0000 (11:56 +0000)]
2010-10-11 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* s390-opc.c: Make the instruction masks for the load/store on
condition instructions to cover the condition code mask as well.
* s390-opc.txt: lgoc -> locg and stgoc -> stocg.
2010-10-11 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* gas/s390/zarch-z196.d: Adjust the load/store on condition
instructions.
* gas/s390/zarch-z196.s: Likewise.
Alan Modra [Mon, 11 Oct 2010 09:12:25 +0000 (09:12 +0000)]
* ld-elf/orphan-region.d: xfail frv-*-*.
Alan Modra [Mon, 11 Oct 2010 09:11:34 +0000 (09:11 +0000)]
* elf32-frv.c (elf32_frv_relocate_section): Set "name" for global syms.
(elf32_frvfdpic_finish_dynamic_sections): Don't crash on
__ROFIXUP_END__ defined in shared lib.
Mike Frysinger [Mon, 11 Oct 2010 08:56:41 +0000 (08:56 +0000)]
fix dates in previous blackfin commits
Jan Kratochvil [Mon, 11 Oct 2010 08:50:33 +0000 (08:50 +0000)]
gdb/
Fix attaching to re-prelinked executables on ppc64.
* solib-svr4.c (svr4_exec_displacement): New variable plt2_asect,
initialize it, try to adjust FILESZ field by it.
Jan Kratochvil [Mon, 11 Oct 2010 08:47:47 +0000 (08:47 +0000)]
gdb/testsuite/
Fix missing _start PIE relocation on ppc64 due to stop on dl_main.
* break-interp.exp (reach): Move the core body ...
(reach_1): ... here. Use stop-on-solib-events for _dl_debug_state.
(test_ld): Provide always real argument, even to the linker. Replace
dl_main by _dl_debug_state.
Jan Kratochvil [Mon, 11 Oct 2010 08:45:12 +0000 (08:45 +0000)]
gdb/testsuite/
Fix results of prelinked PIEs on ppc*.
* gdb.base/break-interp.exp (reach, test_core, test_attach_gdb):
Accept also DISPLACEMENT "PRESENT".
(main): Replace "ZERO" displacements by "PRESENT".
Mike Frysinger [Mon, 11 Oct 2010 08:37:20 +0000 (08:37 +0000)]
gas: blackfin: reign in overeager insn flag handling
Currently, trying to declare single letter variables in Blackfin assembly
can sometimes lead to parser errors if that letter is used for insn flags.
For example, X, Z, S, M, and T are used to change the behavior of insns:
R0 = 1; R0 = 1 (X); R0 = 1 (Z);
But the current parser just looks for single letter tokens rather than
ones that show up in the (FLAGS) field. So only match these letters as
flags when they're in parentheses.
Not a complete fix, but it at least lets gcc tests pass now (the test
gcc/testsuite/gcc.c-torture/compile/mangle-1.c to be exact). A complete
fix would require a significant parser rewrite in order to handle:
R0 = (x) (x); /* zero extend the address of the symbol "x" */
R0 = W; R0 = W[P0];
Signed-off-by: Steve Kilbane <steve.kilbane@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Mon, 11 Oct 2010 08:36:30 +0000 (08:36 +0000)]
gas: blackfin: support numeric local labels with LOOP_BEGIN/LOOP_END pseudo insns
The current LOOP_BEGIN/LOOP_END pseudo insns hit parser errors when trying
to use numeric local labels. So add support for them.
Signed-off-by: David Gibson <david.gibson@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Mon, 11 Oct 2010 08:35:53 +0000 (08:35 +0000)]
gas: blackfin: fix LOOP_BEGIN/LOOP_END pseudo insns handling of local labels
The current LOOP_BEGIN/LOOP_END pseudo insns hit "Internal errors" when
using local labels as the loop names due to attempts at removing them.
Signed-off-by: David Gibson <david.gibson@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Alan Modra [Mon, 11 Oct 2010 08:10:43 +0000 (08:10 +0000)]
* ld-mmix/sec-3.d: Adjust for 2010-09-29 orphan change.
* ld-mmix/sec-7m.d: Likewise.
Thomas Schwinge [Mon, 11 Oct 2010 07:38:53 +0000 (07:38 +0000)]
* elf32-arm.c (elf32_arm_final_link_relocate)
(elf32_arm_relocate_section): Handle relocations against STN_UNDEF.
Jan Kratochvil [Mon, 11 Oct 2010 06:10:35 +0000 (06:10 +0000)]
opcodes/
* Makefile.am (libopcodes_a_SOURCES): New as empty.
* Makefile.in: Regenerate.
Dave Korn [Mon, 11 Oct 2010 00:21:45 +0000 (00:21 +0000)]
* elflink.c (_bfd_elf_link_output_relocs): Delete unused variable
"output_rel_hdr".