reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
19 Pointer::Pointer(const Pointer &P) : Pointer(P.Pointee, P.Base, P.Offset) {} 22 : Pointee(P.Pointee), Base(P.Base), Offset(P.Offset) { 47 Offset = P.Offset; 47 Offset = P.Offset; 64 Offset = P.Offset; 64 Offset = P.Offset;tools/clang/lib/AST/Interp/Pointer.h
71 unsigned Field = Offset + Off; 83 return Pointer(Pointee, 0, Offset == 0 ? Offset : PastEndMark); 83 return Pointer(Pointee, 0, Offset == 0 ? Offset : PastEndMark); 94 if (Offset != Base) 96 return Pointer(Pointee, Base, Offset + sizeof(InitMap *)); 100 if (Offset != Base) 101 return Pointer(Pointee, Offset, Offset); 101 return Pointer(Pointee, Offset, Offset); 124 if (Base != Offset) 136 return Pointer(Pointee, Next, Offset); 153 assert(Offset == PastEndMark && "cannot get base of a block"); 156 assert(Offset == Base && "not an inner field"); 163 assert(Offset != 0 && Offset != PastEndMark && "not an array element"); 163 assert(Offset != 0 && Offset != PastEndMark && "not an array element"); 166 assert(Offset != Base && "not an array element"); 191 assert(Offset != PastEndMark && "invalid offset"); 193 return Offset; 196 if (Offset != Base) { 202 return Offset - Base - Adjust; 214 bool isArrayElement() const { return Base != Offset; } 217 return (Base == 0 || Base == RootPtrMark) && Offset == 0; 256 return Offset; 277 bool isElementPastEnd() const { return Offset == PastEndMark; } 282 return *reinterpret_cast<T *>(Pointee->data() + Offset); 304 OS << "{" << Base << ", " << Offset << ", ";