Lines Matching refs:Shadow
245 MmapFixedNoReserve(MemToShadow(addr), size * kShadowMultiplier, "shadow");
247 // Meta shadow is 2:1, so tread carefully.
257 MmapFixedNoReserve(meta_begin, meta_end - meta_begin, "meta shadow");
267 MmapFixedNoReserve(meta_begin, meta_end - meta_begin, "meta shadow");
270 VPrintf(2, "mapped meta shadow for (%p-%p) at (%p-%p)\n",
290 VPrintf(3, "checking shadow region %p-%p\n", beg, end);
298 VPrintf(3, " checking pointer %p: shadow=%p meta=%p\n", p, s, m);
546 Shadow LoadShadow(u64 *p) {
548 return Shadow(raw);
564 Shadow cur, Shadow old) {
575 static inline bool HappensBefore(Shadow old, ThreadState *thr) {
582 u64 *shadow_mem, Shadow cur) {
593 // scan all the shadow values and dispatch to 4 categories:
601 Shadow old(0);
659 Shadow cur(a);
661 Shadow old(LoadShadow(&s[i]));
662 if (Shadow::Addr0AndSizeAreEqual(cur, old) &&
687 // load 4 shadow slots
690 // load high parts of 4 shadow slots into addr_vect:
711 // load low parts of shadow cell epochs into epoch_vect:
734 // NOTE: this check can fail if the shadow is concurrently mutated
760 Printf("Bad shadow addr %p (%zx)\n", shadow_mem, addr);
784 Shadow cur(fast_state);
813 u64 *shadow_mem, Shadow cur) {
847 // Don't want to touch lots of shadow memory.
893 // Processing more than 1k (4k of shadow) is expensive,
906 Shadow s(thr->fast_state);
919 Shadow s(thr->fast_state);
935 // Shadow stack maintenance can be replaced with