diff options
author | Duncan Sands <baldrick@free.fr> | 2008-04-18 20:27:12 +0000 |
---|---|---|
committer | Duncan Sands <baldrick@free.fr> | 2008-04-18 20:27:12 +0000 |
commit | 8aa1c9dd86b498c7296377c3819f1335b5d256a0 (patch) | |
tree | cfeb4269899de17d6a096057308767b3dffe5fea | |
parent | 37d64ec5fdac3c4d014a48ea5d44b515a9465c06 (diff) | |
download | external_llvm-8aa1c9dd86b498c7296377c3819f1335b5d256a0.zip external_llvm-8aa1c9dd86b498c7296377c3819f1335b5d256a0.tar.gz external_llvm-8aa1c9dd86b498c7296377c3819f1335b5d256a0.tar.bz2 |
Add some more FIXME's for indexed loads and stores.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49916 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/CodeGen/SelectionDAG/LegalizeTypesPromote.cpp | 2 | ||||
-rw-r--r-- | lib/CodeGen/SelectionDAG/LegalizeTypesScalarize.cpp | 2 | ||||
-rw-r--r-- | lib/CodeGen/SelectionDAG/LegalizeTypesSplit.cpp | 2 |
3 files changed, 6 insertions, 0 deletions
diff --git a/lib/CodeGen/SelectionDAG/LegalizeTypesPromote.cpp b/lib/CodeGen/SelectionDAG/LegalizeTypesPromote.cpp index 93c8c60..6d7f063 100644 --- a/lib/CodeGen/SelectionDAG/LegalizeTypesPromote.cpp +++ b/lib/CodeGen/SelectionDAG/LegalizeTypesPromote.cpp @@ -193,6 +193,7 @@ SDOperand DAGTypeLegalizer::PromoteResult_SETCC(SDNode *N) { } SDOperand DAGTypeLegalizer::PromoteResult_LOAD(LoadSDNode *N) { + // FIXME: Add support for indexed loads. MVT::ValueType NVT = TLI.getTypeToTransformTo(N->getValueType(0)); ISD::LoadExtType ExtType = ISD::isNON_EXTLoad(N) ? ISD::EXTLOAD : N->getExtensionType(); @@ -637,6 +638,7 @@ void DAGTypeLegalizer::PromoteSetCCOperands(SDOperand &NewLHS,SDOperand &NewRHS, } SDOperand DAGTypeLegalizer::PromoteOperand_STORE(StoreSDNode *N, unsigned OpNo){ + // FIXME: Add support for indexed stores. SDOperand Ch = N->getChain(), Ptr = N->getBasePtr(); int SVOffset = N->getSrcValueOffset(); unsigned Alignment = N->getAlignment(); diff --git a/lib/CodeGen/SelectionDAG/LegalizeTypesScalarize.cpp b/lib/CodeGen/SelectionDAG/LegalizeTypesScalarize.cpp index ae3a09f..d9ba99f 100644 --- a/lib/CodeGen/SelectionDAG/LegalizeTypesScalarize.cpp +++ b/lib/CodeGen/SelectionDAG/LegalizeTypesScalarize.cpp @@ -93,6 +93,7 @@ SDOperand DAGTypeLegalizer::ScalarizeRes_UNDEF(SDNode *N) { } SDOperand DAGTypeLegalizer::ScalarizeRes_LOAD(LoadSDNode *N) { + // FIXME: Add support for indexed loads. SDOperand Result = DAG.getLoad(MVT::getVectorElementType(N->getValueType(0)), N->getChain(), N->getBasePtr(), N->getSrcValue(), N->getSrcValueOffset(), @@ -224,6 +225,7 @@ SDOperand DAGTypeLegalizer::ScalarizeOp_EXTRACT_VECTOR_ELT(SDNode *N) { /// ScalarizeOp_STORE - If the value to store is a vector that needs to be /// scalarized, it must be <1 x ty>. Just store the element. SDOperand DAGTypeLegalizer::ScalarizeOp_STORE(StoreSDNode *N, unsigned OpNo) { + // FIXME: Add support for indexed stores. assert(OpNo == 1 && "Do not know how to scalarize this operand!"); return DAG.getStore(N->getChain(), GetScalarizedOp(N->getOperand(1)), N->getBasePtr(), N->getSrcValue(), N->getSrcValueOffset(), diff --git a/lib/CodeGen/SelectionDAG/LegalizeTypesSplit.cpp b/lib/CodeGen/SelectionDAG/LegalizeTypesSplit.cpp index b46b658..d1057c9 100644 --- a/lib/CodeGen/SelectionDAG/LegalizeTypesSplit.cpp +++ b/lib/CodeGen/SelectionDAG/LegalizeTypesSplit.cpp @@ -126,6 +126,7 @@ void DAGTypeLegalizer::SplitRes_UNDEF(SDNode *N, SDOperand &Lo, SDOperand &Hi) { void DAGTypeLegalizer::SplitRes_LOAD(LoadSDNode *LD, SDOperand &Lo, SDOperand &Hi) { + // FIXME: Add support for indexed loads. MVT::ValueType LoVT, HiVT; GetSplitDestVTs(LD->getValueType(0), LoVT, HiVT); @@ -398,6 +399,7 @@ bool DAGTypeLegalizer::SplitOperand(SDNode *N, unsigned OpNo) { } SDOperand DAGTypeLegalizer::SplitOp_STORE(StoreSDNode *N, unsigned OpNo) { + // FIXME: Add support for indexed stores. assert(OpNo == 1 && "Can only split the stored value"); SDOperand Ch = N->getChain(); |