Lines Matching defs:BlockScheduling
2892 struct BlockScheduling { struct in llvm::slpvectorizer::BoUpSLP
2893 BlockScheduling(BasicBlock *BB) in BlockScheduling() argument
2896 void clear() { in clear()
2916 ScheduleData *getScheduleData(Instruction *I) { in getScheduleData()
2926 ScheduleData *getScheduleData(Value *V) { in getScheduleData()
2932 ScheduleData *getScheduleData(Value *V, Value *Key) { in getScheduleData()
2944 bool isInSchedulingRegion(ScheduleData *SD) const { in isInSchedulingRegion()
2951 void schedule(ScheduleData *SD, ReadyListType &ReadyList) { in schedule()
3045 void verify() { in verify()
3072 void doForAllOpcodes(Value *V, in doForAllOpcodes()
3085 void initialFillReadyList(ReadyListType &ReadyList) { in initialFillReadyList()
3135 BasicBlock *BB;
3138 std::vector<std::unique_ptr<ScheduleData[]>> ScheduleDataChunks;
3141 int ChunkSize;
3145 int ChunkPos;
3150 DenseMap<Instruction *, ScheduleData *> ScheduleDataMap;
3154 ExtraScheduleDataMap;
3157 SetVector<ScheduleData *> ReadyInsts;
3160 Instruction *ScheduleStart = nullptr;
3163 Instruction *ScheduleEnd = nullptr;
3167 ScheduleData *FirstLoadStoreInRegion = nullptr;
3171 ScheduleData *LastLoadStoreInRegion = nullptr;
3176 bool RegionHasStackSave = false;
3179 int ScheduleRegionSize = 0;
3182 int ScheduleRegionSizeLimit = ScheduleRegionSizeBudget;
3188 int SchedulingRegionID = 1;