diff options
-rw-r--r-- | test/CodeGen/X86/extend.ll | 19 |
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 +} |