summaryrefslogtreecommitdiff
path: root/test/CodeGen/X86/extend.ll
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2005-12-14 19:24:08 +0000
committerChris Lattner <sabre@nondot.org>2005-12-14 19:24:08 +0000
commite4e49132af74a69aba92a35c38e1c87be8907ecd (patch)
treebbe1e650d57f93fad5d6ca01405c45f7ad8193fd /test/CodeGen/X86/extend.ll
parentf574494e13a9b26c131329c3ffb0a0239e8d97a1 (diff)
downloadllvm-e4e49132af74a69aba92a35c38e1c87be8907ecd.tar.gz
llvm-e4e49132af74a69aba92a35c38e1c87be8907ecd.tar.bz2
llvm-e4e49132af74a69aba92a35c38e1c87be8907ecd.tar.xz
new testcase, each function should have one extension instr in it
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24711 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/extend.ll')
-rw-r--r--test/CodeGen/X86/extend.ll19
1 files changed, 19 insertions, 0 deletions
diff --git a/test/CodeGen/X86/extend.ll b/test/CodeGen/X86/extend.ll
new file mode 100644
index 0000000000..1685d3ba42
--- /dev/null
+++ b/test/CodeGen/X86/extend.ll
@@ -0,0 +1,19 @@
+; RUN: llvm-as < %s | llc -march=x86 -x86-asm-syntax=intel | grep movzx | wc -l | grep 1
+; RUN: llvm-as < %s | llc -march=x86 -x86-asm-syntax=intel | grep movsx | wc -l | grep 1
+
+%G1 = internal global ubyte 0 ; <ubyte*> [#uses=1]
+%G2 = internal global sbyte 0 ; <sbyte*> [#uses=1]
+
+implementation ; Functions:
+
+short %test1() { ;; one zext
+ %tmp.0 = load ubyte* %G1 ; <ubyte> [#uses=1]
+ %tmp.3 = cast ubyte %tmp.0 to short ; <short> [#uses=1]
+ ret short %tmp.3
+}
+
+short %test2() { ;; one sext
+ %tmp.0 = load sbyte* %G2 ; <sbyte> [#uses=1]
+ %tmp.3 = cast sbyte %tmp.0 to short ; <short> [#uses=1]
+ ret short %tmp.3
+}