• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-12-stable/contrib/llvm-project/llvm/lib/Transforms/IPO/

Lines Matching defs:TIL

444   uint8_t *exportTypeId(StringRef TypeId, const TypeIdLowering &TIL);
455 Value *createBitSetTest(IRBuilder<> &B, const TypeIdLowering &TIL,
461 const TypeIdLowering &TIL);
660 /// lowered to TIL, which must be either an Inline or a ByteArray.
662 const TypeIdLowering &TIL,
664 if (TIL.TheKind == TypeTestResolution::Inline) {
667 return createMaskedBitTest(B, TIL.InlineBits, BitOffset);
669 Constant *ByteArray = TIL.TheByteArray;
683 B.CreateAnd(Byte, ConstantExpr::getPtrToInt(TIL.BitMask, Int8Ty));
730 const TypeIdLowering &TIL) {
731 if (TIL.TheKind == TypeTestResolution::Unsat)
746 ConstantExpr::getPtrToInt(TIL.OffsetedGlobal, IntPtrTy);
747 if (TIL.TheKind == TypeTestResolution::Single)
761 B.CreateLShr(PtrOffset, ConstantExpr::getZExt(TIL.AlignLog2, IntPtrTy));
766 TIL.AlignLog2),
770 Value *OffsetInRange = B.CreateICmpULE(BitOffset, TIL.SizeM1);
773 if (TIL.TheKind == TypeTestResolution::AllOnes)
795 return createBitSetTest(ThenB, TIL, BitOffset);
802 Value *Bit = createBitSetTest(ThenB, TIL, BitOffset);
903 const TypeIdLowering &TIL) {
906 TTRes.TheKind = TIL.TheKind;
922 if (TIL.TheKind != TypeTestResolution::Unsat)
923 ExportGlobal("global_addr", TIL.OffsetedGlobal);
925 if (TIL.TheKind == TypeTestResolution::ByteArray ||
926 TIL.TheKind == TypeTestResolution::Inline ||
927 TIL.TheKind == TypeTestResolution::AllOnes) {
928 ExportConstant("align", TTRes.AlignLog2, TIL.AlignLog2);
929 ExportConstant("size_m1", TTRes.SizeM1, TIL.SizeM1);
931 uint64_t BitSize = cast<ConstantInt>(TIL.SizeM1)->getZExtValue() + 1;
932 if (TIL.TheKind == TypeTestResolution::Inline)
938 if (TIL.TheKind == TypeTestResolution::ByteArray) {
939 ExportGlobal("byte_array", TIL.TheByteArray);
941 ExportGlobal("bit_mask", TIL.BitMask);
946 if (TIL.TheKind == TypeTestResolution::Inline)
947 ExportConstant("inline_bits", TTRes.InlineBits, TIL.InlineBits);
959 TypeIdLowering TIL;
960 TIL.TheKind = TTRes.TheKind;
1003 if (TIL.TheKind != TypeTestResolution::Unsat)
1004 TIL.OffsetedGlobal = ImportGlobal("global_addr");
1006 if (TIL.TheKind == TypeTestResolution::ByteArray ||
1007 TIL.TheKind == TypeTestResolution::Inline ||
1008 TIL.TheKind == TypeTestResolution::AllOnes) {
1009 TIL.AlignLog2 = ImportConstant("align", TTRes.AlignLog2, 8, Int8Ty);
1010 TIL.SizeM1 =
1014 if (TIL.TheKind == TypeTestResolution::ByteArray) {
1015 TIL.TheByteArray = ImportGlobal("byte_array");
1016 TIL.BitMask = ImportConstant("bit_mask", TTRes.BitMask, 8, Int8PtrTy);
1019 if (TIL.TheKind == TypeTestResolution::Inline)
1020 TIL.InlineBits = ImportConstant(
1024 return TIL;
1037 TypeIdLowering TIL = importTypeId(TypeIdStr->getString());
1038 Value *Lowered = lowerTypeTestCall(TypeIdStr, CI, TIL);
1125 TypeIdLowering TIL;
1126 TIL.OffsetedGlobal = ConstantExpr::getGetElementPtr(
1128 TIL.AlignLog2 = ConstantInt::get(Int8Ty, BSI.AlignLog2);
1129 TIL.SizeM1 = ConstantInt::get(IntPtrTy, BSI.BitSize - 1);
1131 TIL.TheKind = (BSI.BitSize == 1) ? TypeTestResolution::Single
1134 TIL.TheKind = TypeTestResolution::Inline;
1139 TIL.TheKind = TypeTestResolution::Unsat;
1141 TIL.InlineBits = ConstantInt::get(
1144 TIL.TheKind = TypeTestResolution::ByteArray;
1147 TIL.TheByteArray = BAI->ByteArray;
1148 TIL.BitMask = BAI->MaskGlobal;
1154 uint8_t *MaskPtr = exportTypeId(cast<MDString>(TypeId)->getString(), TIL);
1162 Value *Lowered = lowerTypeTestCall(TypeId, CI, TIL);