mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-10-31 08:16:47 +00:00 
			
		
		
		
	Remove some dead code from SPU BE that remained
from 64bit vector support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111910 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
		| @@ -514,8 +514,6 @@ SPUTargetLowering::getTargetNodeName(unsigned Opcode) const | ||||
|     node_names[(unsigned) SPUISD::ADD64_MARKER] = "SPUISD::ADD64_MARKER"; | ||||
|     node_names[(unsigned) SPUISD::SUB64_MARKER] = "SPUISD::SUB64_MARKER"; | ||||
|     node_names[(unsigned) SPUISD::MUL64_MARKER] = "SPUISD::MUL64_MARKER"; | ||||
|     node_names[(unsigned) SPUISD::HALF2VEC] = "SPUISD::HALF2VEC"; | ||||
|     node_names[(unsigned) SPUISD::VEC2HALF] = "SPUISD::VEC2HALF"; | ||||
|   } | ||||
|  | ||||
|   std::map<unsigned, const char *>::iterator i = node_names.find(Opcode); | ||||
| @@ -736,14 +734,12 @@ LowerSTORE(SDValue Op, SelectionDAG &DAG, const SPUSubtarget *ST) { | ||||
|   EVT PtrVT = DAG.getTargetLoweringInfo().getPointerTy(); | ||||
|   DebugLoc dl = Op.getDebugLoc(); | ||||
|   unsigned alignment = SN->getAlignment(); | ||||
|   const bool isVec = VT.isVector(); | ||||
|   EVT eltTy = isVec ? VT.getVectorElementType(): VT; | ||||
|  | ||||
|   switch (SN->getAddressingMode()) { | ||||
|   case ISD::UNINDEXED: { | ||||
|     // The vector type we really want to load from the 16-byte chunk. | ||||
|     EVT vecVT = EVT::getVectorVT(*DAG.getContext(), | ||||
|                                  eltTy, (128 / eltTy.getSizeInBits())); | ||||
|                                  VT, (128 / VT.getSizeInBits())); | ||||
|  | ||||
|     SDValue alignLoadVec; | ||||
|     SDValue basePtr = SN->getBasePtr(); | ||||
| @@ -846,19 +842,11 @@ LowerSTORE(SDValue Op, SelectionDAG &DAG, const SPUSubtarget *ST) { | ||||
|       } | ||||
| #endif | ||||
|  | ||||
|     SDValue insertEltOp; | ||||
|     SDValue vectorizeOp; | ||||
|     if (isVec) | ||||
|     { | ||||
|       // FIXME: this works only if the vector is 64bit! | ||||
|       insertEltOp = DAG.getNode(SPUISD::SHUFFLE_MASK, dl, MVT::v2i64, insertEltOffs); | ||||
|       vectorizeOp = DAG.getNode(SPUISD::HALF2VEC, dl, vecVT, theValue); | ||||
|     } | ||||
|     else | ||||
|     { | ||||
|       insertEltOp = DAG.getNode(SPUISD::SHUFFLE_MASK, dl, vecVT, insertEltOffs); | ||||
|       vectorizeOp = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, vecVT, theValue); | ||||
|     } | ||||
|     SDValue insertEltOp = DAG.getNode(SPUISD::SHUFFLE_MASK, dl, vecVT, | ||||
|                                       insertEltOffs); | ||||
|     SDValue vectorizeOp = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, vecVT,  | ||||
|                                       theValue); | ||||
|  | ||||
|     result = DAG.getNode(SPUISD::SHUFB, dl, vecVT, | ||||
|                          vectorizeOp, alignLoadVec, | ||||
|                          DAG.getNode(ISD::BIT_CONVERT, dl, | ||||
|   | ||||
| @@ -54,8 +54,6 @@ namespace llvm { | ||||
|       ADD64_MARKER,             ///< i64 addition marker | ||||
|       SUB64_MARKER,             ///< i64 subtraction marker | ||||
|       MUL64_MARKER,             ///< i64 multiply marker | ||||
|       HALF2VEC,                 ///< Promote 64 bit vector to 128 bits | ||||
|       VEC2HALF,                 ///< Extract first 64 bits from 128 bit vector | ||||
|       LAST_SPUISD               ///< Last user-defined instruction | ||||
|     }; | ||||
|   } | ||||
|   | ||||
| @@ -117,12 +117,6 @@ def SPUprefslot2vec: SDNode<"SPUISD::PREFSLOT2VEC", SDTprefslot2vec, []>; | ||||
| def SPU_vec_demote   : SDTypeProfile<1, 1, []>; | ||||
| def SPUvec2prefslot: SDNode<"SPUISD::VEC2PREFSLOT", SPU_vec_demote, []>; | ||||
|  | ||||
| def SPU_half_2_vec : SDTypeProfile<1, 1, []>; | ||||
| def SPUhalf2vec: SDNode<"SPUISD::HALF2VEC", SPU_half_2_vec, []>; | ||||
|  | ||||
| def SPU_vec_2_half : SDTypeProfile<1, 1, []>; | ||||
| def SPUvec2half: SDNode<"SPUISD::VEC2HALF", SPU_vec_2_half, []>; | ||||
|   | ||||
| // Address high and low components, used for [r+r] type addressing | ||||
| def SPUhi : SDNode<"SPUISD::Hi", SDTIntBinOp, []>; | ||||
| def SPUlo : SDNode<"SPUISD::Lo", SDTIntBinOp, []>; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user