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

Declarations

tools/clang/lib/AST/Interp/Descriptor.h
   23 struct Descriptor;

References

tools/clang/lib/AST/Interp/Block.h
   40   Block(const llvm::Optional<unsigned> &DeclID, Descriptor *Desc,
   44   Block(Descriptor *Desc, bool IsStatic = false, bool IsExtern = false)
   49   Descriptor *getDescriptor() const { return Desc; }
   83   Block(Descriptor *Desc, bool IsExtern, bool IsStatic, bool IsDead)
  105   Descriptor *Desc;
tools/clang/lib/AST/Interp/ByteCodeEmitter.cpp
   49     Descriptor *Desc = P.createDescriptor(PD, Ty);
   80 Scope::Local ByteCodeEmitter::createLocal(Descriptor *D) {
tools/clang/lib/AST/Interp/ByteCodeEmitter.h
   69   Local createLocal(Descriptor *D);
tools/clang/lib/AST/Interp/ByteCodeExprGen.cpp
  427   Descriptor *D = P.createDescriptor(Src, Ty, IsConst, Src.is<const Expr *>());
  451   Descriptor *D = P.createDescriptor(Src, Ty.getTypePtr(),
tools/clang/lib/AST/Interp/Descriptor.cpp
   18 static void ctorTy(Block *, char *Ptr, bool, bool, bool, Descriptor *) {
   22 template <typename T> static void dtorTy(Block *, char *Ptr, Descriptor *) {
   27 static void moveTy(Block *, char *Src, char *Dst, Descriptor *) {
   34 static void ctorArrayTy(Block *, char *Ptr, bool, bool, bool, Descriptor *D) {
   41 static void dtorArrayTy(Block *, char *Ptr, Descriptor *D) {
   48 static void moveArrayTy(Block *, char *Src, char *Dst, Descriptor *D) {
   57                           bool IsActive, Descriptor *D) {
   67     auto *SD = D->ElemDesc;
   81 static void dtorArrayDesc(Block *B, char *Ptr, Descriptor *D) {
   96 static void moveArrayDesc(Block *B, char *Src, char *Dst, Descriptor *D) {
  118                        bool IsActive, Descriptor *D) {
  140 static void dtorRecord(Block *B, char *Ptr, Descriptor *D) {
  153 static void moveRecord(Block *B, char *Src, char *Dst, Descriptor *D) {
  216 Descriptor::Descriptor(const DeclTy &D, Descriptor *Elem, unsigned NumElems,
  227 Descriptor::Descriptor(const DeclTy &D, Descriptor *Elem, bool IsTemporary,
tools/clang/lib/AST/Interp/Descriptor.h
   33                              Descriptor *FieldDesc);
   38                              Descriptor *FieldDesc);
   45                              char *DstFieldPtr, Descriptor *FieldDesc);
   72   Descriptor *const ElemDesc = nullptr;
   99   Descriptor(const DeclTy &D, Descriptor *Elem, unsigned NumElems, bool IsConst,
  103   Descriptor(const DeclTy &D, Descriptor *Elem, bool IsTemporary, UnknownSize);
  182   Descriptor *Desc;
tools/clang/lib/AST/Interp/EvalEmitter.cpp
   51 Scope::Local EvalEmitter::createLocal(Descriptor *D) {
tools/clang/lib/AST/Interp/EvalEmitter.h
   71   Local createLocal(Descriptor *D);
tools/clang/lib/AST/Interp/Function.h
   39     Descriptor *Desc;
   61   using ParamDescriptor = std::pair<PrimType, Descriptor *>;
tools/clang/lib/AST/Interp/InterpState.cpp
   58   Descriptor *Desc = B->getDescriptor();
tools/clang/lib/AST/Interp/Pointer.cpp
   89     Descriptor *Desc = getDeclDesc();
  118           Descriptor *Desc = Ptr.getFieldDesc();
  137   Descriptor *Desc = getFieldDesc();
  156   Descriptor *Desc = getFieldDesc();
tools/clang/lib/AST/Interp/Pointer.h
  133     Descriptor *Desc = Next == 0 ? getDeclDesc() : getDescriptor(Next)->Desc;
  147   Descriptor *getDeclDesc() const { return Pointee->Desc; }
  171   Descriptor *getFieldDesc() const {
tools/clang/lib/AST/Interp/Program.cpp
   41   Descriptor *Desc = allocateDescriptor(S, CharType, S->getLength() + 1,
  165   Descriptor *Desc;
  243       if (Descriptor *Desc = GetBaseDesc(BD, BR)) {
  256       if (Descriptor *Desc = GetBaseDesc(BD, BR)) {
  276     Descriptor *Desc;
  296 Descriptor *Program::createDescriptor(const DeclTy &D, const Type *Ty,
  322         Descriptor *Desc =
  341         Descriptor *Desc =
tools/clang/lib/AST/Interp/Program.h
  101   Descriptor *createDescriptor(const DeclTy &D, PrimType Type,
  109   Descriptor *createDescriptor(const DeclTy &D, const Type *Ty,
  189   Descriptor *allocateDescriptor(Ts &&... Args) {
  190     return new (Allocator) Descriptor(std::forward<Ts>(Args)...);
tools/clang/lib/AST/Interp/Record.h
   29     Descriptor *Desc;
   36     Descriptor *Desc;