Lines Matching refs:loop
32 // Lower MemTransferInst or load-store pair to loop
55 IRBuilder<> loop(loopBB);
56 // The loop index (ind) is a phi node.
57 PHINode *ind = loop.CreatePHI(indType, 0);
62 Value *val = loop.CreateLoad(loop.CreateGEP(srcAddr, ind), srcVolatile);
64 loop.CreateStore(val, loop.CreateGEP(dstAddr, ind), dstVolatile);
67 Value *newind = loop.CreateAdd(ind, ConstantInt::get(indType, 1));
70 loop.CreateCondBr(loop.CreateICmpULT(newind, len), loopBB, newBB);
73 // Lower MemSetInst to loop
90 IRBuilder<> loop(loopBB);
91 PHINode *ind = loop.CreatePHI(len->getType(), 0);
94 loop.CreateStore(val, loop.CreateGEP(dstAddr, ind), false);
96 Value *newind = loop.CreateAdd(ind, ConstantInt::get(len->getType(), 1));
99 loop.CreateCondBr(loop.CreateICmpULT(newind, len), loopBB, newBB);
135 // than MaxAggrCopySize, lower it to a loop
141 // turn variable length memcpy/memmov into loop
151 // turn variable length memset into loop
162 // Do the transformation of an aggr load/copy/set to a loop