• Home
  • Raw
  • Download

Lines Matching defs:ScopExpander

240 struct ScopExpander : SCEVVisitor<ScopExpander, const SCEV *> {  struct
243 explicit ScopExpander(const Region &R, ScalarEvolution &SE, in ScopExpander() argument
249 Value *expandCodeFor(const SCEV *E, Type *Ty, Instruction *I) { in expandCodeFor()
258 const SCEV *visit(const SCEV *E) { in visit()
270 SCEVExpander Expander;
271 ScalarEvolution &SE;
272 const char *Name;
273 const Region &R;
274 ValueMapT *VMap;
275 BasicBlock *RTCBB;
276 DenseMap<const SCEV *, const SCEV *> SCEVCache;
278 const SCEV *visitGenericInst(const SCEVUnknown *E, Instruction *Inst, in visitGenericInst()
299 const SCEV *visitUnknown(const SCEVUnknown *E) { in visitUnknown()
343 const SCEV *visitConstant(const SCEVConstant *E) { return E; } in visitConstant()
344 const SCEV *visitPtrToIntExpr(const SCEVPtrToIntExpr *E) { in visitPtrToIntExpr()
347 const SCEV *visitTruncateExpr(const SCEVTruncateExpr *E) { in visitTruncateExpr()
350 const SCEV *visitZeroExtendExpr(const SCEVZeroExtendExpr *E) { in visitZeroExtendExpr()
353 const SCEV *visitSignExtendExpr(const SCEVSignExtendExpr *E) { in visitSignExtendExpr()
356 const SCEV *visitUDivExpr(const SCEVUDivExpr *E) { in visitUDivExpr()
362 const SCEV *visitAddExpr(const SCEVAddExpr *E) { in visitAddExpr()
368 const SCEV *visitMulExpr(const SCEVMulExpr *E) { in visitMulExpr()
374 const SCEV *visitUMaxExpr(const SCEVUMaxExpr *E) { in visitUMaxExpr()
380 const SCEV *visitSMaxExpr(const SCEVSMaxExpr *E) { in visitSMaxExpr()
386 const SCEV *visitUMinExpr(const SCEVUMinExpr *E) { in visitUMinExpr()
411 ScopExpander Expander(S.getRegion(), SE, DL, Name, VMap, RTCBB); in expandCodeFor() argument