mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-06 23:32:27 +00:00
R600/SI: Promote fp64 SELECT to i64
This type promotion is replacing a Tablegen pattern and it is already covered by existing tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@204617 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
b15ac1b99b
commit
65b5e9b4ef
@ -104,6 +104,8 @@ SITargetLowering::SITargetLowering(TargetMachine &TM) :
|
||||
setOperationAction(ISD::STORE, MVT::v4i32, Custom);
|
||||
|
||||
setOperationAction(ISD::SELECT, MVT::i64, Custom);
|
||||
setOperationAction(ISD::SELECT, MVT::f64, Promote);
|
||||
AddPromotedToType(ISD::SELECT, MVT::f64, MVT::i64);
|
||||
|
||||
setOperationAction(ISD::SELECT_CC, MVT::f32, Custom);
|
||||
setOperationAction(ISD::SELECT_CC, MVT::i32, Custom);
|
||||
|
@ -904,18 +904,6 @@ def : Pat <
|
||||
(EXTRACT_SUBREG $val, sub0)
|
||||
>;
|
||||
|
||||
//use two V_CNDMASK_B32_e64 instructions for f64
|
||||
def : Pat <
|
||||
(f64 (select i1:$src2, f64:$src1, f64:$src0)),
|
||||
(INSERT_SUBREG (INSERT_SUBREG (f64 (IMPLICIT_DEF)),
|
||||
(V_CNDMASK_B32_e64 (EXTRACT_SUBREG $src0, sub0),
|
||||
(EXTRACT_SUBREG $src1, sub0),
|
||||
$src2), sub0),
|
||||
(V_CNDMASK_B32_e64 (EXTRACT_SUBREG $src0, sub1),
|
||||
(EXTRACT_SUBREG $src1, sub1),
|
||||
$src2), sub1)
|
||||
>;
|
||||
|
||||
def V_READLANE_B32 : VOP2 <
|
||||
0x00000001,
|
||||
(outs SReg_32:$vdst),
|
||||
|
Loading…
x
Reference in New Issue
Block a user