diff options
Diffstat (limited to 'test/ELF/mips-npic-call-pic.s')
-rw-r--r-- | test/ELF/mips-npic-call-pic.s | 50 |
1 files changed, 21 insertions, 29 deletions
diff --git a/test/ELF/mips-npic-call-pic.s b/test/ELF/mips-npic-call-pic.s index dbf053570bd9f..76c392e1f66c2 100644 --- a/test/ELF/mips-npic-call-pic.s +++ b/test/ELF/mips-npic-call-pic.s @@ -3,9 +3,14 @@ # non-PIC code calls PIC function. # RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux \ +# RUN: %p/Inputs/mips-fpic.s -o %t-fpic.o +# RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux \ +# RUN: %p/Inputs/mips-fnpic.s -o %t-fnpic.o +# RUN: ld.lld -r %t-fpic.o %t-fnpic.o -o %t-sto-pic.o +# RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux \ # RUN: %p/Inputs/mips-pic.s -o %t-pic.o # RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux %s -o %t-npic.o -# RUN: ld.lld %t-npic.o %t-pic.o %p/Inputs/mips-sto-pic.o -o %t.exe +# RUN: ld.lld %t-npic.o %t-pic.o %t-sto-pic.o -o %t.exe # RUN: llvm-objdump -d %t.exe | FileCheck %s # CHECK: Disassembly of section .text: @@ -22,7 +27,7 @@ # CHECK-NEXT: 20018: 0c 00 80 19 jal 131172 <foo2+0x4> # ^-- .pic.foo2 # CHECK-NEXT: 2001c: 00 00 00 00 nop -# CHECK-NEXT: 20020: 0c 00 80 28 jal 131232 <fnpic+0x10> +# CHECK-NEXT: 20020: 0c 00 80 25 jal 131220 <fnpic+0x4> # ^-- .pic.fpic # CHECK-NEXT: 20024: 00 00 00 00 nop # CHECK-NEXT: 20028: 0c 00 80 24 jal 131216 <fnpic> @@ -56,25 +61,19 @@ # CHECK-NEXT: 20078: 00 00 00 00 nop # CHECK-NEXT: 2007c: 00 00 00 00 nop # -# CHECK: fpic: -# CHECK-NEXT: 20080: 00 00 00 00 nop -# CHECK-NEXT: 20084: 00 00 00 00 nop -# CHECK-NEXT: 20088: 00 00 00 00 nop -# CHECK-NEXT: 2008c: 00 00 00 00 nop +# CHECK: fpic: +# CHECK-NEXT: 20080: 00 00 00 00 nop # -# CHECK: fnpic: +# CHECK: fnpic: # CHECK-NEXT: 20090: 00 00 00 00 nop -# CHECK-NEXT: 20094: 00 00 00 00 nop -# CHECK-NEXT: 20098: 00 00 00 00 nop -# CHECK-NEXT: 2009c: 00 00 00 00 nop -# CHECK-NEXT: 200a0: 3c 19 00 02 lui $25, 2 -# CHECK-NEXT: 200a4: 08 00 80 20 j 131200 <fpic> -# CHECK-NEXT: 200a8: 27 39 00 80 addiu $25, $25, 128 +# CHECK-NEXT: 20094: 3c 19 00 02 lui $25, 2 +# CHECK-NEXT: 20098: 08 00 80 20 j 131200 <fpic> +# CHECK-NEXT: 2009c: 27 39 00 80 addiu $25, $25, 128 -# Make sure tha thunks are created properly no matter how +# Make sure the thunks are created properly no matter how # objects are laid out. # -# RUN: ld.lld %t-pic.o %t-npic.o %p/Inputs/mips-sto-pic.o -o %t.exe +# RUN: ld.lld %t-pic.o %t-npic.o %t-sto-pic.o -o %t.exe # RUN: llvm-objdump -d %t.exe | FileCheck -check-prefix=REVERSE %s # REVERSE: foo1a: @@ -112,26 +111,19 @@ # REVERSE-NEXT: 20064: 00 00 00 00 nop # REVERSE-NEXT: 20068: 0c 00 80 0d jal 131124 <foo2+0x4> # REVERSE-NEXT: 2006c: 00 00 00 00 nop -# REVERSE-NEXT: 20070: 0c 00 80 28 jal 131232 <fnpic+0x10> +# REVERSE-NEXT: 20070: 0c 00 80 25 jal 131220 <fnpic+0x4> # REVERSE-NEXT: 20074: 00 00 00 00 nop # REVERSE-NEXT: 20078: 0c 00 80 24 jal 131216 <fnpic> # REVERSE-NEXT: 2007c: 00 00 00 00 nop # -# REVERSE: fpic: +# REVERSE: fpic: # REVERSE-NEXT: 20080: 00 00 00 00 nop -# REVERSE-NEXT: 20084: 00 00 00 00 nop -# REVERSE-NEXT: 20088: 00 00 00 00 nop -# REVERSE-NEXT: 2008c: 00 00 00 00 nop # -# REVERSE: fnpic: +# REVERSE: fnpic: # REVERSE-NEXT: 20090: 00 00 00 00 nop -# REVERSE-NEXT: 20094: 00 00 00 00 nop -# REVERSE-NEXT: 20098: 00 00 00 00 nop -# REVERSE-NEXT: 2009c: 00 00 00 00 nop -# REVERSE-NEXT: 200a0: 3c 19 00 02 lui $25, 2 -# REVERSE-NEXT: 200a4: 08 00 80 20 j 131200 <fpic> -# REVERSE-NEXT: 200a8: 27 39 00 80 addiu $25, $25, 128 -# REVERSE-NEXT: 200ac: 00 00 00 00 nop +# REVERSE-NEXT: 20094: 3c 19 00 02 lui $25, 2 +# REVERSE-NEXT: 20098: 08 00 80 20 j 131200 <fpic> +# REVERSE-NEXT: 2009c: 27 39 00 80 addiu $25, $25, 128 .text .globl __start |