diff options
| author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2021-03-09 12:50:59 -0300 |
|---|---|---|
| committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2021-03-09 12:50:59 -0300 |
| commit | a7b8b27dd39f45b9464ffc4226b0616c3ffe5ad7 (patch) | |
| tree | 46c3a143f3b703023d884e769485080862a3c27d | |
| parent | 511d53a826760dd11cd82947184583e2d094e2d2 (diff) | |
| download | lua-a7b8b27dd39f45b9464ffc4226b0616c3ffe5ad7.tar.gz lua-a7b8b27dd39f45b9464ffc4226b0616c3ffe5ad7.tar.bz2 lua-a7b8b27dd39f45b9464ffc4226b0616c3ffe5ad7.zip | |
Uses of "likely" in macros active to all users
The use of 'l_likely' in auxlib macros 'luaL_argcheck' and
'luaL_argexpected' should not be restricted to Lua's own code.
For that, 'l_likely' was renamed to 'luai_likely' to be exported
to external code.
| -rw-r--r-- | lauxlib.h | 9 | ||||
| -rw-r--r-- | luaconf.h | 18 |
2 files changed, 15 insertions, 12 deletions
| @@ -12,6 +12,7 @@ | |||
| 12 | #include <stddef.h> | 12 | #include <stddef.h> |
| 13 | #include <stdio.h> | 13 | #include <stdio.h> |
| 14 | 14 | ||
| 15 | #include "luaconf.h" | ||
| 15 | #include "lua.h" | 16 | #include "lua.h" |
| 16 | 17 | ||
| 17 | 18 | ||
| @@ -122,10 +123,6 @@ LUALIB_API void (luaL_requiref) (lua_State *L, const char *modname, | |||
| 122 | ** =============================================================== | 123 | ** =============================================================== |
| 123 | */ | 124 | */ |
| 124 | 125 | ||
| 125 | #if !defined(l_likely) | ||
| 126 | #define l_likely(x) x | ||
| 127 | #endif | ||
| 128 | |||
| 129 | 126 | ||
| 130 | #define luaL_newlibtable(L,l) \ | 127 | #define luaL_newlibtable(L,l) \ |
| 131 | lua_createtable(L, 0, sizeof(l)/sizeof((l)[0]) - 1) | 128 | lua_createtable(L, 0, sizeof(l)/sizeof((l)[0]) - 1) |
| @@ -134,10 +131,10 @@ LUALIB_API void (luaL_requiref) (lua_State *L, const char *modname, | |||
| 134 | (luaL_checkversion(L), luaL_newlibtable(L,l), luaL_setfuncs(L,l,0)) | 131 | (luaL_checkversion(L), luaL_newlibtable(L,l), luaL_setfuncs(L,l,0)) |
| 135 | 132 | ||
| 136 | #define luaL_argcheck(L, cond,arg,extramsg) \ | 133 | #define luaL_argcheck(L, cond,arg,extramsg) \ |
| 137 | ((void)(l_likely(cond) || luaL_argerror(L, (arg), (extramsg)))) | 134 | ((void)(luai_likely(cond) || luaL_argerror(L, (arg), (extramsg)))) |
| 138 | 135 | ||
| 139 | #define luaL_argexpected(L,cond,arg,tname) \ | 136 | #define luaL_argexpected(L,cond,arg,tname) \ |
| 140 | ((void)(l_likely(cond) || luaL_typeerror(L, (arg), (tname)))) | 137 | ((void)(luai_likely(cond) || luaL_typeerror(L, (arg), (tname)))) |
| 141 | 138 | ||
| 142 | #define luaL_checkstring(L,n) (luaL_checklstring(L, (n), NULL)) | 139 | #define luaL_checkstring(L,n) (luaL_checklstring(L, (n), NULL)) |
| 143 | #define luaL_optstring(L,n,d) (luaL_optlstring(L, (n), (d), NULL)) | 140 | #define luaL_optstring(L,n,d) (luaL_optlstring(L, (n), (d), NULL)) |
| @@ -665,20 +665,26 @@ | |||
| 665 | ** macros to improve jump prediction, used mostly for error handling | 665 | ** macros to improve jump prediction, used mostly for error handling |
| 666 | ** and debug facilities. | 666 | ** and debug facilities. |
| 667 | */ | 667 | */ |
| 668 | #if (defined(LUA_CORE) || defined(LUA_LIB)) && !defined(l_likely) | 668 | #if !defined(luai_likely) |
| 669 | 669 | ||
| 670 | #include <stdio.h> | ||
| 671 | #if defined(__GNUC__) | 670 | #if defined(__GNUC__) |
| 672 | #define l_likely(x) (__builtin_expect(((x) != 0), 1)) | 671 | #define luai_likely(x) (__builtin_expect(((x) != 0), 1)) |
| 673 | #define l_unlikely(x) (__builtin_expect(((x) != 0), 0)) | 672 | #define luai_unlikely(x) (__builtin_expect(((x) != 0), 0)) |
| 674 | #else | 673 | #else |
| 675 | #define l_likely(x) (x) | 674 | #define luai_likely(x) (x) |
| 676 | #define l_unlikely(x) (x) | 675 | #define luai_unlikely(x) (x) |
| 677 | #endif | 676 | #endif |
| 678 | 677 | ||
| 679 | #endif | 678 | #endif |
| 680 | 679 | ||
| 681 | 680 | ||
| 681 | #if defined(LUA_CORE) || defined(LUA_LIB) | ||
| 682 | /* shorter names for Lua's own use */ | ||
| 683 | #define l_likely(x) luai_likely(x) | ||
| 684 | #define l_unlikely(x) luai_unlikely(x) | ||
| 685 | #endif | ||
| 686 | |||
| 687 | |||
| 682 | 688 | ||
| 683 | /* }================================================================== */ | 689 | /* }================================================================== */ |
| 684 | 690 | ||
