summaryrefslogtreecommitdiffstats
path: root/clang/test/Driver/mips-features.c
diff options
context:
space:
mode:
authorVladimir Stefanovic <vladimir.stefanovic@rt-rk.com>2019-01-18 19:54:51 +0000
committerVladimir Stefanovic <vladimir.stefanovic@rt-rk.com>2019-01-18 19:54:51 +0000
commit99113a0ccf3dd77ccc1b3c6fd7bff986e6f376fe (patch)
treebad5a0c2d142b121d6c12de7e256f5682dd72db1 /clang/test/Driver/mips-features.c
parenteaa421d1f9c3748c550e2a91fcb134a3d2a8ebff (diff)
downloadbcm5719-llvm-99113a0ccf3dd77ccc1b3c6fd7bff986e6f376fe.tar.gz
bcm5719-llvm-99113a0ccf3dd77ccc1b3c6fd7bff986e6f376fe.zip
[mips] Add '-mrelax-pic-calls', '-mno-relax-pic-calls'
These two options enable/disable emission of R_{MICRO}MIPS_JALR fixups along with PIC calls. The linker may then try to turn PIC calls into direct jumps. By default, these fixups do get emitted by the backend, use '-mno-relax-pic-calls' to omit them. Differential revision: https://reviews.llvm.org/D56878 llvm-svn: 351579
Diffstat (limited to 'clang/test/Driver/mips-features.c')
-rw-r--r--clang/test/Driver/mips-features.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/clang/test/Driver/mips-features.c b/clang/test/Driver/mips-features.c
index f63fb8de55d..19725bc096b 100644
--- a/clang/test/Driver/mips-features.c
+++ b/clang/test/Driver/mips-features.c
@@ -444,3 +444,15 @@
// RUN: -mginv -mno-ginv 2>&1 \
// RUN: | FileCheck --check-prefix=CHECK-NO-GINV %s
// CHECK-NO-GINV: "-target-feature" "-ginv"
+//
+// -mrelax-pic-calls
+// RUN: %clang -target mips-unknown-linux-gnu -### -c %s \
+// RUN: -mno-relax-pic-calls -mrelax-pic-calls 2>&1 \
+// RUN: | FileCheck --check-prefix=CHECK-RELAX-PIC-CALLS %s
+// CHECK-RELAX-PIC-CALLS-NOT: "-mllvm" "-mips-jalr-reloc=0"
+//
+// -mno-relax-pic-calls
+// RUN: %clang -target mips-unknown-linux-gnu -### -c %s \
+// RUN: -mrelax-pic-calls -mno-relax-pic-calls 2>&1 \
+// RUN: | FileCheck --check-prefix=CHECK-NO-RELAX-PIC-CALLS %s
+// CHECK-NO-RELAX-PIC-CALLS: "-mllvm" "-mips-jalr-reloc=0"
OpenPOWER on IntegriCloud