llvm/compiler-rt/lib/asan/asan_descriptions.cpp

//===-- asan_descriptions.cpp -----------------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
//
// This file is a part of AddressSanitizer, an address sanity checker.
//
// ASan functions for getting information about an address and/or printing it.
//===----------------------------------------------------------------------===//

#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) {}

// Shadow descriptions
static bool GetShadowKind(uptr addr, ShadowKind *shadow_kind) {}

bool DescribeAddressIfShadow(uptr addr) {}

bool GetShadowAddressInformation(uptr addr, ShadowAddressDescription *descr) {}

// Heap descriptions
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) {}

// Stack descriptions
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) {}

// Global descriptions
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) {}
}  // namespace __asan