mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-15 04:31:49 +08:00
1e50d24d55
* v850.h (R_V850_LO16_SPLIT_OFFSET): New reloc. bfd/ * reloc.c (BFD_RELOC_V850_LO16_SPLIT_OFFSET): New bfd_reloc_code_type. * elf32-v850.c (v850_elf_howto_table): Add entry for R_V850_LO16_SPLIT_OFFSET. (v850_elf_reloc_map): Map it to BFD_RELOC_V850_LO16_SPLIT_OFFSET. (v850_elf_perform_lo16_relocation): New function, extracted from... (v850_elf_perform_relocation): ...here. Use it to handle R_V850_LO16_SPLIT_OFFSET. (v850_elf_check_relocs, v850_elf_final_link_relocate): Handle R_V850_LO16_SPLIT_OFFSET. * libbfd.h, bfd-in2.h: Regenerate. gas/ * config/tc-v850.c (handle_lo16): New function. (v850_reloc_prefix): Use it to check lo(). (md_assemble, md_apply_fix3): Handle BFD_RELOC_V850_LO16_SPLIT_OFFSET. gas/testsuite/ * gas/v850/split-lo16.{s,d}: New test. * gas/v850/v850.exp: Run it. ld/testsuite/ * ld-v850: New directory.
27 lines
957 B
Makefile
27 lines
957 B
Makefile
#source: split-lo16.s -mv850e
|
|
#ld: -Tsplit-lo16.ld
|
|
#objdump: -d
|
|
#...
|
|
00010000 <.*>:
|
|
10000: 40 0e 34 12 movhi 4660, r0, r1
|
|
10004: 01 16 78 56 addi 22136, r1, r2
|
|
10008: 81 17 79 56 ld\.bu 22136\[r1\],r2
|
|
1000c: 40 0e 36 12 movhi 4662, r0, r1
|
|
10010: 01 16 78 d8 addi -10120, r1, r2
|
|
10014: 81 17 79 d8 ld\.bu -10120\[r1\],r2
|
|
10018: 40 0e 12 00 movhi 18, r0, r1
|
|
1001c: 81 17 57 34 ld\.bu 13398\[r1\],r2
|
|
10020: 01 16 56 34 addi 13398, r1, r2
|
|
10024: 40 0e 14 00 movhi 20, r0, r1
|
|
10028: 81 17 57 b6 ld\.bu -18858\[r1\],r2
|
|
1002c: 01 16 56 b6 addi -18858, r1, r2
|
|
10030: 40 0e 79 56 movhi 22137, r0, r1
|
|
10034: 01 16 bc 9a addi -25924, r1, r2
|
|
10038: 81 17 bd 9a ld\.bu -25924\[r1\],r2
|
|
1003c: 40 0e 9b 78 movhi 30875, r0, r1
|
|
10040: 81 17 df bc ld\.bu -17186\[r1\],r2
|
|
10044: 01 16 de bc addi -17186, r1, r2
|
|
10048: 40 0e 45 23 movhi 9029, r0, r1
|
|
1004c: a1 17 89 67 ld\.bu 26505\[r1\],r2
|
|
#pass
|