diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2013-05-19 20:20:54 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2013-05-19 20:20:54 +0000 |
commit | 89db6732fbd987a33751f4aff01b8e4b0a630d91 (patch) | |
tree | c9646736bfe7bc927607de7768ebbb7c2bc32bb5 /test/CodeGen/SPARC | |
parent | 4e4464bf744030ae4a775bf49a30e9e4ea625682 (diff) | |
download | llvm-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.ll | 11 |
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 +} |