mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-07 12:28:24 +00:00
reorganize header to separate into functional blocks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44719 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -125,6 +125,15 @@ private:
|
|||||||
|
|
||||||
void RemapNode(SDOperand &N);
|
void RemapNode(SDOperand &N);
|
||||||
|
|
||||||
|
// Common routines.
|
||||||
|
SDOperand CreateStackStoreLoad(SDOperand Op, MVT::ValueType DestVT);
|
||||||
|
SDOperand HandleMemIntrinsic(SDNode *N);
|
||||||
|
void SplitOp(SDOperand Op, SDOperand &Lo, SDOperand &Hi);
|
||||||
|
|
||||||
|
//===--------------------------------------------------------------------===//
|
||||||
|
// Promotion Support: LegalizeTypesPromote.cpp
|
||||||
|
//===--------------------------------------------------------------------===//
|
||||||
|
|
||||||
SDOperand GetPromotedOp(SDOperand Op) {
|
SDOperand GetPromotedOp(SDOperand Op) {
|
||||||
SDOperand &PromotedOp = PromotedNodes[Op];
|
SDOperand &PromotedOp = PromotedNodes[Op];
|
||||||
RemapNode(PromotedOp);
|
RemapNode(PromotedOp);
|
||||||
@@ -141,22 +150,6 @@ private:
|
|||||||
return DAG.getZeroExtendInReg(Op, OldVT);
|
return DAG.getZeroExtendInReg(Op, OldVT);
|
||||||
}
|
}
|
||||||
|
|
||||||
void GetExpandedOp(SDOperand Op, SDOperand &Lo, SDOperand &Hi);
|
|
||||||
void SetExpandedOp(SDOperand Op, SDOperand Lo, SDOperand Hi);
|
|
||||||
|
|
||||||
SDOperand GetScalarizedOp(SDOperand Op) {
|
|
||||||
SDOperand &ScalarOp = ScalarizedNodes[Op];
|
|
||||||
RemapNode(ScalarOp);
|
|
||||||
assert(ScalarOp.Val && "Operand wasn't scalarized?");
|
|
||||||
return ScalarOp;
|
|
||||||
}
|
|
||||||
void SetScalarizedOp(SDOperand Op, SDOperand Result);
|
|
||||||
|
|
||||||
// Common routines.
|
|
||||||
SDOperand CreateStackStoreLoad(SDOperand Op, MVT::ValueType DestVT);
|
|
||||||
SDOperand HandleMemIntrinsic(SDNode *N);
|
|
||||||
void SplitOp(SDOperand Op, SDOperand &Lo, SDOperand &Hi);
|
|
||||||
|
|
||||||
// Result Promotion.
|
// Result Promotion.
|
||||||
void PromoteResult(SDNode *N, unsigned ResNo);
|
void PromoteResult(SDNode *N, unsigned ResNo);
|
||||||
SDOperand PromoteResult_UNDEF(SDNode *N);
|
SDOperand PromoteResult_UNDEF(SDNode *N);
|
||||||
@@ -176,6 +169,30 @@ private:
|
|||||||
SDOperand PromoteResult_SELECT (SDNode *N);
|
SDOperand PromoteResult_SELECT (SDNode *N);
|
||||||
SDOperand PromoteResult_SELECT_CC(SDNode *N);
|
SDOperand PromoteResult_SELECT_CC(SDNode *N);
|
||||||
|
|
||||||
|
// Operand Promotion.
|
||||||
|
bool PromoteOperand(SDNode *N, unsigned OperandNo);
|
||||||
|
SDOperand PromoteOperand_ANY_EXTEND(SDNode *N);
|
||||||
|
SDOperand PromoteOperand_ZERO_EXTEND(SDNode *N);
|
||||||
|
SDOperand PromoteOperand_SIGN_EXTEND(SDNode *N);
|
||||||
|
SDOperand PromoteOperand_TRUNCATE(SDNode *N);
|
||||||
|
SDOperand PromoteOperand_FP_EXTEND(SDNode *N);
|
||||||
|
SDOperand PromoteOperand_FP_ROUND(SDNode *N);
|
||||||
|
SDOperand PromoteOperand_INT_TO_FP(SDNode *N);
|
||||||
|
SDOperand PromoteOperand_SELECT(SDNode *N, unsigned OpNo);
|
||||||
|
SDOperand PromoteOperand_BRCOND(SDNode *N, unsigned OpNo);
|
||||||
|
SDOperand PromoteOperand_BR_CC(SDNode *N, unsigned OpNo);
|
||||||
|
SDOperand PromoteOperand_SETCC(SDNode *N, unsigned OpNo);
|
||||||
|
SDOperand PromoteOperand_STORE(StoreSDNode *N, unsigned OpNo);
|
||||||
|
|
||||||
|
void PromoteSetCCOperands(SDOperand &LHS,SDOperand &RHS, ISD::CondCode Code);
|
||||||
|
|
||||||
|
//===--------------------------------------------------------------------===//
|
||||||
|
// Expansion Support: LegalizeTypesExpand.cpp
|
||||||
|
//===--------------------------------------------------------------------===//
|
||||||
|
|
||||||
|
void GetExpandedOp(SDOperand Op, SDOperand &Lo, SDOperand &Hi);
|
||||||
|
void SetExpandedOp(SDOperand Op, SDOperand Lo, SDOperand Hi);
|
||||||
|
|
||||||
// Result Expansion.
|
// Result Expansion.
|
||||||
void ExpandResult(SDNode *N, unsigned ResNo);
|
void ExpandResult(SDNode *N, unsigned ResNo);
|
||||||
void ExpandResult_UNDEF (SDNode *N, SDOperand &Lo, SDOperand &Hi);
|
void ExpandResult_UNDEF (SDNode *N, SDOperand &Lo, SDOperand &Hi);
|
||||||
@@ -203,34 +220,6 @@ private:
|
|||||||
SDOperand &Lo, SDOperand &Hi);
|
SDOperand &Lo, SDOperand &Hi);
|
||||||
bool ExpandShiftWithKnownAmountBit(SDNode *N, SDOperand &Lo, SDOperand &Hi);
|
bool ExpandShiftWithKnownAmountBit(SDNode *N, SDOperand &Lo, SDOperand &Hi);
|
||||||
|
|
||||||
// Result Vector Scalarization: <1 x ty> -> ty.
|
|
||||||
void ScalarizeResult(SDNode *N, unsigned OpNo);
|
|
||||||
SDOperand ScalarizeRes_UNDEF(SDNode *N);
|
|
||||||
SDOperand ScalarizeRes_LOAD(LoadSDNode *N);
|
|
||||||
SDOperand ScalarizeRes_BinOp(SDNode *N);
|
|
||||||
SDOperand ScalarizeRes_UnaryOp(SDNode *N);
|
|
||||||
SDOperand ScalarizeRes_FPOWI(SDNode *N);
|
|
||||||
SDOperand ScalarizeRes_VECTOR_SHUFFLE(SDNode *N);
|
|
||||||
SDOperand ScalarizeRes_BIT_CONVERT(SDNode *N);
|
|
||||||
SDOperand ScalarizeRes_SELECT(SDNode *N);
|
|
||||||
|
|
||||||
// Operand Promotion.
|
|
||||||
bool PromoteOperand(SDNode *N, unsigned OperandNo);
|
|
||||||
SDOperand PromoteOperand_ANY_EXTEND(SDNode *N);
|
|
||||||
SDOperand PromoteOperand_ZERO_EXTEND(SDNode *N);
|
|
||||||
SDOperand PromoteOperand_SIGN_EXTEND(SDNode *N);
|
|
||||||
SDOperand PromoteOperand_TRUNCATE(SDNode *N);
|
|
||||||
SDOperand PromoteOperand_FP_EXTEND(SDNode *N);
|
|
||||||
SDOperand PromoteOperand_FP_ROUND(SDNode *N);
|
|
||||||
SDOperand PromoteOperand_INT_TO_FP(SDNode *N);
|
|
||||||
SDOperand PromoteOperand_SELECT(SDNode *N, unsigned OpNo);
|
|
||||||
SDOperand PromoteOperand_BRCOND(SDNode *N, unsigned OpNo);
|
|
||||||
SDOperand PromoteOperand_BR_CC(SDNode *N, unsigned OpNo);
|
|
||||||
SDOperand PromoteOperand_SETCC(SDNode *N, unsigned OpNo);
|
|
||||||
SDOperand PromoteOperand_STORE(StoreSDNode *N, unsigned OpNo);
|
|
||||||
|
|
||||||
void PromoteSetCCOperands(SDOperand &LHS,SDOperand &RHS, ISD::CondCode Code);
|
|
||||||
|
|
||||||
// Operand Expansion.
|
// Operand Expansion.
|
||||||
bool ExpandOperand(SDNode *N, unsigned OperandNo);
|
bool ExpandOperand(SDNode *N, unsigned OperandNo);
|
||||||
SDOperand ExpandOperand_TRUNCATE(SDNode *N);
|
SDOperand ExpandOperand_TRUNCATE(SDNode *N);
|
||||||
@@ -244,6 +233,29 @@ private:
|
|||||||
void ExpandSetCCOperands(SDOperand &NewLHS, SDOperand &NewRHS,
|
void ExpandSetCCOperands(SDOperand &NewLHS, SDOperand &NewRHS,
|
||||||
ISD::CondCode &CCCode);
|
ISD::CondCode &CCCode);
|
||||||
|
|
||||||
|
//===--------------------------------------------------------------------===//
|
||||||
|
// Scalarization Support: LegalizeTypesScalarize.cpp
|
||||||
|
//===--------------------------------------------------------------------===//
|
||||||
|
|
||||||
|
SDOperand GetScalarizedOp(SDOperand Op) {
|
||||||
|
SDOperand &ScalarOp = ScalarizedNodes[Op];
|
||||||
|
RemapNode(ScalarOp);
|
||||||
|
assert(ScalarOp.Val && "Operand wasn't scalarized?");
|
||||||
|
return ScalarOp;
|
||||||
|
}
|
||||||
|
void SetScalarizedOp(SDOperand Op, SDOperand Result);
|
||||||
|
|
||||||
|
// Result Vector Scalarization: <1 x ty> -> ty.
|
||||||
|
void ScalarizeResult(SDNode *N, unsigned OpNo);
|
||||||
|
SDOperand ScalarizeRes_UNDEF(SDNode *N);
|
||||||
|
SDOperand ScalarizeRes_LOAD(LoadSDNode *N);
|
||||||
|
SDOperand ScalarizeRes_BinOp(SDNode *N);
|
||||||
|
SDOperand ScalarizeRes_UnaryOp(SDNode *N);
|
||||||
|
SDOperand ScalarizeRes_FPOWI(SDNode *N);
|
||||||
|
SDOperand ScalarizeRes_VECTOR_SHUFFLE(SDNode *N);
|
||||||
|
SDOperand ScalarizeRes_BIT_CONVERT(SDNode *N);
|
||||||
|
SDOperand ScalarizeRes_SELECT(SDNode *N);
|
||||||
|
|
||||||
// Operand Vector Scalarization: <1 x ty> -> ty.
|
// Operand Vector Scalarization: <1 x ty> -> ty.
|
||||||
bool ScalarizeOperand(SDNode *N, unsigned OpNo);
|
bool ScalarizeOperand(SDNode *N, unsigned OpNo);
|
||||||
SDOperand ScalarizeOp_EXTRACT_VECTOR_ELT(SDNode *N, unsigned OpNo);
|
SDOperand ScalarizeOp_EXTRACT_VECTOR_ELT(SDNode *N, unsigned OpNo);
|
||||||
|
Reference in New Issue
Block a user