reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/clang/lib/CodeGen/CGNonTrivialStruct.cpp
  341     ASTContext &Ctx = CGF.getContext();
  349     llvm::Value *NumElts = CGF.emitArrayLength(AT, BaseEltQT, DstAddr);
  354         CGF.Builder.CreateNUWMul(BaseEltSizeVal, NumElts);
  355     Address BC = CGF.Builder.CreateBitCast(DstAddr, CGF.CGM.Int8PtrTy);
  355     Address BC = CGF.Builder.CreateBitCast(DstAddr, CGF.CGM.Int8PtrTy);
  357         CGF.Builder.CreateInBoundsGEP(BC.getPointer(), SizeInBytes);
  358     DstArrayEnd = CGF.Builder.CreateBitCast(DstArrayEnd, CGF.CGM.Int8PtrPtrTy,
  358     DstArrayEnd = CGF.Builder.CreateBitCast(DstArrayEnd, CGF.CGM.Int8PtrPtrTy,
  360     llvm::BasicBlock *PreheaderBB = CGF.Builder.GetInsertBlock();
  363     llvm::BasicBlock *HeaderBB = CGF.createBasicBlock("loop.header");
  364     CGF.EmitBlock(HeaderBB);
  368       PHIs[I] = CGF.Builder.CreatePHI(CGF.CGM.Int8PtrPtrTy, 2, "addr.cur");
  368       PHIs[I] = CGF.Builder.CreatePHI(CGF.CGM.Int8PtrPtrTy, 2, "addr.cur");
  373     llvm::BasicBlock *ExitBB = CGF.createBasicBlock("loop.exit");
  374     llvm::BasicBlock *LoopBB = CGF.createBasicBlock("loop.body");
  379         CGF.Builder.CreateICmpEQ(PHIs[DstIdx], DstArrayEnd, "done");
  380     CGF.Builder.CreateCondBr(Done, ExitBB, LoopBB);
  383     CGF.EmitBlock(LoopBB);
  396     LoopBB = CGF.Builder.GetInsertBlock();
  406     CGF.Builder.CreateBr(HeaderBB);
  407     CGF.EmitBlock(ExitBB);