diff options
author | Patrick Williams <iawillia@us.ibm.com> | 2011-06-24 10:13:59 -0500 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2011-07-06 13:32:14 -0500 |
commit | 9ada6b493e33fe43057b03897d57f2ad931d219f (patch) | |
tree | bbf89ebdb16bf9b1fe2b466979d610835e8e58fb /src/include/builtins.h | |
parent | 6c77e26e9454c6753d989f33430c4e361f6ff003 (diff) | |
download | talos-hostboot-9ada6b493e33fe43057b03897d57f2ad931d219f.tar.gz talos-hostboot-9ada6b493e33fe43057b03897d57f2ad931d219f.zip |
Improve assert handling and options.
- Allow a custom assert trace as an optional parameter.
- Call a trace function instead of printk for most cases.
- Provide a critical library assert (for syslibs, trace, etc.)
- Provide a kassert function for kernel code.
Change-Id: If24d57d0832a587258503b3fd0046c21da3712b5
Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/159
Tested-by: Jenkins Server
Reviewed-by: Andrew J. Geissler <andrewg@us.ibm.com>
Reviewed-by: CAMVAN T. NGUYEN <ctnguyen@us.ibm.com>
Diffstat (limited to 'src/include/builtins.h')
-rw-r--r-- | src/include/builtins.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/include/builtins.h b/src/include/builtins.h index 07b185697..54b7dc768 100644 --- a/src/include/builtins.h +++ b/src/include/builtins.h @@ -45,6 +45,16 @@ extern "C" #define PACKED __attribute__((packed)) /** + * Compiler hint for branch conditions. "condition is likely to be true" + */ +#define likely(expr) __builtin_expect((expr),1) + +/** + * Compiler hint for branch conditions. "condition is likely to be false" + */ +#define unlikely(expr) __builtin_expect((expr),0) + +/** * Get the value of the link register * * @return the value of the link register @@ -52,7 +62,7 @@ extern "C" ALWAYS_INLINE static inline void *linkRegister() { - return __builtin_return_address(1); + return __builtin_return_address(0); } /** |