2019-07-17 10:11:31 +02:00
|
|
|
# RUN: llvm-mc -triple=mips64-unknown-linux-gnuabin32 -position-independent %s \
|
|
|
|
# RUN: | FileCheck -check-prefix=ASM-PIC32 %s
|
|
|
|
# RUN: llvm-mc -triple=mips64-unknown-linux-gnu -position-independent %s \
|
|
|
|
# RUN: | FileCheck -check-prefix=ASM-PIC64 %s
|
|
|
|
# RUN: llvm-mc -triple=mips64-unknown-linux-gnuabin32 %s \
|
|
|
|
# RUN: | FileCheck -check-prefix=ASM-NPIC %s
|
|
|
|
# RUN: llvm-mc -triple=mips64-unknown-linux-gnu %s \
|
|
|
|
# RUN: | FileCheck -check-prefix=ASM-NPIC %s
|
|
|
|
|
|
|
|
# RUN: llvm-mc -triple=mips64-unknown-linux-gnuabin32 \
|
|
|
|
# RUN: -position-independent -filetype=obj -o - %s \
|
2020-03-16 00:17:52 +01:00
|
|
|
# RUN: | llvm-objdump -d -r - | FileCheck --check-prefix=OBJ32 %s
|
2019-07-17 10:11:31 +02:00
|
|
|
# RUN: llvm-mc -triple=mips64-unknown-linux-gnu \
|
|
|
|
# RUN: -position-independent -filetype=obj -o - %s \
|
2020-03-16 00:17:52 +01:00
|
|
|
# RUN: | llvm-objdump -d -r - | FileCheck --check-prefix=OBJ64 %s
|
2019-07-17 10:11:31 +02:00
|
|
|
|
|
|
|
# ASM-PIC32: .text
|
|
|
|
# ASM-PIC32: .cplocal $4
|
|
|
|
# ASM-PIC32: lw $25, %call16(foo)($4)
|
|
|
|
# ASM-PIC32: jalr $25
|
|
|
|
|
|
|
|
# ASM-PIC64: .text
|
|
|
|
# ASM-PIC64: .cplocal $4
|
|
|
|
# ASM-PIC64: ld $25, %call16(foo)($4)
|
|
|
|
# ASM-PIC64: jalr $25
|
|
|
|
|
|
|
|
# ASM-NPIC: .text
|
|
|
|
# ASM-NPIC: .cplocal $4
|
|
|
|
# ASM-NPIC: jal foo
|
|
|
|
|
|
|
|
# OBJ32: lw $25, 0($4)
|
|
|
|
# OBJ32: R_MIPS_CALL16 foo
|
|
|
|
# OBJ32: jalr $25
|
|
|
|
# OBJ32: R_MIPS_JALR foo
|
|
|
|
|
|
|
|
# OBJ64: ld $25, 0($4)
|
|
|
|
# OBJ64: R_MIPS_CALL16/R_MIPS_NONE/R_MIPS_NONE foo
|
|
|
|
# OBJ64: jalr $25
|
|
|
|
# OBJ64: R_MIPS_JALR/R_MIPS_NONE/R_MIPS_NONE foo
|
|
|
|
|
|
|
|
.text
|
|
|
|
.cplocal $4
|
|
|
|
jal foo
|
|
|
|
foo:
|
|
|
|
nop
|