b6895b4f37
bfd/ * elf32-arm.c (elf32_arm_reloc_map): Add MOVW and MOVT relocs. (elf32_arm_final_link_relocate): Handle MOVW and MOVT relocs. (elf32_arm_gc_sweep_hook, elf32_arm_check_relocs): Ditto. * reloc.c: Ditto. * bfd-in2.h: Regenerate. * libbfd.h: Regenerate. * libcoff.h: Regenerate. gas/ * config/tc-arm.c (parse_half): New function. (operand_parse_code): Remove OP_Iffff. Add OP_HALF. (parse_operands): Ditto. (do_mov16): Reject invalid relocations. (do_t_mov16): Ditto. Use Thumb reloc numbers. (insns): Replace Iffff with HALF. (md_apply_fix): Add MOVW and MOVT relocs. (tc_gen_reloc): Ditto. * doc/c-arm.texi: Document relocation operators ld/testsuite/ * ld-arm/arm-elf.exp: Add arm-movwt. * ld-arm/arm-movwt.d: New test. * ld-arm/arm-movwt.s: New test. * ld-arm/arm.ld: Add .far.
20 lines
410 B
Text
20 lines
410 B
Text
/* Script for ld testsuite */
|
|
OUTPUT_ARCH(arm)
|
|
ENTRY(_start)
|
|
SECTIONS
|
|
{
|
|
/* Read-only sections, merged into text segment: */
|
|
PROVIDE (__executable_start = 0x8000); . = 0x8000;
|
|
.text :
|
|
{
|
|
*(.before)
|
|
*(.text)
|
|
*(.after)
|
|
*(.glue_7)
|
|
} =0
|
|
. = 0x9000;
|
|
.got : { *(.got) *(.got.plt)}
|
|
. = 0x12340000;
|
|
.far : { *(.far) }
|
|
.ARM.attribues 0 : { *(.ARM.atttributes) }
|
|
}
|