31 lines · plain
1# RUN: llvm-mc --triple=loongarch64 %s | FileCheck --check-prefix=CHECK-ASM %s2# RUN: llvm-mc -filetype=obj --triple=loongarch64 %s \3# RUN: | llvm-readobj -r - | FileCheck -check-prefix=CHECK-RELOC %s4 5## Check .option relax causes R_LARCH_RELAX to be emitted, and .option6## norelax suppresses it.7 8# CHECK-ASM: .option relax9.option relax10 11# CHECK-ASM: pcalau12i $a0, %pc_hi20(sym1)12# CHECK-ASM-NEXT: addi.d $a0, $a0, %pc_lo12(sym1)13 14# CHECK-RELOC: R_LARCH_PCALA_HI20 sym1 0x015# CHECK-RELOC-NEXT: R_LARCH_RELAX - 0x016# CHECK-RELOC-NEXT: R_LARCH_PCALA_LO12 sym1 0x017# CHECK-RELOC-NEXT: R_LARCH_RELAX - 0x018la.pcrel $a0, sym119 20# CHECK-ASM: .option norelax21.option norelax22 23# CHECK-ASM: pcalau12i $a0, %pc_hi20(sym2)24# CHECK-ASM-NEXT: addi.d $a0, $a0, %pc_lo12(sym2)25 26# CHECK-RELOC-NEXT: R_LARCH_PCALA_HI20 sym2 0x027# CHECK-RELOC-NOT: R_LARCH_RELAX - 0x028# CHECK-RELOC-NEXT: R_LARCH_PCALA_LO12 sym2 0x029# CHECK-RELOC-NOT: R_LARCH_RELAX - 0x030la.pcrel $a0, sym231