Home | History | Annotate | Download | only in Core

Lines Matching defs:IS

5 // This file is distributed under the University of Illinois Open Source
218 /// the value is not specified.
225 /// the array). This is called by ExprEngine when evaluating
234 /// - Successful cast (ex: derived is subclass of base).
235 /// - Failed cast (ex: derived is definitely not a subclass of base).
236 /// - We don't know (base is a symbolic region and we don't have
239 /// valid only if Failed flag is set to false.
259 InvalidatedSymbols &IS,
289 // BindDefault is only used to initialize a region with a default value.
323 /// associated with the object is recycled.
332 /// The high level logic for this method is this:
336 /// else if L is in killset
339 /// if L is on stack or heap
365 /// y's value is retrieved by this method.
610 StoreManager::InvalidatedSymbols &IS;
618 StoreManager::InvalidatedSymbols &is,
622 Ex(ex), Count(count), LCtx(lctx), IS(is), Regions(r) {}
635 IS.insert(Sym);
642 // Is it a LazyCompoundVal? All references get invalidated as well.
662 // Get the old binding. Is it a region? If so, add it to the worklist.
674 IS.insert(SR->getSymbol());
696 // conjured symbol. The type of the symbol is irrelavant.
712 // conjured symbol. The type of the symbol is irrelavant.
730 // If the region is a global and we are invalidating all globals,
773 InvalidatedSymbols &IS,
778 Ex, Count, LCtx, IS, Invalidated, false);
829 // of VLAs. Returning UnknownVal here, however, is a stop-gap so that
836 // If a variable is reinterpreted as a type that doesn't fit into a larger
838 // This is a signed value, since it's used in arithmetic with signed indices.
850 /// the array). This is called by ExprEngine when evaluating casts
899 // Assume the derived class is a pointer or a reference to a CXX record.
920 // If the region type is a subclass of the derived type.
931 // If super region is not a parent of derived class, the cast definitely
945 // If this is a cast to void*, return the region.
1060 // value to the ivar type. What we should model is stores to ivars
1061 // that blow past the extent of the ivar. If the address of the ivar is
1062 // reinterpretted, it is possible we stored a different value that could
1070 // value to the variable type. What we should model is stores to variables
1072 // variable is reinterpretted, it is possible we stored a different value
1128 // C++ base object region is another kind of region that we should blast
1129 // through to look for lazy compound value. It is like a field region.
1140 // The NULL MemRegion indicates an non-existent lazy binding. A NULL Store is
1154 // Check if the region is an element region of a string literal.
1156 // FIXME: Handle loads from strings where the literal is treated as
1171 // Technically, only i == length is guaranteed to be null.
1173 // the only time such an access would be made is if a string literal was
1189 // FIXME: This is a hack, and doesn't do anything really intelligent yet.
1293 // If our super region is a field or element itself, walk up the region
1294 // hierarchy to see if there is a default value installed in an ancestor.
1313 // if superR is a vector and if so return Unknown.
1377 // Is 'VD' declared constant? If so, retrieve the constant value.
1463 // Check if the region is a struct region.
1474 // This is for test rdar_test_7185607 in misc-ps-region-store.m.
1486 // FIXME: Is this the right way to handle symbols that are references?
1534 // Set the default value to a zero constant when it is a structure
1543 assert(!SymbolManager::canSymbolicate(T) && "This type is representable");
1561 // Check if the init expr is a string literal.
1602 // If the init list is shorter than the array length, set the
1631 // the value is symbolic go and bind it as a "default" binding.
1679 // explicitly. One example is something like array[index], where index
1680 // is a symbolic value. In such cases, we want to invalidate the entire
1825 // CXXThisRegion in the current or parent location context is live.
1842 // Is it a LazyCompoundVal? All referenced regions are live as well.
1856 // If V is a region, then add it to the worklist.