Lines Matching defs:AssignmentTrackingLowering
696 // behaviour. AssignmentTrackingLowering has generated DIExpressions
987 /// AssignmentTrackingLowering encapsulates a dataflow analysis over a function
990 class AssignmentTrackingLowering {
1258 /// See comment for AssignmentTrackingLowering::joinBlockInfo.
1389 AssignmentTrackingLowering(Function &Fn, const DataLayout &Layout,
1399 AssignmentTrackingLowering::getContainedFragments(VariableID Var) const {
1406 void AssignmentTrackingLowering::touchFragment(VariableID Var) {
1410 void AssignmentTrackingLowering::setLocKind(BlockInfo *LiveSet, VariableID Var,
1423 AssignmentTrackingLowering::LocKind
1424 AssignmentTrackingLowering::getLocKind(BlockInfo *LiveSet, VariableID Var) {
1428 void AssignmentTrackingLowering::addMemDef(BlockInfo *LiveSet, VariableID Var,
1441 void AssignmentTrackingLowering::addDbgDef(BlockInfo *LiveSet, VariableID Var,
1469 bool AssignmentTrackingLowering::hasVarWithAssignment(
1484 const char *locStr(AssignmentTrackingLowering::LocKind Loc) {
1485 using LocKind = AssignmentTrackingLowering::LocKind;
1526 void AssignmentTrackingLowering::emitDbgValue(
1527 AssignmentTrackingLowering::LocKind Kind,
1528 AssignmentTrackingLowering::AssignRecord Source, VarLocInsertPt After) {
1535 void AssignmentTrackingLowering::emitDbgValue(
1536 AssignmentTrackingLowering::LocKind Kind, const T Source,
1599 void AssignmentTrackingLowering::processNonDbgInstruction(
1600 Instruction &I, AssignmentTrackingLowering::BlockInfo *LiveSet) {
1607 void AssignmentTrackingLowering::processUntaggedInstruction(
1608 Instruction &I, AssignmentTrackingLowering::BlockInfo *LiveSet) {
1676 void AssignmentTrackingLowering::processTaggedInstruction(
1677 Instruction &I, AssignmentTrackingLowering::BlockInfo *LiveSet) {
1766 void AssignmentTrackingLowering::processDbgAssign(AssignRecord Assign,
1813 void AssignmentTrackingLowering::processDbgValue(
1850 void AssignmentTrackingLowering::processDbgInstruction(
1851 DbgInfoIntrinsic &I, AssignmentTrackingLowering::BlockInfo *LiveSet) {
1865 void AssignmentTrackingLowering::processDbgVariableRecord(
1866 DbgVariableRecord &DVR, AssignmentTrackingLowering::BlockInfo *LiveSet) {
1877 void AssignmentTrackingLowering::resetInsertionPoint(Instruction &After) {
1884 void AssignmentTrackingLowering::resetInsertionPoint(DbgVariableRecord &After) {
1891 void AssignmentTrackingLowering::process(BasicBlock &BB, BlockInfo *LiveSet) {
1966 AssignmentTrackingLowering::LocKind
1967 AssignmentTrackingLowering::joinKind(LocKind A, LocKind B) {
1973 AssignmentTrackingLowering::Assignment
1974 AssignmentTrackingLowering::joinAssignment(const Assignment &A,
2023 AssignmentTrackingLowering::BlockInfo
2024 AssignmentTrackingLowering::joinBlockInfo(const BlockInfo &A,
2029 bool AssignmentTrackingLowering::join(
2152 static AssignmentTrackingLowering::OverlapMap buildOverlapMapAndRecordDeclares(
2155 AssignmentTrackingLowering::UntaggedStoreAssignmentMap &UntaggedStoreVars,
2245 AssignmentTrackingLowering::OverlapMap Map;
2283 bool AssignmentTrackingLowering::run(FunctionVarLocsBuilder *FnVarLocsBuilder) {
2453 bool AssignmentTrackingLowering::emitPromotedVarLocs(
2777 // Use a scope block to clean up AssignmentTrackingLowering before running
2780 AssignmentTrackingLowering Pass(Fn, Layout, &VarsWithStackSlot);