HomeSort by: relevance | last modified time | path
    Searched refs:Shadow (Results 1 - 25 of 31) 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...]
tsan_rtl.h 137 // action. It allows to reduce number of shadow state updates.
162 // C/C++ uses fixed size shadow stack.
165 // Go uses malloc-allocated shadow stack with dynamic size.
355 void AddMemoryAccess(uptr addr, uptr external_tag, Shadow s, StackTrace stack,
479 u64 *shadow_mem, Shadow cur);
762 // Shadow stack maintenance can be replaced with
  /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/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...]
AddressSanitizer.cpp 126 // The shadow memory space is dynamically allocated.
226 "asan-force-dynamic-shadow",
227 cl::desc("Load shadow address into a local variable for each function"),
232 cl::desc("Access dynamic shadow through an ifunc global on "
238 cl::desc("Suppress rematerialization of dynamic shadow address by passing "
257 "Inline shadow poisoning for blocks up to the given size in bytes."),
326 // These flags allow to change the shadow mapping.
327 // The shadow mapping looks like
328 // Shadow = (Mem >> scale) + offset
331 cl::desc("scale of asan shadow mapping")
    [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();
SemaTemplateInstantiateDecl.cpp 3044 // Don't process the shadow decls for an invalid decl.
3053 // Process the shadow decls.
3054 for (auto *Shadow : D->shadows()) {
3057 NamedDecl *OldTarget = Shadow->getTargetDecl();
3058 if (auto *CUSD = dyn_cast<ConstructorUsingShadowDecl>(Shadow))
3064 Shadow->getLocation(), OldTarget, TemplateArgs));
3073 getPreviousDeclForInstantiation(Shadow)) {
3075 Shadow->getLocation(), OldPrev, TemplateArgs));
3081 SemaRef.Context.setInstantiatedFromUsingShadowDecl(InstShadow, Shadow);
3084 SemaRef.CurrentInstantiationScope->InstantiatedLocal(Shadow, InstShadow)
    [all...]
SemaDecl.cpp 1614 /// Removes using shadow declarations from the lookup results.
3230 if (UsingShadowDecl *Shadow = dyn_cast<UsingShadowDecl>(OldD)) {
3233 Diag(Shadow->getTargetDecl()->getLocation(),
3235 Diag(Shadow->getUsingDecl()->getLocation(),
3241 if (checkUsingShadowRedecl<FunctionDecl>(*this, Shadow, New))
3243 OldD = Old = cast<FunctionDecl>(Shadow->getTargetDecl());
4050 if (auto *Shadow =
4052 if (checkUsingShadowRedecl<VarTemplateDecl>(*this, Shadow, NewTemplate))
4057 if (auto *Shadow =
4059 if (checkUsingShadowRedecl<VarDecl>(*this, Shadow, New)
    [all...]
  /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...]
  /src/external/apache2/llvm/dist/clang/lib/AST/
DeclCXX.cpp 759 // Ignore constructor shadow declarations. They are lazily created and
1364 if (auto *Shadow = dyn_cast<UsingShadowDecl>(D)) {
1365 if (Shadow->getDeclName().getNameKind()
1368 data().Conversions.get(Ctx).addDecl(Ctx, Shadow, Shadow->getAccess());
3005 const UsingShadowDecl *Shadow = this;
3007 dyn_cast<UsingShadowDecl>(Shadow->UsingOrNextShadow))
3008 Shadow = NextShadow;
3009 return cast<UsingDecl>(Shadow->UsingOrNextShadow);
3048 // Remove S from the shadow decl chain. This is O(n) but hopefully rare
    [all...]
DeclPrinter.cpp 1601 for (const auto *Shadow : D->shadows()) {
1603 dyn_cast<ConstructorUsingShadowDecl>(Shadow)) {
1604 assert(Shadow->getDeclContext() == ConstructorShadow->getDeclContext());
  /src/external/apache2/llvm/dist/llvm/lib/CodeGen/
RDFGraph.cpp 103 if (Flags & NodeAttrs::Shadow)
1148 // characteristics. Specific examples of related nodes are shadow reference
1210 // Get the next shadow node in IA corresponding to RA, and optionally create
1216 uint16_t Flags = RA.Addr->getFlags() | NodeAttrs::Shadow;
1224 // Create a copy of RA and mark is as shadow.
1226 NA.Addr->setFlags(Flags | NodeAttrs::Shadow);
1231 // Get the next shadow node in IA corresponding to RA. Return null-address
1236 uint16_t Flags = RA.Addr->getFlags() | NodeAttrs::Shadow;
1560 // reaching def of TA to the appropriate def node. Create any shadow nodes
1593 // Mark the existing ref as "shadow" and create a new shadow
    [all...]

Completed in 122 milliseconds

1 2