Home
last modified time | relevance | path

Searched refs:PrimType (Results 1 – 25 of 29) sorted by relevance

12

/freebsd/contrib/llvm-project/clang/lib/AST/ByteCode/
H A DCompiler.cpp212 std::optional<PrimType> SubExprT = classify(SubExpr->getType()); in VisitCastExpr()
345 PrimType ToT = classifyPrim(CE); in VisitCastExpr()
363 if (std::optional<PrimType> T = classify(PointeeType)) in VisitCastExpr()
379 if (PrimType FromT = classifyPrim(SubExpr->getType()); FromT != PT_Ptr) { in VisitCastExpr()
385 PrimType T = classifyPrim(CE->getType()); in VisitCastExpr()
408 PrimType T = classifyPrim(IntType); in VisitCastExpr()
411 if (std::optional<PrimType> T = classify(PtrType->getPointeeType())) in VisitCastExpr()
422 PrimType DestPtrT = classifyPrim(PtrType); in VisitCastExpr()
448 std::optional<PrimType> FromT = classify(SubExprTy); in VisitCastExpr()
453 std::optional<PrimType> ToT = classify(CE->getType()); in VisitCastExpr()
[all …]
H A DFunction.h31 enum PrimType : uint32_t;
96 using ParamDescriptor = std::pair<PrimType, Descriptor *>;
141 SmallVectorImpl<PrimType>::const_reverse_iterator;
226 PrimType getParamType(unsigned ParamIndex) const { in getParamType()
233 llvm::SmallVectorImpl<PrimType> &&ParamTypes,
275 llvm::SmallVector<PrimType, 8> ParamTypes;
H A DInterp.h323 template <PrimType Name, class T = typename PrimConv<Name>::T>
409 template <PrimType Name, class T = typename PrimConv<Name>::T>
436 template <PrimType Name, class T = typename PrimConv<Name>::T>
456 template <PrimType Name, class T = typename PrimConv<Name>::T>
478 template <PrimType Name, class T = typename PrimConv<Name>::T>
538 template <PrimType Name, class T = typename PrimConv<Name>::T>
626 template <PrimType Name, class T = typename PrimConv<Name>::T>
646 template <PrimType Name, class T = typename PrimConv<Name>::T>
666 template <PrimType Name, class T = typename PrimConv<Name>::T>
687 template <PrimType Name, class T = typename PrimConv<Name>::T>
[all …]
H A DPrimType.h34 enum PrimType : unsigned { enum
52 inline constexpr bool isPtrType(PrimType T) { in isPtrType()
78 constexpr bool isIntegralType(PrimType T) { return T <= PT_FixedPoint; } in isIntegralType()
83 constexpr bool needsAlloc(PrimType T) { in needsAlloc()
88 template <PrimType T> struct PrimConv;
136 size_t primSize(PrimType Type);
H A DDescriptor.h27 enum PrimType : unsigned;
163 const std::optional<PrimType> PrimT = std::nullopt;
183 Descriptor(const DeclTy &D, const Type *SourceTy, PrimType Type,
188 Descriptor(const DeclTy &D, PrimType Type, MetadataSize MD, size_t NumElems,
192 Descriptor(const DeclTy &D, PrimType Type, MetadataSize MDSize, bool IsConst,
246 PrimType getPrimType() const { in getPrimType()
H A DCompiler.h257 std::optional<PrimType> classify(const Expr *E) const { in classify()
260 std::optional<PrimType> classify(QualType Ty) const { in classify()
265 PrimType classifyPrim(QualType Ty) const { in classifyPrim()
272 PrimType classifyPrim(const Expr *E) const { in classifyPrim()
298 bool visitAPValue(const APValue &Val, PrimType ValType, const Expr *E);
309 std::optional<PrimType> InitT);
313 unsigned allocateLocalPrimitive(DeclTy &&Decl, PrimType Ty, bool IsConst,
342 bool visitZeroInitializer(PrimType T, QualType QT, const Expr *E);
347 bool emitConst(const llvm::APSInt &Value, PrimType Ty, const Expr *E);
354 template <typename T> bool emitConst(T Value, PrimType Ty, const Expr *E);
[all …]
H A DInterpBuiltin.cpp45 static void discard(InterpStack &Stk, PrimType T) { in discard()
49 static APSInt popToAPSInt(InterpStack &Stk, PrimType T) { in popToAPSInt()
57 std::optional<PrimType> T = S.getContext().classify(QT); in pushInteger()
100 static void assignInteger(InterpState &S, const Pointer &Dest, PrimType ValueT, in assignInteger()
217 PrimType ElemT = *S.getContext().classify(getElemType(A)); in interp__builtin_strcmp()
555 PrimType FPClassArgT = *S.getContext().classify(Call->getArg(1)->getType()); in interp__builtin_isfpclass()
573 PrimType IntT = *S.getContext().classify(Call->getArg(0)); in interp__builtin_fpclassify()
625 PrimType ArgT = *S.getContext().classify(Call->getArg(0)->getType()); in interp__builtin_abs()
639 PrimType ArgT = *S.getContext().classify(Call->getArg(0)->getType()); in interp__builtin_popcount()
648 PrimType ArgT = *S.getContext().classify(Call->getArg(0)->getType()); in interp__builtin_parity()
[all …]
H A DContext.cpp227 static PrimType integralTypeToPrimTypeS(unsigned BitWidth) { in integralTypeToPrimTypeS()
243 static PrimType integralTypeToPrimTypeU(unsigned BitWidth) { in integralTypeToPrimTypeU()
259 std::optional<PrimType> Context::classify(QualType T) const { in classify()
444 SmallVector<PrimType, 8> ParamTypes; in getOrCreateFunction()
495 std::optional<PrimType> T = classify(PD->getType()); in getOrCreateFunction()
496 PrimType PT = T.value_or(PT_Ptr); in getOrCreateFunction()
516 SmallVector<PrimType, 8> ParamTypes; in getOrCreateObjCBlock()
523 std::optional<PrimType> T = classify(PD->getType()); in getOrCreateObjCBlock()
524 PrimType PT = T.value_or(PT_Ptr); in getOrCreateObjCBlock()
H A DContext.h33 enum PrimType : unsigned;
79 std::optional<PrimType> classify(QualType T) const;
82 std::optional<PrimType> classify(const Expr *E) const { in classify()
H A DProgram.cpp38 PrimType CharType; in createGlobalString()
174 if (std::optional<PrimType> T = Ctx.classify(QT)) in getOrCreateDummy()
253 if (std::optional<PrimType> T = Ctx.classify(Ty)) in createGlobal()
376 if (std::optional<PrimType> T = Ctx.classify(FT)) { in getOrCreateRecord()
415 if (std::optional<PrimType> T = Ctx.classify(ElemTy)) { in createDescriptor()
442 if (std::optional<PrimType> T = Ctx.classify(ElemTy)) { in createDescriptor()
465 std::optional<PrimType> ElemTy = Ctx.classify(CT->getElementType()); in createDescriptor()
475 std::optional<PrimType> ElemTy = Ctx.classify(VT->getElementType()); in createDescriptor()
H A DEvalEmitter.cpp159 PrimType T = Ctx.classify(Arg->getType()).value_or(PT_Ptr); in speculate()
171 template <PrimType OpType> bool EvalEmitter::emitRet(const SourceInfo &Info) { in emitRet()
264 template <PrimType OpType>
276 template <PrimType OpType>
314 if (std::optional<PrimType> T = Ctx.classify(E->getType())) { in updateGlobalTemporaries()
H A DDescriptor.cpp282 static BlockCtorFn getCtorPrim(PrimType Type) { in getCtorPrim()
297 static BlockDtorFn getDtorPrim(PrimType Type) { in getDtorPrim()
312 static BlockMoveFn getMovePrim(PrimType Type) { in getMovePrim()
324 static BlockCtorFn getCtorArrayPrim(PrimType Type) { in getCtorArrayPrim()
329 static BlockDtorFn getDtorArrayPrim(PrimType Type) { in getDtorArrayPrim()
334 static BlockMoveFn getMoveArrayPrim(PrimType Type) { in getMoveArrayPrim()
340 Descriptor::Descriptor(const DeclTy &D, const Type *SourceTy, PrimType Type, in Descriptor()
353 Descriptor::Descriptor(const DeclTy &D, PrimType Type, MetadataSize MD, in Descriptor()
367 Descriptor::Descriptor(const DeclTy &D, PrimType Type, MetadataSize MD, in Descriptor()
H A DInterpBuiltinBitCast.cpp39 llvm::function_ref<bool(const Pointer &P, PrimType Ty, Bits BitOffset,
97 PrimType ElemT = *Ctx.classify(ElemType); in enumerateData()
270 [&](const Pointer &P, PrimType T, Bits BitOffset, Bits FullBitWidth, in readPointerToBuffer()
392 [&](const Pointer &P, PrimType T, Bits BitOffset, Bits FullBitWidth, in DoBitCastPtr()
479 [&](const Pointer &P, PrimType T, Bits BitOffset, in DoMemcpy()
487 [&](const Pointer &P, PrimType T, Bits BitOffset, in DoMemcpy()
H A DPrimType.cpp23 size_t primSize(PrimType Type) { in primSize()
H A DPointer.cpp659 if (std::optional<PrimType> T = Ctx.classify(Ty)) { in toRValue()
676 if (std::optional<PrimType> T = Ctx.classify(FieldTy)) { in toRValue()
699 if (std::optional<PrimType> T = Ctx.classify(FieldTy)) { in toRValue()
737 if (std::optional<PrimType> T = Ctx.classify(ElemTy)) { in toRValue()
751 std::optional<PrimType> ElemT = Ctx.classify(ElemTy); in toRValue()
771 PrimType ElemT = *Ctx.classify(ElemTy); in toRValue()
798 if (std::optional<PrimType> T = Ctx.classify(ResultType)) { in toRValue()
H A DInterpStack.h153 std::vector<PrimType> ItemTypes;
155 template <typename T> static constexpr PrimType toPrimType() { in toPrimType()
H A DByteCodeEmitter.cpp65 std::optional<PrimType> T = Ctx.classify(PD->getType()); in compileFunc()
246 PrimType T = Ctx.classify(Arg->getType()).value_or(PT_Ptr); in speculate()
H A DDynamicAllocator.h73 Block *allocate(const Expr *Source, PrimType T, size_t NumElements,
H A DFunction.cpp18 llvm::SmallVectorImpl<PrimType> &&ParamTypes, in Function()
H A DInterpStack.cpp111 for (PrimType T : ItemTypes) in shrink()
H A DDynamicAllocator.cpp42 Block *DynamicAllocator::allocate(const Expr *Source, PrimType T, in allocate()
H A DInterpBlock.h30 enum PrimType : unsigned;
H A DProgram.h118 Descriptor *createDescriptor(const DeclTy &D, PrimType T,
H A DInterp.cpp64 static bool BCP(InterpState &S, CodePtr &RealPC, int32_t Offset, PrimType PT) { in BCP()
114 int32_t ParamSize = align(sizeof(PrimType)); in BCP()
252 PrimType Ty = S.getContext().classify(Arg).value_or(PT_Ptr); in popArg()
289 for (PrimType Ty : Func->args_reverse()) in cleanupAfterFunctionCall()
2058 PrimType T) { in copyPrimitiveMemory()
2111 PrimType PT = D->getPrimType(); in finishGlobalRecurse()
H A DInterpFrame.cpp178 PrimType PrimTy = S.Ctx.classify(Ty).value_or(PT_Ptr); in describe()

12