#include "asan_descriptions.h"
#include "asan_mapping.h"
#include "asan_report.h"
#include "asan_stack.h"
#include "sanitizer_common/sanitizer_stackdepot.h"
namespace __asan {
AsanThreadIdAndName::AsanThreadIdAndName(AsanThreadContext *t) { … }
AsanThreadIdAndName::AsanThreadIdAndName(u32 tid) { … }
void AsanThreadIdAndName::Init(u32 tid, const char *tname) { … }
void DescribeThread(AsanThreadContext *context) { … }
static bool GetShadowKind(uptr addr, ShadowKind *shadow_kind) { … }
bool DescribeAddressIfShadow(uptr addr) { … }
bool GetShadowAddressInformation(uptr addr, ShadowAddressDescription *descr) { … }
static void GetAccessToHeapChunkInformation(ChunkAccess *descr,
AsanChunkView chunk, uptr addr,
uptr access_size) { … }
static void PrintHeapChunkAccess(uptr addr, const ChunkAccess &descr) { … }
bool GetHeapAddressInformation(uptr addr, uptr access_size,
HeapAddressDescription *descr) { … }
static StackTrace GetStackTraceFromId(u32 id) { … }
bool DescribeAddressIfHeap(uptr addr, uptr access_size) { … }
bool GetStackAddressInformation(uptr addr, uptr access_size,
StackAddressDescription *descr) { … }
static void PrintAccessAndVarIntersection(const StackVarDescr &var, uptr addr,
uptr access_size, uptr prev_var_end,
uptr next_var_beg) { … }
bool DescribeAddressIfStack(uptr addr, uptr access_size) { … }
static void DescribeAddressRelativeToGlobal(uptr addr, uptr access_size,
const __asan_global &g) { … }
bool GetGlobalAddressInformation(uptr addr, uptr access_size,
GlobalAddressDescription *descr) { … }
bool DescribeAddressIfGlobal(uptr addr, uptr access_size,
const char *bug_type) { … }
void ShadowAddressDescription::Print() const { … }
void GlobalAddressDescription::Print(const char *bug_type) const { … }
bool GlobalAddressDescription::PointsInsideTheSameVariable(
const GlobalAddressDescription &other) const { … }
void StackAddressDescription::Print() const { … }
void HeapAddressDescription::Print() const { … }
AddressDescription::AddressDescription(uptr addr, uptr access_size,
bool shouldLockThreadRegistry) { … }
void WildAddressDescription::Print() const { … }
void PrintAddressDescription(uptr addr, uptr access_size,
const char *bug_type) { … }
}