Home | History | Annotate | Download | only in CodeGen

Lines Matching refs:VTable

320   // Skip over the offset (and the vtable load) if we're supposed to
496 /// way which requires the vtable to be properly set.
508 // external code might potentially access the vtable.
1487 /// any vtable pointers before calling this destructor.
1567 // Initialize the vtable pointers before entering the body.
1789 // Generate function call for handling vtable pointer poisoning.
1794 // Poison vtable and vtable ptr if they exist for this class.
1838 // Poison the vtable pointer such that access after the base
1864 // Poison the vtable pointer if it has no virtual bases, but inherits
2100 // Generate vtable assumptions if we're constructing a complete object
2101 // with a vtable. We don't do this for base subobjects for two reasons:
2104 // We also have to make sure if we can refer to vtable:
2105 // - Otherwise we can refer to vtable if it's safe to speculatively emit.
2106 // FIXME: If vtable is used by ctor/dtor, or if vtable is external and we are
2107 // sure that definition of vtable is not hidden,
2110 // assumes. Make assumption loads require -fstrict-vtable-pointers temporarily.
2380 // Initialize the vtable pointer for this base.
2392 // Ignore classes without a vtable.
2428 // Ignore classes without a vtable.
2432 // Initialize the vtable pointers for this class and all of its bases.
2445 llvm::Instruction *VTable = Builder.CreateLoad(VTablePtrSrc, "vtable");
2446 CGM.DecorateInstructionWithTBAA(VTable, CGM.getTBAAInfoForVTablePtr());
2450 CGM.DecorateInstructionWithInvariantGroup(VTable, RD);
2452 return VTable;
2491 llvm::Value *VTable,
2498 EmitVTablePtrCheck(ClassDecl, VTable, TCK, Loc);
2535 llvm::Value *VTable =
2538 EmitVTablePtrCheck(ClassDecl, VTable, TCK, Loc);
2547 llvm::Value *VTable,
2559 llvm::Value *CastedVTable = Builder.CreateBitCast(VTable, Int8PtrTy);
2624 // When building with -fapple-kext, all calls must go through the vtable since