• Home
  • Raw
  • Download

Lines Matching refs:class_id

30 ALWAYS_INLINE void SetShadow(uptr ptr, uptr size, uptr class_id, u64 magic) {  in SetShadow()  argument
33 if (class_id <= 6) { in SetShadow()
34 for (uptr i = 0; i < (((uptr)1) << class_id); i++) { in SetShadow()
70 for (uptr class_id = 0; class_id < kNumberOfSizeClasses; class_id++) in Destroy() local
71 str.append("%zd: %zd/%zd; ", class_id, hint_position_[class_id], in Destroy()
72 NumberOfFrames(stack_size_log(), class_id)); in Destroy()
88 FakeFrame *FakeStack::Allocate(uptr stack_size_log, uptr class_id, in Allocate() argument
90 CHECK_LT(class_id, kNumberOfSizeClasses); in Allocate()
93 uptr &hint_position = hint_position_[class_id]; in Allocate()
94 const int num_iter = NumberOfFrames(stack_size_log, class_id); in Allocate()
95 u8 *flags = GetFlags(stack_size_log, class_id); in Allocate()
97 uptr pos = ModuloNumberOfFrames(stack_size_log, class_id, hint_position++); in Allocate()
108 GetFrame(stack_size_log, class_id, pos)); in Allocate()
110 *SavedFlagPtr(reinterpret_cast<uptr>(res), class_id) = &flags[pos]; in Allocate()
121 uptr class_id = (ptr - beg) >> stack_size_log; in AddrIsInFakeStack() local
122 uptr base = beg + (class_id << stack_size_log); in AddrIsInFakeStack()
125 uptr pos = (ptr - base) >> (kMinStackFrameSizeLog + class_id); in AddrIsInFakeStack()
126 uptr res = base + pos * BytesInSizeClass(class_id); in AddrIsInFakeStack()
127 *frame_end = res + BytesInSizeClass(class_id); in AddrIsInFakeStack()
144 for (uptr class_id = 0; class_id < kNumberOfSizeClasses; class_id++) { in GC() local
145 u8 *flags = GetFlags(stack_size_log(), class_id); in GC()
146 for (uptr i = 0, n = NumberOfFrames(stack_size_log(), class_id); i < n; in GC()
150 GetFrame(stack_size_log(), class_id, i)); in GC()
161 for (uptr class_id = 0; class_id < kNumberOfSizeClasses; class_id++) { in ForEachFakeFrame() local
162 u8 *flags = GetFlags(stack_size_log(), class_id); in ForEachFakeFrame()
163 for (uptr i = 0, n = NumberOfFrames(stack_size_log(), class_id); i < n; in ForEachFakeFrame()
167 GetFrame(stack_size_log(), class_id, i)); in ForEachFakeFrame()
169 callback(begin, begin + FakeStack::BytesInSizeClass(class_id), arg); in ForEachFakeFrame()
202 ALWAYS_INLINE uptr OnMalloc(uptr class_id, uptr size) { in OnMalloc() argument
207 FakeFrame *ff = fs->Allocate(fs->stack_size_log(), class_id, real_stack); in OnMalloc()
210 SetShadow(ptr, size, class_id, 0); in OnMalloc()
214 ALWAYS_INLINE void OnFree(uptr ptr, uptr class_id, uptr size) { in OnFree() argument
215 FakeStack::Deallocate(ptr, class_id); in OnFree()
216 SetShadow(ptr, size, class_id, kMagic8); in OnFree()
223 #define DEFINE_STACK_MALLOC_FREE_WITH_CLASS_ID(class_id) \ argument
225 __asan_stack_malloc_##class_id(uptr size) { \
226 return OnMalloc(class_id, size); \
228 extern "C" SANITIZER_INTERFACE_ATTRIBUTE void __asan_stack_free_##class_id( \
230 OnFree(ptr, class_id, size); \