aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2008-03-11 21:29:43 +0000
committerDan Gohman <gohman@apple.com>2008-03-11 21:29:43 +0000
commit9736028d84de3a72dd8db5f49cfaa07280154a0e (patch)
treeab1d29c427b19d25a51eedc3f5ed09c0df602477 /test
parentef5d194aaa7d09937759447bceca0ff80bee1261 (diff)
downloadexternal_llvm-9736028d84de3a72dd8db5f49cfaa07280154a0e.zip
external_llvm-9736028d84de3a72dd8db5f49cfaa07280154a0e.tar.gz
external_llvm-9736028d84de3a72dd8db5f49cfaa07280154a0e.tar.bz2
Use the correct value for InSignBit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48245 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/CodeGen/X86/sext-select.ll23
1 files changed, 23 insertions, 0 deletions
diff --git a/test/CodeGen/X86/sext-select.ll b/test/CodeGen/X86/sext-select.ll
new file mode 100644
index 0000000..839ebc2
--- /dev/null
+++ b/test/CodeGen/X86/sext-select.ll
@@ -0,0 +1,23 @@
+; RUN: llvm-as < %s | llc -march=x86 | grep movsw
+; PR2139
+
+declare void @abort()
+
+define i32 @main() {
+entry:
+ %tmp73 = tail call i1 @return_false() ; <i8> [#uses=1]
+ %g.0 = select i1 %tmp73, i16 0, i16 -480 ; <i16> [#uses=2]
+ %tmp7778 = sext i16 %g.0 to i32 ; <i32> [#uses=1]
+ %tmp80 = shl i32 %tmp7778, 3 ; <i32> [#uses=2]
+ %tmp87 = icmp sgt i32 %tmp80, 32767 ; <i1> [#uses=1]
+ br i1 %tmp87, label %bb90, label %bb91
+bb90: ; preds = %bb84, %bb72
+ tail call void @abort()
+ unreachable
+bb91: ; preds = %bb84
+ ret i32 0
+}
+
+define i1 @return_false() {
+ ret i1 0
+}