|
| #define | PBL_ALWAYS_INLINE PBL_ALWAYS_INLINE_IMPL |
| | Inline the function at every call site.
|
| |
| #define | PBL_NOINLINE PBL_NOINLINE_IMPL |
| | Never inline the function.
|
| |
| #define | PBL_NORETURN PBL_NORETURN_IMPL |
| | The function does not return.
|
| |
| #define | PBL_NAKED PBL_NAKED_IMPL |
| | The function has no prologue/epilogue; its body must be pure assembly.
|
| |
| #define | PBL_DEPRECATED PBL_DEPRECATED_IMPL |
| | Warn on every use of the symbol.
|
| |
| #define | PBL_CONST_FUNC PBL_CONST_FUNC_IMPL |
| | The function's result depends only on its arguments and it has no side effects.
|
| |
| #define | PBL_PURE_FUNC PBL_PURE_FUNC_IMPL |
| | Like PBL_CONST_FUNC, but the function may also read global memory.
|
| |
| #define | PBL_OPTIMIZE(level) PBL_OPTIMIZE_IMPL(level) |
| | Compile the function at the given optimization level, where supported.
|
| |
| #define | PBL_FORMAT_PRINTF(fmt, va) PBL_FORMAT_PRINTF_IMPL(fmt, va) |
| | Check printf-style arguments.
|
| |
| #define | PBL_CLEANUP(func) PBL_CLEANUP_IMPL(func) |
| | Call a function with a pointer to the variable when it goes out of scope.
|
| |
| #define | PBL_PACKED PBL_PACKED_IMPL |
| | Lay out the struct/union without padding.
|
| |
| #define | PBL_ALIGNED(bytes) PBL_ALIGNED_IMPL(bytes) |
| | Align the symbol or type.
|
| |
| #define | PBL_USED PBL_USED_IMPL |
| | Keep the symbol even if it appears unreferenced.
|
| |
| #define | PBL_UNUSED PBL_UNUSED_IMPL |
| | Do not warn if the symbol is unreferenced.
|
| |
| #define | PBL_WEAK PBL_WEAK_IMPL |
| | Emit a weak symbol, overridable by a strong definition elsewhere.
|
| |
| #define | PBL_ALIAS(sym) PBL_ALIAS_IMPL(sym) |
| | Make the symbol an alias of another one.
|
| |
| #define | PBL_EXTERNALLY_VISIBLE PBL_EXTERNALLY_VISIBLE_IMPL |
| | Keep the symbol visible to code outside the compilation unit under LTO/whole-program builds.
|
| |
| #define | PBL_NOCOMMON PBL_NOCOMMON_IMPL |
| | Emit the definition as a strong symbol instead of a common one.
|
| |
| #define | PBL_SECTION(name) PBL_SECTION_IMPL(name) |
| | Place the symbol in a linker section.
|
| |
| #define | PBL_LIKELY(x) PBL_LIKELY_IMPL(x) |
| | Branch prediction hint for a condition that is likely to hold.
|
| |
| #define | PBL_UNLIKELY(x) PBL_UNLIKELY_IMPL(x) |
| | Branch prediction hint for a condition that is unlikely to hold.
|
| |
| #define | PBL_UNREACHABLE() PBL_UNREACHABLE_IMPL() |
| | Mark a code path the compiler may assume is never reached.
|
| |
| #define | PBL_RETURN_ADDRESS(level) PBL_RETURN_ADDRESS_IMPL(level) |
| | Return address of the current function or of its callers.
|
| |
| #define | PBL_TYPES_COMPATIBLE(a, b) PBL_TYPES_COMPATIBLE_IMPL(a, b) |
| | Constant expression: 1 if the two types are compatible, else 0.
|
| |
| #define | PBL_CHOOSE_EXPR(cond, a, b) PBL_CHOOSE_EXPR_IMPL(cond, a, b) |
| | Pick an expression from a constant condition without type-converting the other.
|
| |
| #define | PBL_CLZ(x) PBL_CLZ_IMPL(x) |
| | Count leading zero bits.
|
| |
| #define | PBL_POPCOUNT(x) PBL_POPCOUNT_IMPL(x) |
| | Count set bits.
|
| |
| #define | PBL_NO_SANITIZE_ADDRESS PBL_NO_SANITIZE_ADDRESS_IMPL |
| | Keep AddressSanitizer off the object: no redzones around a global, e.g.
|
| |
| #define | PBL_ADD_OVERFLOW(a, b, r) PBL_ADD_OVERFLOW_IMPL(a, b, r) |
| | Add, detecting overflow.
|
| |
| #define | PBL_MUL_OVERFLOW(a, b, r) PBL_MUL_OVERFLOW_IMPL(a, b, r) |
| | Multiply, detecting overflow.
|
| |
| #define | PBL_BSWAP16(x) PBL_BSWAP16_IMPL(x) |
| | Reverse the bytes of a 16-bit value.
|
| |
| #define | PBL_BSWAP32(x) PBL_BSWAP32_IMPL(x) |
| | Reverse the bytes of a 32-bit value.
|
| |