Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(729)

Unified Diff: tests_lit/llvm2ice_tests/64bit.pnacl.ll

Issue 541093002: Subzero: Fix sext/zext lowering with i1 source operands. (Closed) Base URL: https://gerrit.chromium.org/gerrit/p/native_client/pnacl-subzero.git@master
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tests_lit/llvm2ice_tests/64bit.pnacl.ll
diff --git a/tests_lit/llvm2ice_tests/64bit.pnacl.ll b/tests_lit/llvm2ice_tests/64bit.pnacl.ll
index c21063b97f5033315a28b53cad87414065f943ca..fa0a4cbf21bf565987c008b06a85f70280f28a64 100644
--- a/tests_lit/llvm2ice_tests/64bit.pnacl.ll
+++ b/tests_lit/llvm2ice_tests/64bit.pnacl.ll
@@ -650,6 +650,24 @@ entry:
; OPTM1: movsx
; OPTM1: sar {{.*}}, 31
+define internal i64 @sext1To64(i32 %a) {
+entry:
+ %a.arg_trunc = trunc i32 %a to i1
+ %conv = sext i1 %a.arg_trunc to i64
+ ret i64 %conv
+}
+; CHECK-LABEL: sext1To64
+; CHECK: mov
+; CHECK: shl {{.*}}, 31
+; CHECK: sar {{.*}}, 31
+; CHECK: sar {{.*}}, 31
+;
+; OPTM1-LABEL: sext1To64
+; OPTM1: mov
+; OPTM1: shl {{.*}}, 31
+; OPTM1: sar {{.*}}, 31
+; OPTM1: sar {{.*}}, 31
+
define internal i64 @zext32To64(i32 %a) {
entry:
%conv = zext i32 %a to i64
@@ -698,11 +716,11 @@ entry:
ret i64 %conv
}
; CHECK-LABEL: zext1To64
-; CHECK: movzx
+; CHECK: and
jvoung (off chromium) 2014/09/04 21:05:41 Could check that the and mask is "1" also -- but t
Jim Stichnoth 2014/09/04 21:43:07 Done.
; CHECK: mov {{.*}}, 0
;
; OPTM1-LABEL: zext1To64
-; OPTM1: movzx
+; OPTM1: and
; OPTM1: mov {{.*}}, 0
define internal void @icmpEq64(i64 %a, i64 %b, i64 %c, i64 %d) {

Powered by Google App Engine
This is Rietveld 408576698