@@ -3848,21 +3848,6 @@ static bool isTargetShuffleVariableMask(unsigned Opcode) {
3848
3848
}
3849
3849
}
3850
3850
3851
- static SDValue getTargetShuffleNode(unsigned Opc, const SDLoc &dl, MVT VT,
3852
- SDValue V1, unsigned TargetMask,
3853
- SelectionDAG &DAG) {
3854
- switch(Opc) {
3855
- default: llvm_unreachable("Unknown x86 shuffle node");
3856
- case X86ISD::PSHUFD:
3857
- case X86ISD::PSHUFHW:
3858
- case X86ISD::PSHUFLW:
3859
- case X86ISD::VPERMILPI:
3860
- case X86ISD::VPERMI:
3861
- return DAG.getNode(Opc, dl, VT, V1,
3862
- DAG.getConstant(TargetMask, dl, MVT::i8));
3863
- }
3864
- }
3865
-
3866
3851
SDValue X86TargetLowering::getReturnAddressFrameIndex(SelectionDAG &DAG) const {
3867
3852
MachineFunction &MF = DAG.getMachineFunction();
3868
3853
const X86RegisterInfo *RegInfo = Subtarget.getRegisterInfo();
@@ -13689,8 +13674,7 @@ SDValue X86TargetLowering::LowerUINT_TO_FP_i64(SDValue Op,
13689
13674
Result = DAG.getNode(X86ISD::FHADD, dl, MVT::v2f64, Sub, Sub);
13690
13675
} else {
13691
13676
SDValue S2F = DAG.getBitcast(MVT::v4i32, Sub);
13692
- SDValue Shuffle = getTargetShuffleNode(X86ISD::PSHUFD, dl, MVT::v4i32,
13693
- S2F, 0x4E, DAG);
13677
+ SDValue Shuffle = DAG.getVectorShuffle(MVT::v4i32, dl, S2F, S2F, {2,3,0,1});
13694
13678
Result = DAG.getNode(ISD::FADD, dl, MVT::v2f64,
13695
13679
DAG.getBitcast(MVT::v2f64, Shuffle), Sub);
13696
13680
}
0 commit comments