mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-26 14:15:53 +00:00
R600: Expand i64 SELECT_CC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@208430 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
87b983680c
commit
561bb44525
@ -202,6 +202,8 @@ AMDGPUTargetLowering::AMDGPUTargetLowering(TargetMachine &TM) :
|
||||
|
||||
setOperationAction(ISD::BR_CC, MVT::i1, Expand);
|
||||
|
||||
setOperationAction(ISD::SELECT_CC, MVT::i64, Expand);
|
||||
|
||||
setOperationAction(ISD::FNEG, MVT::v2f32, Expand);
|
||||
setOperationAction(ISD::FNEG, MVT::v4f32, Expand);
|
||||
|
||||
|
19
test/CodeGen/R600/selectcc.ll
Normal file
19
test/CodeGen/R600/selectcc.ll
Normal file
@ -0,0 +1,19 @@
|
||||
; RUN: llc -verify-machineinstrs -march=r600 -mcpu=redwood < %s | FileCheck -check-prefix=EG -check-prefix=FUNC %s
|
||||
; RUN: llc -verify-machineinstrs -march=r600 -mcpu=SI < %s | FileCheck -check-prefix=SI -check-prefix=FUNC %s
|
||||
|
||||
; FUNC-LABEL: @selectcc_i64
|
||||
; EG: XOR_INT
|
||||
; EG: XOR_INT
|
||||
; EG: OR_INT
|
||||
; EG: CNDE_INT
|
||||
; EG: CNDE_INT
|
||||
; SI: V_CMP_EQ_I64
|
||||
; SI: V_CNDMASK
|
||||
; SI: V_CNDMASK
|
||||
define void @selectcc_i64(i64 addrspace(1) * %out, i64 %lhs, i64 %rhs, i64 %true, i64 %false) {
|
||||
entry:
|
||||
%0 = icmp eq i64 %lhs, %rhs
|
||||
%1 = select i1 %0, i64 %true, i64 %false
|
||||
store i64 %1, i64 addrspace(1)* %out
|
||||
ret void
|
||||
}
|
Loading…
Reference in New Issue
Block a user