81f5558e3d
@(disp:32,ERx) to mov @(disp:16,ERx). (R_H8_DISP32A16): New reloc. Comments added and corrected. * reloc.c (BFD_RELOC_H8_DISP32A16): New reloc. * bfd-in2.h: Regenerate. * libbfd.h: Regenerate. * ld.texinfo (H8/300): Add description of relaxation of mov @(disp:32,ERx) to mov @(disp:16,ERx). * ld-h8300/h8300.exp: Add new relax-7 test on ELF. * ld-h8300/relax-2.s: Add other direction and .w/.l variants of mov insns. * ld-h8300/relax-2.d: Update expected disassembly. * ld-h8300/relax-7a.s: New: tests for mov @(disp:32,ERx) -> mov @(disp:16,ERx). * ld-h8300/relax-7b.s: New: Likewise. * ld-h8300/relax-7.d: New: expected disassembly. * config/tc-h8300.c (do_a_fix_imm): Add relaxation of mov @(disp:32,ERx) to mov @(disp:16,ERx) insns by new reloc R_H8_DISP32A16. * config/tc-h8300.h: Remove duplicated defines.
20 lines
382 B
ArmAsm
20 lines
382 B
ArmAsm
.h8300s
|
|
.global var1,var2,var3,var4,var5,var6
|
|
|
|
.equ var1,0xffffff00
|
|
.equ var2,0xfffffff0
|
|
.equ var3,0xffff8000
|
|
|
|
.equ var4,0xffff7ff0
|
|
.equ var5,0xffff7ff8
|
|
.equ var6,0x00ffff00
|
|
|
|
.section .rodata.tab2,"a",@progbits
|
|
.align 2
|
|
table2: # no relax in sections other than text expected:
|
|
.short 0x0100
|
|
# MOV.L @(d:24,ERs),ERd opcodes
|
|
.short 0x7800
|
|
.short 0x6b20
|
|
.long table2
|