summaryrefslogtreecommitdiff
path: root/test/CodeGen/SPARC
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2013-05-19 20:20:54 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2013-05-19 20:20:54 +0000
commit89db6732fbd987a33751f4aff01b8e4b0a630d91 (patch)
treec9646736bfe7bc927607de7768ebbb7c2bc32bb5 /test/CodeGen/SPARC
parent4e4464bf744030ae4a775bf49a30e9e4ea625682 (diff)
downloadllvm-89db6732fbd987a33751f4aff01b8e4b0a630d91.tar.gz
llvm-89db6732fbd987a33751f4aff01b8e4b0a630d91.tar.bz2
llvm-89db6732fbd987a33751f4aff01b8e4b0a630d91.tar.xz
Implement SPselectfcc for i64 operands.
Also clean up the arguments to all the MOVCC instructions so the operands always are (true-val, false-val, cond-code). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182221 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/SPARC')
-rw-r--r--test/CodeGen/SPARC/64cond.ll11
1 files changed, 11 insertions, 0 deletions
diff --git a/test/CodeGen/SPARC/64cond.ll b/test/CodeGen/SPARC/64cond.ll
index cf1a039af5..fa66d73edd 100644
--- a/test/CodeGen/SPARC/64cond.ll
+++ b/test/CodeGen/SPARC/64cond.ll
@@ -54,3 +54,14 @@ entry:
%rv = select i1 %tobool, i64 %a, i64 %b
ret i64 %rv
}
+
+; CHECK: selecti64_fcc
+; CHECK: fcmps %f1, %f3
+; CHECK: movul %fcc0, %i2, %i3
+; CHECK: or %g0, %i3, %i0
+define i64 @selecti64_fcc(float %x, float %y, i64 %a, i64 %b) {
+entry:
+ %tobool = fcmp ult float %x, %y
+ %rv = select i1 %tobool, i64 %a, i64 %b
+ ret i64 %rv
+}