diff options
| author | Tim Northover <tnorthover@apple.com> | 2013-07-25 16:23:55 +0000 |
|---|---|---|
| committer | Tim Northover <tnorthover@apple.com> | 2013-07-25 16:23:55 +0000 |
| commit | 8f7613ae0380704f29da764eb997660de5d81ab8 (patch) | |
| tree | 5fddcc547e84b5f97f62eedbde6f01c366c127c1 /llvm/test/CodeGen | |
| parent | 27287930683de7c1a6ea782915ef03b155630b69 (diff) | |
| download | bcm5719-llvm-8f7613ae0380704f29da764eb997660de5d81ab8.tar.gz bcm5719-llvm-8f7613ae0380704f29da764eb997660de5d81ab8.zip | |
AArch64: add llc-based tests for previous commit.
Better to have tests run even on non-AArch64 platforms.
llvm-svn: 187128
Diffstat (limited to 'llvm/test/CodeGen')
| -rw-r--r-- | llvm/test/CodeGen/AArch64/large-consts.ll | 13 | ||||
| -rw-r--r-- | llvm/test/CodeGen/AArch64/tls-execs.ll | 4 |
2 files changed, 15 insertions, 2 deletions
diff --git a/llvm/test/CodeGen/AArch64/large-consts.ll b/llvm/test/CodeGen/AArch64/large-consts.ll new file mode 100644 index 00000000000..1b769c6e350 --- /dev/null +++ b/llvm/test/CodeGen/AArch64/large-consts.ll @@ -0,0 +1,13 @@ +; RUN: llc -mtriple=aarch64-linux-gnu -o - %s -code-model=large -show-mc-encoding | FileCheck %s + +; Make sure the shift amount is encoded into the instructions by LLVM because +; it's not the linker's job to put it there. + +define double @foo() { +; CHECK: movz [[CPADDR:x[0-9]+]], #:abs_g3:.LCPI0_0 // encoding: [A,A,0xe0'A',0xd2'A'] +; CHECK: movk [[CPADDR]], #:abs_g2_nc:.LCPI0_0 // encoding: [A,A,0xc0'A',0xf2'A'] +; CHECK: movk [[CPADDR]], #:abs_g1_nc:.LCPI0_0 // encoding: [A,A,0xa0'A',0xf2'A'] +; CHECK: movk [[CPADDR]], #:abs_g0_nc:.LCPI0_0 // encoding: [A,A,0x80'A',0xf2'A'] + + ret double 3.14159 +} diff --git a/llvm/test/CodeGen/AArch64/tls-execs.ll b/llvm/test/CodeGen/AArch64/tls-execs.ll index 5bb9e32e99e..39ceb9a4795 100644 --- a/llvm/test/CodeGen/AArch64/tls-execs.ll +++ b/llvm/test/CodeGen/AArch64/tls-execs.ll @@ -1,4 +1,4 @@ -; RUN: llc -mtriple=aarch64-none-linux-gnu -verify-machineinstrs < %s | FileCheck %s +; RUN: llc -mtriple=aarch64-none-linux-gnu -verify-machineinstrs -show-mc-encoding < %s | FileCheck %s ; RUN: llc -mtriple=aarch64-none-linux-gnu -filetype=obj < %s | llvm-objdump -r - | FileCheck --check-prefix=CHECK-RELOC %s @initial_exec_var = external thread_local(initialexec) global i32 @@ -38,7 +38,7 @@ define i32 @test_local_exec() { ; CHECK-LABEL: test_local_exec: %val = load i32* @local_exec_var -; CHECK: movz [[TP_OFFSET:x[0-9]+]], #:tprel_g1:local_exec_var +; CHECK: movz [[TP_OFFSET:x[0-9]+]], #:tprel_g1:local_exec_var // encoding: [A,A,0xa0'A',0x92'A'] ; CHECK: movk [[TP_OFFSET]], #:tprel_g0_nc:local_exec_var ; CHECK: mrs x[[TP:[0-9]+]], tpidr_el0 ; CHECK: ldr w0, [x[[TP]], [[TP_OFFSET]]] |

