Added option LUA_NOBUILTIN
This option allows external code to avoid the use of gcc builtin macro
'__builtin_expect' in the Lua API.
diff --git a/luaconf.h b/luaconf.h
index 38e14ed..e64d2ee 100644
--- a/luaconf.h
+++ b/luaconf.h
@@ -663,11 +663,13 @@
/*
** macros to improve jump prediction, used mostly for error handling
-** and debug facilities.
+** and debug facilities. (Some macros in the Lua API use these macros.
+** Define LUA_NOBUILTIN if you do not want '__builtin_expect' in your
+** code.)
*/
#if !defined(luai_likely)
-#if defined(__GNUC__)
+#if defined(__GNUC__) && !defined(LUA_NOBUILTIN)
#define luai_likely(x) (__builtin_expect(((x) != 0), 1))
#define luai_unlikely(x) (__builtin_expect(((x) != 0), 0))
#else