* ldlang.h (struct lang_nocrossref): Define.
(struct lang_nocrossrefs): Define.
(nocrossref_list): Declare.
(lang_add_nocrossref): Declare.
* ldlex.l: Recognize NOCROSSREFS keyword.
* ldgram.y (%union): Add nocrossref field.
(NOCROSSREFS): New terminal.
(ifile_p1): Recognize NOCROSSREFS.
(nocrossref_list): New nonterminal.
* ldlang.c (nocrossref_list): Define.
(lang_add_nocrossref): New function.
* ldmain.c (main): If nocrossref_list is not NULL, call
check_nocrossrefs.
(warning_callback): Free symbols if there is no place to store
them.
(notice): Call add_cref if nocrossref_list is not NULL.
* ldcref.c: Include "ldexp.h" and "ldlang.h".
(check_nocrossrefs): New function.
(check_nocrossref): New static function.
(struct check_refs_info): Define.
(check_refs, check_reloc_refs): New static functions.
* Makefile.in: Rebuild dependencies.
* ld.texinfo (Option Commands): Document NOCROSSREFS.
this, define when contents are included.
(mips_read_processor_type): Add prototype.
* config/mips/xm-mips.h: Remove strdup decl, now in gdb_string.h
* mdebugread.c (ecoff_relocate_efi): Add prototype.
(fixup_sigtramp): Only needed when TM_MIPS_H is defined.
* elf.c (map_sections_to_segments): If D_PAGED is not set, set
phdr_in_section to false, and always use a single load segment.
(elf_sort_sections): Sort sections by LMA after VMA.
(assign_file_positions_for_segments): If D_PAGED is not set, don't
align to maxpagesize.
(assign_file_positions_except_relocs): Likewise.
* elfcode.h (elf_object_p): If a section is loaded but not page
aligned, clear D_PAGED.
* config/tc-arm.c: Changed INSN_SIZE to variable insn_size, as
pre-cursor to adding Thumb support. Also added cpu_variant flag
information to each of the asm_flg structures.
(md_parse_option): Updated ARM7 parsing to allow 't' for
thumb/halfword support, aswell as 'm' for long multiply.
(md_show_usage): Updated help message.
(md_assemble): Check that instruction flags are applicated to the
current cpu variant.
(md_apply_fix3, tc_gen_reloc): Add BFD_RELOC_ARM_OFFSET_IMM8 and
BFD_RELOC_ARM_HWLITERAL relocation support for new halfword and
signextension instructions.
(do_ldst): Generate halfword and signextension variants if
mnemonic flags match.
(ldst_extend): Do not allow shifts in the offset field of halfword
or signextension instructions.
(validate_offset_imm): Provide check on halfword and signextension
immediate range.
(add_to_lit_pool): Merge identical literal pool values.
Wed Jul 31 15:55:12 1996 James G. Smith <jsmith@cygnus.co.uk>
* gas/arm/arm7t.s: Added.
* gas/arm/arm7t.d: Added.
* gas/arm/arm.exp: Updated to run the new test.
* arm-opc.h: (arm_opcodes): Added halfword and sign-extension
memory transfer instructions. Add new format string entries %h and %s.
* arm-dis.c: (print_insn_arm): Provide decoding of the new
formats %h and %s.
(cons_fix_new_hppa): Don't coke on e_esel.
(tc_gen_reloc, SOM version): Handle R_COMP2 when used
to help generate exception handling tables.
(md_apply_fix): Don't try to apply fixups with an e_esel
selector.
(hppa_fix_adjustable): Fixups with e_esel selectors
are not adjustable.
Another stab at EH on the PA.
(e_esel): Similarly.
* som.c (hppa_som_gen_reloc_type): If we encounter an e_esel,
then generate R_COMP2 (PUSH_SYM), R_DATA_EXPR fixup stream.
(som_write_fixups): Handle R_DATA_EXPR just like R_CODE_EXPR.
Making another stab at EH support on the PA.
(branch_dest): Remove unused variable "offset".
(pop_dummy_frame): Add prototype and make static.
(push_arguments): Guard against using len uninitialized.
(push_arguments): Guard against using arg uninitialized.
(frame_saved_pc): Remove unused variable "frameless".
(free_loadinfo): Ifdef out unused function.
be correct type for passing to qsort.
(add_stab_to_list): Ifdef out unused function and prototype.
(compare_lte): Add prototype
(arrange_linetable): Ditto.
(record_include_begin): Ditto.
(record_include_end): Ditto.
(process_linenos): Ditto.
(xcoff_next_symbol_text): Ditto.
(scan_xcoff_symtab): Ditto.
(xcoff_initial_scan): Ditto.
* ldlex.l: Remove unused definition of FILENAME. Add definition
of WILDCHAR. In SCRIPT mode, accept any sequence of WILDCHAR as a
NAME.
* ldgram.y (file_NAME_list): Accept '*' and '?' specially.
(input_section_spec): Accept '?' specially.
(statement): Change exp to mustbe_exp in length and FILL cases.
(section): Call ldlex_script before section statements, and call
ldlex_popstate after them.
* ldlang.c: Include "fnmatch.h".
(wildcardp): New static function.
(wild_section): Permit the section name to be a wildcard.
(wild_file): New static function, broken out of wild.
(wild): Call wild_file. Permit the file name to be a wildcard.
(open_input_bfds): Don't call lookup_name for a wildcard pattern.
* Makefile.in: Rebuild dependencies.
(CFILES): Add fnmatch.c.
(HFILES): Add fnmatch.h.
(OFILES): Add fnmatch.o.
* ld.texinfo: Document that file and section names can now be
wildcard patterns.
* ldlang.c (lang_place_orphans): Correct condition: place a common
section if not relocateable or if common definitions are forced.