Lines Matching defs:StorageLocation
50 static llvm::DenseMap<const ValueDecl *, StorageLocation *> intersectDeclToLoc(
51 const llvm::DenseMap<const ValueDecl *, StorageLocation *> &DeclToLoc1,
52 const llvm::DenseMap<const ValueDecl *, StorageLocation *> &DeclToLoc2) {
53 llvm::DenseMap<const ValueDecl *, StorageLocation *> Result;
235 static llvm::MapVector<const StorageLocation *, Value *>
236 joinLocToVal(const llvm::MapVector<const StorageLocation *, Value *> &LocToVal,
237 const llvm::MapVector<const StorageLocation *, Value *> &LocToVal2,
240 llvm::MapVector<const StorageLocation *, Value *> Result;
242 const StorageLocation *Loc = Entry.first;
263 // `const StorageLocation *` or `const Expr *`.
833 StorageLocation &Environment::createStorageLocation(QualType Type) {
837 StorageLocation &Environment::createStorageLocation(const ValueDecl &D) {
844 StorageLocation &Environment::createStorageLocation(const Expr &E) {
851 void Environment::setStorageLocation(const ValueDecl &D, StorageLocation &Loc) {
862 StorageLocation *Environment::getStorageLocation(const ValueDecl &D) const {
867 StorageLocation *Loc = It->second;
874 void Environment::setStorageLocation(const Expr &E, StorageLocation &Loc) {
876 // but we still want to be able to associate a `StorageLocation` with them,
885 StorageLocation *Environment::getStorageLocation(const Expr &E) const {
924 void Environment::setValue(const StorageLocation &Loc, Value &Val) {
939 Value *Environment::getValue(const StorageLocation &Loc) const {
1007 StorageLocation &PointeeLoc =
1016 StorageLocation &
1033 StorageLocation &Loc = createStorageLocation(Ty);
1047 auto initField = [&](QualType FieldType, StorageLocation &FieldLoc) {
1073 StorageLocation *FieldLoc = Loc.getChild(*Field);
1086 StorageLocation &Environment::createObjectInternal(const ValueDecl *D,
1105 StorageLocation &Loc =
1151 llvm::DenseMap<const StorageLocation *, std::string> LocToName;