summaryrefslogtreecommitdiffstats
path: root/src/include/builtins.h
diff options
context:
space:
mode:
authorPatrick Williams <iawillia@us.ibm.com>2011-06-24 10:13:59 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2011-07-06 13:32:14 -0500
commit9ada6b493e33fe43057b03897d57f2ad931d219f (patch)
treebbf89ebdb16bf9b1fe2b466979d610835e8e58fb /src/include/builtins.h
parent6c77e26e9454c6753d989f33430c4e361f6ff003 (diff)
downloadtalos-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.h12
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);
}
/**
OpenPOWER on IntegriCloud