mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-01 08:28:19 +00:00
Add some more FIXME's for indexed loads and stores.
llvm-svn: 49916
This commit is contained in:
parent
88d2a8459b
commit
c21336d6b8
@ -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();
|
||||
|
@ -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(),
|
||||
|
@ -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();
|
||||
|
Loading…
Reference in New Issue
Block a user