HomeSort by: relevance | last modified time | path
    Searched refs:Shadow (Results 1 - 25 of 40) sorted by relevancy

1 2

  /src/external/gpl3/gcc.old/dist/libsanitizer/tsan/
tsan_update_shadow_word.inc 27 if (LIKELY(Shadow::Addr0AndSizeAreEqual(cur, old))) {
29 if (LIKELY(Shadow::TidsAreEqual(old, cur))) {
48 if (Shadow::TwoRangesIntersect(old, cur, kAccessSize)) {
49 if (Shadow::TidsAreEqual(old, cur))
tsan_shadow.h 85 friend class Shadow;
94 // Shadow (from most significant bit):
102 class Shadow : public FastState {
104 explicit Shadow(u64 x) : FastState(x) {}
106 explicit Shadow(const FastState &s) : FastState(s.x_) { ClearHistorySize(); }
135 static inline bool TidsAreEqual(const Shadow s1, const Shadow s2) {
141 static ALWAYS_INLINE bool Addr0AndSizeAreEqual(const Shadow s1,
142 const Shadow s2) {
147 static ALWAYS_INLINE bool TwoRangesIntersect(Shadow s1, Shadow s2
    [all...]
tsan_rtl_access.cpp 140 Shadow LoadShadow(u64 *p) {
142 return Shadow(raw);
159 void HandleRace(ThreadState *thr, u64 *shadow_mem, Shadow cur, Shadow old) {
170 static inline bool HappensBefore(Shadow old, ThreadState *thr) {
177 Shadow cur) {
185 // scan all the shadow values and dispatch to 4 categories:
193 Shadow old(0);
265 Shadow cur(a);
267 Shadow old(LoadShadow(&s[i]))
    [all...]
tsan_rtl_report.cpp 177 void ScopedReportBase::AddMemoryAccess(uptr addr, uptr external_tag, Shadow s,
525 // split into multiple accesses in the shadow.
812 Shadow s0(thr->racy_state[0]);
813 Shadow s1(thr->racy_state[1]);
838 Shadow s(thr->racy_state[1]);
847 uptr a0 = addr + Shadow(thr->racy_state[0]).addr0();
848 uptr a1 = addr + Shadow(thr->racy_state[1]).addr0();
849 uptr e0 = a0 + Shadow(thr->racy_state[0]).size();
850 uptr e1 = a1 + Shadow(thr->racy_state[1]).size();
899 Shadow s2(thr->racy_state[1])
    [all...]
  /src/sys/external/bsd/compiler_rt/dist/lib/tsan/rtl/
tsan_update_shadow_word_inl.h 30 if (Shadow::Addr0AndSizeAreEqual(cur, old)) {
33 if (Shadow::TidsAreEqual(old, cur)) {
50 if (Shadow::TwoRangesIntersect(old, cur, kAccessSize)) {
52 if (Shadow::TidsAreEqual(old, cur)) {
tsan_rtl.cc 249 if (!MmapFixedNoReserve(shadow_begin, shadow_end - shadow_begin, "shadow"))
252 // Meta shadow is 2:1, so tread carefully.
262 if (!MmapFixedNoReserve(meta_begin, meta_end - meta_begin, "meta shadow"))
273 if (!MmapFixedNoReserve(meta_begin, meta_end - meta_begin, "meta shadow"))
277 VPrintf(2, "mapped meta shadow for (%p-%p) at (%p-%p)\n",
300 VPrintf(3, "checking shadow region %p-%p\n", beg, end);
309 VPrintf(3, " checking pointer %p: shadow=%p meta=%p\n", p, s, m);
315 // Ensure that shadow and meta mappings are linear within a single
599 Shadow LoadShadow(u64 *p) {
601 return Shadow(raw)
    [all...]
tsan_rtl.h 98 const u64 kShadowRodata = (u64)-1; // .rodata shadow marker
174 friend class Shadow;
183 // Shadow (from most significant bit):
191 class Shadow : public FastState {
193 explicit Shadow(u64 x)
197 explicit Shadow(const FastState &s)
233 static inline bool TidsAreEqual(const Shadow s1, const Shadow s2) {
240 bool Addr0AndSizeAreEqual(const Shadow s1, const Shadow s2)
    [all...]
tsan_rtl_report.cc 166 void ScopedReportBase::AddMemoryAccess(uptr addr, uptr external_tag, Shadow s,
577 Shadow s0(thr->racy_state[0]);
578 Shadow s1(thr->racy_state[1]);
603 Shadow s(thr->racy_state[1]);
612 uptr a0 = addr + Shadow(thr->racy_state[0]).addr0();
613 uptr a1 = addr + Shadow(thr->racy_state[1]).addr0();
614 uptr e0 = a0 + Shadow(thr->racy_state[0]).size();
615 uptr e1 = a1 + Shadow(thr->racy_state[1]).size();
666 Shadow s2(thr->racy_state[1]);
687 Shadow s(thr->racy_state[i])
    [all...]
tsan_rtl_thread.cc 103 // Setup dynamic shadow stack.
345 Printf("Bad shadow addr %p (%zx)\n", shadow_mem, addr);
349 Printf("Bad shadow addr %p (%zx)\n",
378 Shadow cur(fast_state);
389 Shadow cur(fast_state);
399 Shadow cur(fast_state);
  /src/sys/external/bsd/compiler_rt/dist/lib/tsan/tests/unit/
tsan_shadow_test.cc 19 TEST(Shadow, FastState) {
20 Shadow s(FastState(11, 22));
49 TEST(Shadow, Mapping) {
64 TEST(Shadow, Celling) {
  /src/external/gpl3/gcc/dist/libsanitizer/tsan/
tsan_rtl_access.cpp 148 NOINLINE void DoReportRace(ThreadState* thr, RawShadow* shadow_mem, Shadow cur,
149 Shadow old,
151 // For the free shadow markers the first element (that contains kFreeSid)
155 old = Shadow(LoadShadow(&shadow_mem[1]));
158 StoreShadow(&shadow_mem[i], i == 0 ? Shadow::kRodata : Shadow::kEmpty);
166 ReportRace(thr, shadow_mem, cur, Shadow(old), typ);
173 bool ContainsSameAccess(RawShadow* s, Shadow cur, int unused0, int unused1,
183 static_cast<u32>(Shadow::kRodata));
187 if (old == Shadow::kRodata
616 const m128 shadow = _mm_load_si128((m128*)shadow_mem); local
    [all...]
tsan_shadow.h 41 friend class Shadow;
57 class Shadow {
61 Shadow(FastState state, u32 addr, u32 size, AccessType typ) {
77 explicit Shadow(RawShadow x = Shadow::kEmpty) { raw_ = static_cast<u32>(x); }
85 DCHECK(part_.access_ != 0 || raw_ == static_cast<u32>(Shadow::kRodata));
136 Shadow s(fs, 0, 8, kAccessWrite);
141 Shadow s;
174 // .rodata shadow marker, see MapRodata and ContainsSameAccessFast.
179 static_assert(sizeof(Shadow) == kShadowSize, "bad Shadow size")
    [all...]
tsan_rtl_report.cpp 177 void ScopedReportBase::AddMemoryAccess(uptr addr, uptr external_tag, Shadow s,
422 // split into multiple accesses in the shadow.
703 static bool SpuriousRace(Shadow old) {
704 Shadow last(LoadShadow(&ctx->last_spurious_race));
708 void ReportRace(ThreadState *thr, RawShadow *shadow_mem, Shadow cur, Shadow old,
732 Shadow s[kMop] = {cur, old};
tsan_interface_java.cpp 131 // Clear the destination shadow range.
132 // We used to move shadow from src to dst, but the trace format does not
136 ShadowSet(d, dend, Shadow::kEmpty);
tsan_rtl.h 321 // a thread running concurrently with DoReset can leave a bogus shadow value
332 // notice that DoReset has happened and will stop producing bogus shadow
336 // It is of course possible that multiple threads left multiple bogus shadow
409 void AddMemoryAccess(uptr addr, uptr external_tag, Shadow s, Tid tid,
496 void ReportRace(ThreadState *thr, RawShadow *shadow_mem, Shadow cur, Shadow old,
tsan_platform_linux.cpp 141 "==%zu== %llus [%zu]: RSS %zd MB: shadow:%zd meta:%zd file:%zd"
153 // Mark shadow for .rodata sections with the special Shadow::kRodata marker.
173 // Fill the file with Shadow::kRodata.
179 *p = Shadow::kRodata;
188 // Map the file into shadow of .rodata sections.
286 // Go maps shadow memory lazily and works fine with limited address space.
293 // overlaps with shadow memory). If we detect unlimited stack size,
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Instrumentation/
DataFlowSanitizer.cpp 22 /// application memory is backed by a shadow memory byte. The shadow byte can
38 /// | shadow memory |
47 /// two bytes of shadow memory which hold the label. That means we can represent
63 /// | shadow memory |
69 /// To derive a shadow memory address from an application memory address,
72 /// account for the double byte representation of shadow labels and move the
73 /// address into the shadow memory range. See the function
153 // External symbol to be used when generating the shadow address for
161 // the shadow load to have alignment 16. This flag is disabled by default a
    [all...]
MemProfiler.cpp 10 // to increment the access count held in a shadow memory location, or
46 // Size of memory mapped to a single shadow location.
49 // Scale from granularity down to shadow size.
97 // These flags allow to change the shadow mapping.
98 // The shadow mapping looks like
99 // Shadow = ((Mem & mask) >> scale) + offset
102 cl::desc("scale of memprof shadow mapping"),
107 cl::desc("granularity of memprof shadow mapping"),
129 /// This struct defines the shadow mapping using the rule:
130 /// shadow = ((mem & mask) >> Scale) ADD DynamicShadowOffset
    [all...]
MemorySanitizer.cpp 14 /// (http://goo.gl/QKbem). We associate a few shadow bits with every
15 /// byte of the application memory, poison the shadow of the malloc-ed
16 /// or alloca-ed memory, load the shadow bits on every memory read,
17 /// propagate the shadow bits through some of the arithmetic
18 /// instruction (including MOV), store the shadow bits on every memory
20 /// associated shadow is poisoned.
30 /// Another difference from Memcheck is that we use 8 shadow bits per
31 /// byte of application memory and use a direct shadow mapping. This
33 /// shadow updates (Memcheck is single-threaded so races are not a
34 /// concern there. Memcheck uses 2 shadow bits per byte with a slo
    [all...]
HWAddressSanitizer.cpp 139 // These flags allow to change the shadow mapping and control how shadow memory
140 // is accessed. The shadow mapping looks like:
141 // Shadow = (Mem >> scale) + offset
145 cl::desc("HWASan shadow mapping offset [EXPERIMENTAL]"),
150 cl::desc("Access dynamic shadow through an ifunc global on "
156 cl::desc("Access dynamic shadow through an thread-local pointer on "
218 Value *memToShadow(Value *Shadow, IRBuilder<> &IRB);
259 /// This struct defines the shadow mapping using the rule:
260 /// shadow = (mem >> Scale) + Offset
    [all...]
  /src/external/gpl3/gcc/dist/libsanitizer/hwasan/
hwasan_report.cpp 416 shadow(CopyShadow()) {}
454 struct Shadow {
461 Shadow CopyShadow() const;
486 const Shadow shadow; member in class:__hwasan::__anon14550::BaseReport
520 BaseReport::Shadow BaseReport::CopyShadow() const {
521 Shadow result;
527 uptr short_end = kShortDumpOffset + ARRAY_SIZE(shadow.short_tags);
545 CHECK_GE(addr, shadow.addr);
546 uptr idx = addr - shadow.addr
    [all...]
  /src/external/apache2/llvm/dist/clang/lib/Sema/
SemaDeclCXX.cpp 851 // It's not permitted to shadow a template parameter name.
6992 /// inherited to the using shadow declaration in that base class (or a null
6999 ConstructorUsingShadowDecl *Shadow)
7007 for (auto *D : Shadow->redecls()) {
7029 !Shadow->isInvalidDecl()) {
7032 << Shadow->getTargetDecl();
7045 Shadow->setInvalidDecl();
11634 /// Determines whether to create a using shadow decl for a particular
11641 // function will silently decide not to build a shadow decl, which
11657 // The right solution is to not collapse the shadow-decl chain
    [all...]
SemaLookup.cpp 369 // shadow declaration over any other declaration of the same entity.
3193 // will always be a (possibly implicit) declaration to shadow any others.
3642 /// An entry in the shadow map, which is optimized to store a
3652 /// A list of shadow maps, which is used to model name hiding.
3678 /// Add a declaration to the current shadow map.
3684 /// RAII object that records when we've entered a shadow context.
3732 // A shadow declaration that's created by a resolved using declaration
3774 ShadowContextRAII Shadow(Visited);
3785 ShadowContextRAII Shadow(Visited);
3855 ShadowContextRAII Shadow(Visited)
    [all...]
SemaAccess.cpp 1310 if (UsingShadowDecl *Shadow =
1317 << Shadow->getUsingDecl()->getQualifiedNameAsString()
1694 } else if (auto *Shadow =
1698 ObjectClass = Shadow->getParent();
  /src/external/apache2/llvm/dist/clang/include/clang/AST/
DeclCXX.h 2375 ConstructorUsingShadowDecl *Shadow = nullptr;
2380 InheritedConstructor(ConstructorUsingShadowDecl *Shadow,
2382 : Shadow(Shadow), BaseCtor(BaseCtor) {}
2384 explicit operator bool() const { return Shadow; }
2386 ConstructorUsingShadowDecl *getShadowDecl() const { return Shadow; }
3165 /// Represents a shadow declaration introduced into a scope by a
3185 /// shadow declaration contained in the aforementioned using declaration.
3248 // if it is a shadow declaration for one.
3257 /// The next using shadow declaration contained in the shadow dec
    [all...]

Completed in 154 milliseconds

1 2