Lines Matching defs:Slot

664                             WholeProgramDevirtResolution *Res, VTableSlot Slot);
678 std::string getGlobalName(VTableSlot Slot, ArrayRef<uint64_t> Args,
686 void exportGlobal(VTableSlot Slot, ArrayRef<uint64_t> Args, StringRef Name,
688 void exportConstant(VTableSlot Slot, ArrayRef<uint64_t> Args, StringRef Name,
693 Constant *importGlobal(VTableSlot Slot, ArrayRef<uint64_t> Args,
695 Constant *importConstant(VTableSlot Slot, ArrayRef<uint64_t> Args,
707 VTableSlot Slot, ArrayRef<uint64_t> Args);
713 WholeProgramDevirtResolution *Res, VTableSlot Slot);
717 // Apply the summary resolution for Slot to all virtual calls in SlotInfo.
718 void importResolution(VTableSlot Slot, VTableSlotInfo &SlotInfo);
1438 WholeProgramDevirtResolution *Res, VTableSlot Slot) {
1460 if (isa<MDString>(Slot.TypeID)) {
1463 getGlobalName(Slot, {}, "branch_funnel"), &M);
1651 std::string DevirtModule::getGlobalName(VTableSlot Slot,
1656 OS << cast<MDString>(Slot.TypeID)->getString() << '_' << Slot.ByteOffset;
1668 void DevirtModule::exportGlobal(VTableSlot Slot, ArrayRef<uint64_t> Args,
1671 getGlobalName(Slot, Args, Name), C, &M);
1675 void DevirtModule::exportConstant(VTableSlot Slot, ArrayRef<uint64_t> Args,
1680 Slot, Args, Name,
1688 Constant *DevirtModule::importGlobal(VTableSlot Slot, ArrayRef<uint64_t> Args,
1691 M.getOrInsertGlobal(getGlobalName(Slot, Args, Name), Int8Arr0Ty);
1698 Constant *DevirtModule::importConstant(VTableSlot Slot, ArrayRef<uint64_t> Args,
1704 Constant *C = importGlobal(Slot, Args, Name);
1753 VTableSlot Slot, ArrayRef<uint64_t> Args) {
1774 exportGlobal(Slot, Args, "unique_member", UniqueMemberAddr);
1825 WholeProgramDevirtResolution *Res, VTableSlot Slot) {
1878 ResByArg, Slot, CSByConstantArg.first))
1921 exportConstant(Slot, CSByConstantArg.first, "byte", OffsetByte,
1923 exportConstant(Slot, CSByConstantArg.first, "bit", 1ULL << OffsetBit,
2158 void DevirtModule::importResolution(VTableSlot Slot, VTableSlotInfo &SlotInfo) {
2159 auto *TypeId = dyn_cast<MDString>(Slot.TypeID);
2166 auto ResI = TidSummary->WPDRes.find(Slot.ByteOffset);
2201 importGlobal(Slot, CSByConstantArg.first, "unique_member");
2207 Constant *Byte = importConstant(Slot, CSByConstantArg.first, "byte",
2209 Constant *Bit = importConstant(Slot, CSByConstantArg.first, "bit", Int8Ty,
2223 M.getOrInsertFunction(getGlobalName(Slot, {}, "branch_funnel"),