2007-04-02 H.J. Lu <hongjiu.lu@intel.com>
PR ld/4090
* ldexp.h (node_type): Add lineno.
* ldexp.c: Include "ldlex.h".
(exp_intop): Set the lineno field from lineno.
(exp_bigintop): Likewise.
(exp_relop): Likewise.
(exp_nameop): Likewise.
(exp_binop): Set the lineno field from lineno of lhs.
(exp_trinop): Likewise.
(exp_unop): Set the lineno field from lineno of child.
(exp_assop): Set the lineno field from lineno of src.
(exp_provide): Likewise.
(exp_assert): Set the lineno field from lineno of exp.
(exp_get_abs_int): Set lineno from lineno of nonconstant
expression when report problem.
ld/testsuite/
2007-04-02 H.J. Lu <hongjiu.lu@intel.com>
PR ld/4090
* ld-elf/expr1.d: New file.
* ld-elf/expr1.s: Likewise.
* ld-elf/expr1.t: Likewise.
* doc/as.texinfo: Add -mvxworks-pic to the list of MIPS options.
* doc/c-mips.texi (-KPIC, -mvxworks-pic): Document.
* config/tc-mips.c (md_show_usage): Mention -mvxworks-pic.
(do_children_tests): User char[2] instead of
char so that automatic printing of pointers to char
don't give unpredicable result.
* gdb.mi/var-cmd.c (do_locals_test): Initialize
local variables.
* gdb.mi/mi-var-child.exp: Step to right line
of do_children_tests.
* gdb.mi/mi2-var-child.exp: Likewise.
* gdb.mi/mi-var-cmd.exp: Step to right line of
do_locals_tests.
(do_children_tests): User char[2] instead of
char so that automatic printing of pointers to char
don't give unpredicable result.
* gdb.mi/mi2-var-cmd.exp: Likewise.
* lib/mi-support.exp (mi_continue_to_line):
Pass test name to mi_wait_for_stop.
Do not check is_loop_target flag.
(xtensa_frob_label): Adjust calls to xtensa_move_labels.
(xg_assemble_vliw_tokens): Likewise. Also avoid calling
xtensa_move_labels for alignment of loop opcodes.
gas/
* config/tc-arm.c (encode_thumb2_ldmstm): New function.
(do_t_ldmstm): Generate 16-bit push/pop. Use encode_thumb2_ldmstm.
(do_t_push_pop): Use encode_thumb2_ldmstm.
gas/testsuite/
* gas/arm/thumb2_ldmstm.d: New test.
* gas/arm/thumb2_ldmstm.s: New test.
the Ada runtime:
* ada-lang.c: Update general comments on how Ada exception catchpoints
are implemented.
(raise_sym_name, raise_unhandled_sym_name, raise_assert_sym_name)
(__gnat_raise_nodefer_with_msg): Delete.
(ada_unhandled_exception_name_addr_ftype): New type.
(exception_support_info): New type.
(ada_unhandled_exception_name_addr): Add forward declaration.
(ada_unhandled_exception_name_addr_from_raise): Likewise.
(default_exception_support_info): New constant.
(exception_support_info_fallback): Likewise.
(exception_info): New global variable.
(ada_exception_support_info_sniffer): New function.
(ada_executable_changed_observer): Likewise.
(ada_unhandled_exception_name_addr_from_raise): Renamed from
ada_unhandled_exception_name_addr.
(ada_unhandled_exception_name_addr): Reimplement to match the
latest Ada runtime implementation.
(error_breakpoint_runtime_sym_not_found): Delete.
(ada_exception_sym_name): Get the exception sym name from
exception_info rather than hardcoding it.
(ada_exception_sal): Add call to ada_exception_support_info_sniffer.
Update error handling.
* Makefile.in (ada-lang.o): Add dependency on observer.h.
* interps.c (clear_interpreter_hooks): Do not clear
deprecated_registers_changed_hook.
* regcache.c (registers_changed): Do not call it.
* top.c (deprecated_registers_changed_hook): Do not define it.
* mi/mi-interp.c (mi_command_loop): Do not clear it.
* tui/tui-hooks.c (tui_install_hooks): Do not install it.
(tui_remove_hooks): Do not remove it.
(tui_selected_frame_level_changed_hook): Check for negative level.
Use get_selected_frame.
(tui_registers_changed_hook): Deleted.
Now handles nameless types separately.
(struct nat): New type.
(noname_undefs, noname_undefs_allocated, noname_undefs_length):
New static variables.
(read_type): Update calls to add_undefined_type.
(add_undefined_type_noname): New function.
(add_undefined_type_1): Renames from add_undefined_type.
(cleanup_undefined_types_noname): New function.
(cleanup_undefined_types_1): Renames cleanup_undefined_types.
(cleanup_undefined_types): New handles nameless types separately.
(_initialize_stabsread): Initialize our new static constants.
200x-xx-xx Richard Sandiford <richard@codesourcery.com>
Daniel Jacobowitz <dan@codesourcery.com>
* NEWS: Mention -l:foo.
* ld.texinfo: Document it.
* ldlang.c (new_afile): If a lang_input_file_is_l_enum
entry as a name beginning with a coloh, convert it to a
lang_input_file_is_search_file_enum entry without the colon.
ld/testsuite/
* ld-libs/lib-1.s, ld-libs/lib-2.s, ld-libs/lib-2.d,
* ld-libs/libs.exp: New files.
* elf.c (IS_VALID_GROUP_SECTION_HEADER): New macro.
(setup_group): Use it. Report corrupt group section headers.
(bfd_section_from_shdr): Use new macro. Replace constant 4 with
GRP_ENTRY_SIZE. Cope with NULLs in the group section table.
(elf_fake_section): Replace constant 4 with GRP_ENTRY_SIZE.
* itbl-ops.h (enum e_processor): Initialise the e_nprocs field using ITBL_NUMBER_OF_PROCESSORS.
* itbl-parse.y (yyerror): Remove use of redundant macro PARAMS.
2007-03-28 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (build_modrm_byte): For instructions with 2
register operands, encode destination in i.rm.regmem if its
RegMem bit is set.
opcodes/
2007-03-28 H.J. Lu <hongjiu.lu@intel.com>
* i386-opc.c (i386_optab): Change InvMem to RegMem for mov and
movq. Remove InvMem from sldt, smsw and str.
* i386-opc.h (InvMem): Renamed to ...
(RegMem): Update comments.
(AnyMem): Remove InvMem.