* bfd.c (bfd_get_sign_extend_vma): Add cases for pe-arm-little and pei-arm-little.
authorNick Clifton <nickc@redhat.com>
Sun, 6 Aug 2006 15:04:23 +0000 (15:04 +0000)
committerNick Clifton <nickc@redhat.com>
Sun, 6 Aug 2006 15:04:23 +0000 (15:04 +0000)
commitf0927246c4fb95097b42d1e8ce6a79ba51f67e5a
treefaa35153935c6b66ca0131d878d7a255922f2388
parent9d13c14365274157af4fff8e0f18b25c7809aae7
* bfd.c (bfd_get_sign_extend_vma): Add cases for pe-arm-little and pei-arm-little.
* coff-arm.c (coff_arm_rtype_to_howto) [COFF_WITH_PE]: Handle ARM_SECREL.
  (coff_arm_reloc_type_lookup): Map BFD_RELOC_32_SECREL to  ARM_SECREL.
* pe-arm.c [COFF_SECTION_ALIGNMENT_ENTRIES]: Define.
* pei-arm.c [TARGET_UNDERSCORE]: Define for ARM_WINCE like in pe-arm.c.
  [COFF_SECTION_ALIGNMENT_ENTRIES]: Define.

* config/tc-arm.c: Move "dwarf2dbg.h" inclusion out of OBJ_ELF only block.
  (pe_directive_secrel) [TE_PE]: New function.
  (md_pseudo_table) [!OBJ_ELF]: Handle 2byte, 4byte, 8byte, file, loc, loc_mark_labels.
  [TE_PE]: Handle secrel32.
  (output_relax_insn): Remove OBJ_ELF around dwarf2_emit_insn call.
  (output_inst): Remove OBJ_ELF around dwarf2_emit_insn call.
  (arm_frob_label): Remove OBJ_ELF around dwarf2_emit_label call.
  (md_section_align): Only round section sizes here for AOUT targets.
  (tc_arm_regname_to_dw2regnum): Move out for OBJ_ELF only block.
  (tc_pe_dwarf2_emit_offset): New function.
  (md_apply_fix) [TE_PE]: Handle BFD_RELOC_32_SECREL.
  (cons_fix_new_arm): Handle O_secrel.
* config/tc-arm.h : Move DWARF2_LINE_MIN_INSN_LENGTH, DWARF2_DEFAULT_RETURN_COLUMN and DWARF2_CIE_DATA_ALIGNMENT out of OBJ_ELF only block.
  [TE_PE]: Define O_secrel, TC_DWARF2_EMIT_OFFSET, and declare tc_pe_dwarf2_emit_offset.

* ld-pe/pe.exp: Enable tests on arm-wince-pe.
* ld-pe/secrel.d: Adjust test to work on arm-wince-pe too.
bfd/ChangeLog
bfd/bfd.c
bfd/coff-arm.c
bfd/pe-arm.c
bfd/pei-arm.c
gas/ChangeLog
gas/config/tc-arm.c
gas/config/tc-arm.h
ld/testsuite/ChangeLog
ld/testsuite/ld-pe/pe.exp
ld/testsuite/ld-pe/secrel.d