Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bc5a32e2 authored by Andreas Gampe's avatar Andreas Gampe
Browse files

Base: add more thread annotations

These are taken from ART and wrap more attributes.

Test: m
Change-Id: I545fc9ab88cf9d2db4de2cb8893e2a35f6365f51
parent a7c4424e
Loading
Loading
Loading
Loading
+24 −0
Original line number Diff line number Diff line
@@ -29,6 +29,9 @@
#define SCOPED_CAPABILITY \
      THREAD_ANNOTATION_ATTRIBUTE__(scoped_lockable)

#define SHARED_CAPABILITY(...) \
      THREAD_ANNOTATION_ATTRIBUTE__(shared_capability(__VA_ARGS__))

#define GUARDED_BY(x) \
      THREAD_ANNOTATION_ATTRIBUTE__(guarded_by(x))

@@ -77,6 +80,27 @@
#define RETURN_CAPABILITY(x) \
      THREAD_ANNOTATION_ATTRIBUTE__(lock_returned(x))

#define EXCLUSIVE_LOCK_FUNCTION(...) \
      THREAD_ANNOTATION_ATTRIBUTE__(exclusive_lock_function(__VA_ARGS__))

#define EXCLUSIVE_TRYLOCK_FUNCTION(...) \
      THREAD_ANNOTATION_ATTRIBUTE__(exclusive_trylock_function(__VA_ARGS__))

#define SHARED_LOCK_FUNCTION(...) \
      THREAD_ANNOTATION_ATTRIBUTE__(shared_lock_function(__VA_ARGS__))

#define SHARED_TRYLOCK_FUNCTION(...) \
      THREAD_ANNOTATION_ATTRIBUTE__(shared_trylock_function(__VA_ARGS__))

#define UNLOCK_FUNCTION(...) \
      THREAD_ANNOTATION_ATTRIBUTE__(unlock_function(__VA_ARGS__))

#define SCOPED_LOCKABLE \
      THREAD_ANNOTATION_ATTRIBUTE__(scoped_lockable)

#define LOCK_RETURNED(x) \
      THREAD_ANNOTATION_ATTRIBUTE__(lock_returned(x))

#define NO_THREAD_SAFETY_ANALYSIS \
      THREAD_ANNOTATION_ATTRIBUTE__(no_thread_safety_analysis)