Lines Matching full:shadow
60 // The pointer to the cfi shadow region is stored at the start of this page.
76 // Get the start address of the CFI shadow region.
85 // This will only work while the shadow is not allocated.
100 // This class reads and decodes the shadow contents.
118 // Load a shadow value for the given application memory address.
134 // Allocate a new empty shadow (for the entire address space) on the side.
143 // Finish shadow construction. Atomically switch the current active shadow
149 shadow_ = (uptr)MmapNoReserveOrDie(GetShadowSize(), "CFI shadow");
150 VReport(1, "CFI: shadow at %zx .. %zx\n", shadow_, shadow_ + GetShadowSize());
156 // memset takes a byte, so our unchecked shadow value requires both bytes to
168 // in the shadow, and must make sure at codegen to place all valid call
193 void *res = MmapFixedOrDie(shadow_, GetShadowSize(), "cfi shadow");
290 // Need to fill shadow for both.
306 // Init or update shadow for the current set of loaded libraries.
319 // Shadow is 2 -> 2**kShadowGranularity.
321 VReport(1, "CFI: VMA size %zx, shadow size %zx\n", vma, GetShadowSize());
362 VReport(2, "CFI: unchecked call (shadow=FFFF): %p\n", Ptr);
419 // Setup shadow for dlopen()ed libraries.
420 // The actual shadow setup happens after dlopen() returns, which means that