Classes | |
| class | AtomicHook |
| class | AtomicHook< ReturnType(*)(Args...)> |
| struct | Callable |
| class | CycleClock |
| class | CycleClockSource |
| struct | DataMemAndPtr |
| struct | DataMemAndRef |
| struct | Invoker |
| class | LowLevelAlloc |
| struct | MemFunAndPtr |
| struct | MemFunAndRef |
| struct | PerThreadSynch |
| class | SchedulingGuard |
| class | SchedulingHelper |
| class | ScopedSetEnv |
| class | SpinLock |
| class | SpinLockHolder |
| struct | SpinLockTest |
| struct | SpinLockWaitTransition |
| struct | StrippedAccept |
| struct | ThreadIdentity |
Typedefs | |
| using | CycleClockSourceFunc) = int64_t(*)( |
| template<typename F , typename... Args> | |
| using | InvokeT = decltype(Invoker< F, Args... >::type::Invoke(std::declval< F >(), std::declval< Args >()...)) |
| using | ThreadIdentityReclaimerFunction = void(*)(void *) |
Enumerations | |
| enum | { kOnceInit = 0, kOnceRunning = 0x65C2937B, kOnceWaiter = 0x05A308D2, kOnceDone = 221 } |
| enum | { PROFILE_TIMESTAMP_SHIFT = 7 } |
| enum | { LOCKWORD_RESERVED_SHIFT = 3 } |
| enum | LinkerInitialized { kLinkerInitialized = 0 } |
| enum | SchedulingMode { SCHEDULE_KERNEL_ONLY = 0, SCHEDULE_COOPERATIVE_AND_KERNEL } |
Functions | |
| static void | AddToFreelist (void *v, LowLevelAlloc::Arena *arena) |
| template<typename Callable , typename... Args> | |
| void | CallOnceImpl (std::atomic< uint32_t > *control, base_internal::SchedulingMode scheduling_mode, Callable &&fn, Args &&...args) |
| static uintptr_t | CheckedAdd (uintptr_t a, uintptr_t b) |
| void | ClearCurrentThreadIdentity () |
| static void | Coalesce (AllocList *a) |
| std::atomic< uint32_t > * | ControlWord (absl::once_flag *flag) |
| ABSL_BASE_INTERNAL_FORCEINLINE int | CountLeadingZeros32 (uint32_t n) |
| ABSL_BASE_INTERNAL_FORCEINLINE int | CountLeadingZeros32Slow (uint64_t n) |
| ABSL_BASE_INTERNAL_FORCEINLINE int | CountLeadingZeros64 (uint64_t n) |
| ABSL_BASE_INTERNAL_FORCEINLINE int | CountLeadingZeros64Slow (uint64_t n) |
| ABSL_BASE_INTERNAL_FORCEINLINE int | CountTrailingZerosNonZero32 (uint32_t n) |
| ABSL_BASE_INTERNAL_FORCEINLINE int | CountTrailingZerosNonZero32Slow (uint32_t n) |
| ABSL_BASE_INTERNAL_FORCEINLINE int | CountTrailingZerosNonZero64 (uint64_t n) |
| ABSL_BASE_INTERNAL_FORCEINLINE int | CountTrailingZerosNonZero64Slow (uint64_t n) |
| ThreadIdentity * | CurrentThreadIdentityIfPresent () |
| static void * | DoAllocWithArena (size_t request, LowLevelAlloc::Arena *arena) |
| static void | FreeTID (void *v) |
| static double | GetNominalCPUFrequency () |
| static int | GetNumCPUs () |
| pid_t | GetTID () |
| static std::vector< uint32_t > *tid_array | GUARDED_BY (tid_lock) |
| constexpr uintptr_t | HideMask () |
| template<class T > | |
| uintptr_t | HidePtr (T *ptr) |
| static void | InitGetTID () |
| static void | InitializeSystemInfo () |
| static int | IntLog2 (size_t size, size_t base) |
| template<typename F , typename... Args> | |
| InvokeT< F, Args... > | Invoke (F &&f, Args &&...args) |
| static void | LLA_SkiplistDelete (AllocList *head, AllocList *e, AllocList **prev) |
| static void | LLA_SkiplistInsert (AllocList *head, AllocList *e, AllocList **prev) |
| static int | LLA_SkiplistLevels (size_t size, size_t base, uint32_t *random) |
| static AllocList * | LLA_SkiplistSearch (AllocList *head, AllocList *e, AllocList **prev) |
| template<typename Callable , typename... Args> | |
| void | LowLevelCallOnce (absl::once_flag *flag, Callable &&fn, Args &&...args) |
| static uintptr_t | Magic (uintptr_t magic, AllocList::Header *ptr) |
| static AllocList * | Next (int i, AllocList *prev, LowLevelAlloc::Arena *arena) |
| double | NominalCPUFrequency () |
| int | NumCPUs () |
| static int | Random (uint32_t *state) |
| static bool | ReadLongFromFile (const char *file, long *value) |
| void | RegisterSpinLockProfiler (void(*fn)(const void *contendedlock, int64_t wait_cycles)) |
| void | RegisterSpinLockProfiler (void(*fn)(const void *lock, int64_t wait_cycles)) |
| static uintptr_t | RoundUp (uintptr_t addr, uintptr_t align) |
| void | SetCurrentThreadIdentity (ThreadIdentity *identity, ThreadIdentityReclaimerFunction reclaimer) |
| void | SpinLockDelay (std::atomic< uint32_t > *w, uint32_t value, int loop, base_internal::SchedulingMode scheduling_mode) |
| int | SpinLockSuggestedDelayNS (int loop) |
| uint32_t | SpinLockWait (std::atomic< uint32_t > *w, int n, const SpinLockWaitTransition trans[], base_internal::SchedulingMode scheduling_mode) |
| void | SpinLockWake (std::atomic< uint32_t > *w, bool all) |
| void | ThrowStdBadAlloc () |
| void | ThrowStdBadFunctionCall () |
| void | ThrowStdDomainError (const std::string &what_arg) |
| void | ThrowStdDomainError (const char *what_arg) |
| void | ThrowStdInvalidArgument (const std::string &what_arg) |
| void | ThrowStdInvalidArgument (const char *what_arg) |
| void | ThrowStdLengthError (const std::string &what_arg) |
| void | ThrowStdLengthError (const char *what_arg) |
| void | ThrowStdLogicError (const std::string &what_arg) |
| void | ThrowStdLogicError (const char *what_arg) |
| void | ThrowStdOutOfRange (const std::string &what_arg) |
| void | ThrowStdOutOfRange (const char *what_arg) |
| void | ThrowStdOverflowError (const std::string &what_arg) |
| void | ThrowStdOverflowError (const char *what_arg) |
| void | ThrowStdRangeError (const std::string &what_arg) |
| void | ThrowStdRangeError (const char *what_arg) |
| void | ThrowStdRuntimeError (const std::string &what_arg) |
| void | ThrowStdRuntimeError (const char *what_arg) |
| void | ThrowStdUnderflowError (const std::string &what_arg) |
| void | ThrowStdUnderflowError (const char *what_arg) |
| template<class T > | |
| T * | UnhidePtr (uintptr_t hidden) |
Variables | |
| static std::atomic< uint64_t > | delay_rand |
| static once_flag | init_system_info_once |
| static constexpr int | kBitsPerWord = 32 |
| static const uintptr_t | kMagicAllocated = 0x4c833e95U |
| static const uintptr_t | kMagicUnallocated = ~kMagicAllocated |
| static const int | kMaxLevel = 30 |
| static double | nominal_cpu_frequency = 1.0 |
| static int | num_cpus = 0 |
| static ABSL_CONST_INIT base_internal::AtomicHook< void(*)(const void *lock, int64_t wait_cycles)> | submit_profile_data |
| ABSL_PER_THREAD_TLS_KEYWORD ThreadIdentity * | thread_identity_ptr |
| static pthread_key_t | tid_key |
| static absl::base_internal::SpinLock | tid_lock (absl::base_internal::kLinkerInitialized) |
| static once_flag | tid_once |
| using absl::base_internal::CycleClockSourceFunc = typedef int64_t (*)( |
Definition at line 73 of file cycleclock.h.
| using absl::base_internal::InvokeT = typedef decltype(Invoker<F, Args...>::type::Invoke( std::declval<F>(), std::declval<Args>()...)) |
| using absl::base_internal::ThreadIdentityReclaimerFunction = typedef void (*)(void*) |
Definition at line 174 of file thread_identity.h.
| anonymous enum |
| Enumerator | |
|---|---|
| kOnceInit | |
| kOnceRunning | |
| kOnceWaiter | |
| kOnceDone | |
Definition at line 134 of file call_once.h.
| anonymous enum |
| Enumerator | |
|---|---|
| PROFILE_TIMESTAMP_SHIFT | |
Definition at line 195 of file spinlock.cc.
| anonymous enum |
| Enumerator | |
|---|---|
| LOCKWORD_RESERVED_SHIFT | |
Definition at line 196 of file spinlock.cc.
| Enumerator | |
|---|---|
| SCHEDULE_KERNEL_ONLY | |
| SCHEDULE_COOPERATIVE_AND_KERNEL | |
Definition at line 46 of file scheduling_mode.h.
|
static |
Definition at line 489 of file low_level_alloc.cc.
| void absl::base_internal::CallOnceImpl | ( | std::atomic< uint32_t > * | control, |
| base_internal::SchedulingMode | scheduling_mode, | ||
| Callable && | fn, | ||
| Args &&... | args | ||
| ) |
Definition at line 145 of file call_once.h.
|
inlinestatic |
Definition at line 434 of file low_level_alloc.cc.
| void absl::base_internal::ClearCurrentThreadIdentity | ( | ) |
Definition at line 110 of file thread_identity.cc.
|
static |
Definition at line 470 of file low_level_alloc.cc.
|
inline |
Definition at line 184 of file call_once.h.
| ABSL_BASE_INTERNAL_FORCEINLINE int absl::base_internal::CountLeadingZeros32 | ( | uint32_t | n | ) |
| ABSL_BASE_INTERNAL_FORCEINLINE int absl::base_internal::CountLeadingZeros32Slow | ( | uint64_t | n | ) |
| ABSL_BASE_INTERNAL_FORCEINLINE int absl::base_internal::CountLeadingZeros64 | ( | uint64_t | n | ) |
| ABSL_BASE_INTERNAL_FORCEINLINE int absl::base_internal::CountLeadingZeros64Slow | ( | uint64_t | n | ) |
| ABSL_BASE_INTERNAL_FORCEINLINE int absl::base_internal::CountTrailingZerosNonZero32 | ( | uint32_t | n | ) |
| ABSL_BASE_INTERNAL_FORCEINLINE int absl::base_internal::CountTrailingZerosNonZero32Slow | ( | uint32_t | n | ) |
| ABSL_BASE_INTERNAL_FORCEINLINE int absl::base_internal::CountTrailingZerosNonZero64 | ( | uint64_t | n | ) |
| ABSL_BASE_INTERNAL_FORCEINLINE int absl::base_internal::CountTrailingZerosNonZero64Slow | ( | uint64_t | n | ) |
| ThreadIdentity * absl::base_internal::CurrentThreadIdentityIfPresent | ( | ) |
Definition at line 122 of file thread_identity.cc.
|
static |
Definition at line 524 of file low_level_alloc.cc.
|
static |
Definition at line 340 of file sysinfo.cc.
|
static |
Definition at line 216 of file sysinfo.cc.
|
static |
Definition at line 65 of file sysinfo.cc.
| pid_t absl::base_internal::GetTID | ( | ) |
Definition at line 363 of file sysinfo.cc.
|
static |
| constexpr uintptr_t absl::base_internal::HideMask | ( | ) |
Definition at line 25 of file hide_ptr.h.
|
inline |
Definition at line 33 of file hide_ptr.h.
|
static |
Definition at line 349 of file sysinfo.cc.
|
static |
Definition at line 262 of file sysinfo.cc.
|
static |
Definition at line 109 of file low_level_alloc.cc.
| InvokeT<F, Args...> absl::base_internal::Invoke | ( | F && | f, |
| Args &&... | args | ||
| ) |
|
static |
Definition at line 184 of file low_level_alloc.cc.
|
static |
Definition at line 169 of file low_level_alloc.cc.
|
static |
Definition at line 139 of file low_level_alloc.cc.
|
static |
Definition at line 155 of file low_level_alloc.cc.
| void absl::base_internal::LowLevelCallOnce | ( | absl::once_flag * | flag, |
| Callable && | fn, | ||
| Args &&... | args | ||
| ) |
Definition at line 189 of file call_once.h.
|
inlinestatic |
Definition at line 320 of file low_level_alloc.cc.
|
static |
Definition at line 451 of file low_level_alloc.cc.
| double absl::base_internal::NominalCPUFrequency | ( | ) |
Definition at line 272 of file sysinfo.cc.
| int absl::base_internal::NumCPUs | ( | ) |
Definition at line 267 of file sysinfo.cc.
|
static |
Definition at line 121 of file low_level_alloc.cc.
|
static |
Definition at line 107 of file sysinfo.cc.
| void absl::base_internal::RegisterSpinLockProfiler | ( | void(*)(const void *contendedlock, int64_t wait_cycles) | fn | ) |
Definition at line 63 of file spinlock.cc.
| void absl::base_internal::RegisterSpinLockProfiler | ( | void(*)(const void *lock, int64_t wait_cycles) | fn | ) |
|
inlinestatic |
Definition at line 442 of file low_level_alloc.cc.
| void absl::base_internal::SetCurrentThreadIdentity | ( | ThreadIdentity * | identity, |
| ThreadIdentityReclaimerFunction | reclaimer | ||
| ) |
Definition at line 61 of file thread_identity.cc.
|
inline |
Definition at line 85 of file spinlock_wait.h.
| int absl::base_internal::SpinLockSuggestedDelayNS | ( | int | loop | ) |
Definition at line 61 of file spinlock_wait.cc.
| uint32_t absl::base_internal::SpinLockWait | ( | std::atomic< uint32_t > * | w, |
| int | n, | ||
| const SpinLockWaitTransition | trans[], | ||
| base_internal::SchedulingMode | scheduling_mode | ||
| ) |
Definition at line 38 of file spinlock_wait.cc.
|
inline |
Definition at line 80 of file spinlock_wait.h.
| void absl::base_internal::ThrowStdBadAlloc | ( | ) |
Definition at line 103 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdBadFunctionCall | ( | ) |
Definition at line 101 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdDomainError | ( | const std::string & | what_arg | ) |
Definition at line 52 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdDomainError | ( | const char * | what_arg | ) |
Definition at line 55 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdInvalidArgument | ( | const std::string & | what_arg | ) |
Definition at line 45 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdInvalidArgument | ( | const char * | what_arg | ) |
Definition at line 48 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdLengthError | ( | const std::string & | what_arg | ) |
Definition at line 59 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdLengthError | ( | const char * | what_arg | ) |
Definition at line 62 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdLogicError | ( | const std::string & | what_arg | ) |
Definition at line 39 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdLogicError | ( | const char * | what_arg | ) |
Definition at line 42 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdOutOfRange | ( | const std::string & | what_arg | ) |
Definition at line 66 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdOutOfRange | ( | const char * | what_arg | ) |
Definition at line 69 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdOverflowError | ( | const std::string & | what_arg | ) |
Definition at line 87 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdOverflowError | ( | const char * | what_arg | ) |
Definition at line 90 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdRangeError | ( | const std::string & | what_arg | ) |
Definition at line 80 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdRangeError | ( | const char * | what_arg | ) |
Definition at line 83 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdRuntimeError | ( | const std::string & | what_arg | ) |
Definition at line 73 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdRuntimeError | ( | const char * | what_arg | ) |
Definition at line 76 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdUnderflowError | ( | const std::string & | what_arg | ) |
Definition at line 94 of file throw_delegate.cc.
| void absl::base_internal::ThrowStdUnderflowError | ( | const char * | what_arg | ) |
Definition at line 97 of file throw_delegate.cc.
|
inline |
Definition at line 40 of file hide_ptr.h.
|
static |
Definition at line 58 of file spinlock_wait.cc.
|
static |
Definition at line 61 of file sysinfo.cc.
|
static |
Definition at line 337 of file sysinfo.cc.
|
static |
Definition at line 274 of file low_level_alloc.cc.
|
static |
Definition at line 275 of file low_level_alloc.cc.
|
static |
Definition at line 71 of file low_level_alloc.cc.
|
static |
Definition at line 63 of file sysinfo.cc.
|
static |
Definition at line 62 of file sysinfo.cc.
|
static |
Definition at line 61 of file spinlock.cc.
| ABSL_PER_THREAD_TLS_KEYWORD ThreadIdentity* absl::base_internal::thread_identity_ptr |
Definition at line 58 of file thread_identity.cc.
|
static |
Definition at line 329 of file sysinfo.cc.
|
static |
|
static |
Definition at line 328 of file sysinfo.cc.