summaryrefslogtreecommitdiff
path: root/test/ELF/mips-npic-call-pic.s
diff options
context:
space:
mode:
Diffstat (limited to 'test/ELF/mips-npic-call-pic.s')
-rw-r--r--test/ELF/mips-npic-call-pic.s50
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