aboutsummaryrefslogtreecommitdiffstats
path: root/test/CodeGen/XCore/globals.ll
diff options
context:
space:
mode:
authorRichard Osborne <richard@xmos.com>2009-07-24 00:38:20 +0000
committerRichard Osborne <richard@xmos.com>2009-07-24 00:38:20 +0000
commite23e0976c71775dba8e45e3c6eb6f316359939e5 (patch)
tree0f7f000022c1d53068b9753947b32ba4daae482a /test/CodeGen/XCore/globals.ll
parent5bd68393ed87bcedc53f5998f1af9c906f5a1b4e (diff)
downloadexternal_llvm-e23e0976c71775dba8e45e3c6eb6f316359939e5.zip
external_llvm-e23e0976c71775dba8e45e3c6eb6f316359939e5.tar.gz
external_llvm-e23e0976c71775dba8e45e3c6eb6f316359939e5.tar.bz2
Add tests for handling of globals and tls on the XCore. These currently fail
but pass when run against r76652. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76923 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/XCore/globals.ll')
-rw-r--r--test/CodeGen/XCore/globals.ll37
1 files changed, 37 insertions, 0 deletions
diff --git a/test/CodeGen/XCore/globals.ll b/test/CodeGen/XCore/globals.ll
new file mode 100644
index 0000000..07d56a1
--- /dev/null
+++ b/test/CodeGen/XCore/globals.ll
@@ -0,0 +1,37 @@
+; RUN: llvm-as < %s | llc -march=xcore -mcpu=xs1b-generic | FileCheck %s
+; XFAIL: *
+
+define i32 *@addr_G1() {
+entry:
+; CHECK: addr_G1:
+; CHECK: ldaw r0, dp[G1]
+ ret i32* @G1
+}
+
+define i32 *@addr_G2() {
+entry:
+; CHECK: addr_G2:
+; CHECK: ldaw r0, dp[G2]
+ ret i32* @G2
+}
+
+define i32 *@addr_G3() {
+entry:
+; CHECK: addr_G3:
+; CHECK: ldaw r11, cp[G3]
+; CHECK: mov r0, r11
+ ret i32* @G3
+}
+
+@G1 = global i32 4712
+; CHECK: .section .dp.data,"awd",@progbits
+; CHECK: G1:
+
+@G2 = global i32 0
+; CHECK: .section .dp.bss,"awd",@nobits
+; CHECK: G2:
+
+@G3 = constant i32 9401
+; CHECK: .section .cp.rodata,"ac",@progbits
+; CHECK: G3:
+