4a73203297
* ld-tic6x/pcr-reloc.d: New test. * ld-tic6x/pcr-reloc.s: New test. gas/testsuite/ * gas/tic6x/pcr-relocs.d: New test. * gas/tic6x/pcr-relocs.s: New test. * gas/tic6x/pcr-relocs-undef.d: New test. * gas/tic6x/pcr-relocs-undef.s: New test. * gas/tic6x/reloc-bad-2.s: Update for pcr_offset. * gas/tic6x/reloc-bad-2.l: Update for pcr_offset. bfd/ * elf32-tic6x.c (elf32_tic6x_howto_table): Add entries for R_C6000_PCR_H16 and R_C6000_PCR_L16. (elf32_tic6x_relocate_section): Handle them. gas/ * config/tc-tic6x.c (tic6x_operators): Add "pcr_offset". (tic6x_parse_name): Handle it. (tic6x_fix_new_exp): Handle O_pcr_offset. (tic6x_fix_adjustable): Return 0 for the new relocs. (md_apply_fix): Handle them. (tc_gen_reloc): Likewise. * config/tc-tic6x.h (tic6x_fix_info): Add a fix_subsy member.
29 lines
537 B
ArmAsm
29 lines
537 B
ArmAsm
.text
|
|
.align 5
|
|
_start:
|
|
L0:
|
|
ldw .d1t1 *a0,a1
|
|
ldw .d1t1 *a0,a1
|
|
ldw .d1t1 *a0,a1
|
|
L1:
|
|
MVC .s2 PCE1, b0
|
|
ldw .d1t1 *a0,a2
|
|
mvk .s2 $PCR_OFFSET (S0,L1), b2
|
|
mvkh .s2 $PCR_OFFSET (S0,L1), b2
|
|
mvk .s2 $PCR_OFFSET (S0,L2), b2
|
|
mvkh .s2 $PCR_OFFSET (S0,L2), b2
|
|
mvk .s2 $PCR_OFFSET (S1,L1), b2
|
|
mvkh .s2 $PCR_OFFSET (S1,L1), b2
|
|
mvk .s2 $PCR_OFFSET (S1,L2), b2
|
|
mvkh .s2 $PCR_OFFSET (S1,L2), b2
|
|
|
|
S0:
|
|
ldw .d1t1 *a0,a1
|
|
L2:
|
|
MVC .s2 PCE1, b0
|
|
|
|
S1:
|
|
ldw .d1t1 *a0,a1
|
|
mvkl .s2 $PCR_OFFSET (L0,L2), b2
|
|
mvkh .s2 $PCR_OFFSET (L0,L2), b2
|