Lines Matching defs:OutlinableGroup
74 struct OutlinableGroup { struct
76 std::vector<OutlinableRegion *> Regions;
80 std::vector<Type *> ArgumentTypes;
82 FunctionType *OutlinedFunctionType = nullptr;
84 Function *OutlinedFunction = nullptr;
88 bool IgnoreGroup = false;
91 DenseMap<Value *, BasicBlock *> EndBBs;
95 DenseMap<Value *, BasicBlock *> PHIBlocks;
100 DenseSet<ArrayRef<unsigned>> OutputGVNCombinations;
104 bool InputTypesSet = false;
108 unsigned NumAggregateInputs = 0;
112 DenseMap<unsigned, unsigned> CanonicalNumberToAggArg;
116 unsigned BranchesToOutside = 0;
121 unsigned PHINodeGVNTracker = -3;
125 PHINodeGVNToGVNs;
126 DenseMap<hash_code, unsigned> GVNsToPHINodeGVN;
130 InstructionCost Benefit = 0;
133 InstructionCost Cost = 0;
137 std::optional<unsigned> SwiftErrorArgument;