diff options
author | Evan Cheng <evan.cheng@apple.com> | 2007-12-12 07:54:08 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2007-12-12 07:54:08 +0000 |
commit | 2044bccd1a4f0ade46554c3567092b7e928d5d27 (patch) | |
tree | afb81840d0d2d294fd456c56568f48abc9d16a6f /test/CodeGen/X86 | |
parent | db2d524d5f491d55ff1f10809636981cc7506a74 (diff) | |
download | external_llvm-2044bccd1a4f0ade46554c3567092b7e928d5d27.zip external_llvm-2044bccd1a4f0ade46554c3567092b7e928d5d27.tar.gz external_llvm-2044bccd1a4f0ade46554c3567092b7e928d5d27.tar.bz2 |
Add a test case for -optimize-ext-uses.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44928 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86')
-rw-r--r-- | test/CodeGen/X86/opt-ext-uses.ll | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/test/CodeGen/X86/opt-ext-uses.ll b/test/CodeGen/X86/opt-ext-uses.ll new file mode 100644 index 0000000..faa9be7 --- /dev/null +++ b/test/CodeGen/X86/opt-ext-uses.ll @@ -0,0 +1,19 @@ +; RUN: llvm-as < %s | llc -march=x86 -optimize-ext-uses=true | grep movw | count 1 + +define i16 @t() signext { +entry: + %tmp180 = load i16* null, align 2 ; <i16> [#uses=3] + %tmp180181 = sext i16 %tmp180 to i32 ; <i32> [#uses=1] + %tmp182 = add i16 %tmp180, 10 + %tmp185 = icmp slt i16 %tmp182, 0 ; <i1> [#uses=1] + br i1 %tmp185, label %cond_true188, label %cond_next245 + +cond_true188: ; preds = %entry + %tmp195196 = trunc i16 %tmp180 to i8 ; <i8> [#uses=0] + ret i16 %tmp180 + +cond_next245: ; preds = %entry + %tmp256 = and i32 %tmp180181, 15 ; <i32> [#uses=0] + %tmp3 = trunc i32 %tmp256 to i16 + ret i16 %tmp3 +} |