diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2014-11-24 09:08:18 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2014-11-24 09:08:18 +0000 |
commit | 5ca98fd98791947eba83a1ed3f2c8191ef7afa6c (patch) | |
tree | f5944309621cee4fe0976be6f9ac619b7ebfc4c2 /test/CodeGen/XCore/inline-asm.ll | |
parent | 68bcb7db193e4bc81430063148253d30a791023e (diff) |
Diffstat (limited to 'test/CodeGen/XCore/inline-asm.ll')
-rw-r--r-- | test/CodeGen/XCore/inline-asm.ll | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/test/CodeGen/XCore/inline-asm.ll b/test/CodeGen/XCore/inline-asm.ll index af3edd1544a2..e9f5b5769997 100644 --- a/test/CodeGen/XCore/inline-asm.ll +++ b/test/CodeGen/XCore/inline-asm.ll @@ -30,3 +30,24 @@ entry: tail call void asm sideeffect "foo ${0:n}", "i"(i32 99) nounwind ret void } + +@x = external global i32 +@y = external global i32, section ".cp.rodata" + +; CHECK-LABEL: f5: +; CHECK: ldw r0, dp[x] +; CHECK: retsp 0 +define i32 @f5() nounwind { +entry: + %asmtmp = call i32 asm "ldw $0, $1", "=r,*m"(i32* @x) nounwind + ret i32 %asmtmp +} + +; CHECK-LABEL: f6: +; CHECK: ldw r0, cp[y] +; CHECK: retsp 0 +define i32 @f6() nounwind { +entry: + %asmtmp = call i32 asm "ldw $0, $1", "=r,*m"(i32* @y) nounwind + ret i32 %asmtmp +} |