diff options
author | Gustavo Serra Scalet <gustavo.scalet@eldorado.org.br> | 2016-04-11 20:05:29 +0300 |
---|---|---|
committer | Gustavo Serra Scalet <gustavo.scalet@eldorado.org.br> | 2016-04-11 20:05:29 +0300 |
commit | 3d39c014049601c9f1917ff08d66e1a1aaf899be (patch) | |
tree | d23f5b028e3137dc2f103d8d663e80c7966b0743 | |
parent | 44672a3a7bdfc81980abfc95160fb396ca6eb2cd (diff) |
Port to PPC64el
A LuaJIT port to PPC64 is available on this official PR:
https://github.com/LuaJIT/LuaJIT/pull/54
It compiles, but I can't test as well as I can't in X64... well, let's
see afterwards.
-rw-r--r-- | ffi.c | 8 | ||||
-rw-r--r-- | ffi.h | 2 | ||||
-rw-r--r-- | parser.c | 2 |
3 files changed, 8 insertions, 4 deletions
@@ -3388,21 +3388,21 @@ static int setup_upvals(lua_State* L) #if defined ARCH_X86 || defined ARCH_ARM lua_pushboolean(L, 1); lua_setfield(L, -2, "32bit"); -#elif defined ARCH_X64 +#elif defined ARCH_X64 || defined ARCH_PPC64 lua_pushboolean(L, 1); lua_setfield(L, -2, "64bit"); #else #error #endif -#if defined ARCH_X86 || defined ARCH_X64 || defined ARCH_ARM +#if defined ARCH_X86 || defined ARCH_X64 || defined ARCH_ARM || defined ARCH_PPC64 lua_pushboolean(L, 1); lua_setfield(L, -2, "le"); #else #error #endif -#if defined ARCH_X86 || defined ARCH_X64 +#if defined ARCH_X86 || defined ARCH_X64 || defined ARCH_PPC64 lua_pushboolean(L, 1); lua_setfield(L, -2, "fpu"); #elif defined ARCH_ARM @@ -3449,6 +3449,8 @@ static int setup_upvals(lua_State* L) lua_pushliteral(L, "x64"); #elif defined ARCH_ARM lua_pushliteral(L, "arm"); +#elif defined ARCH_PPC64 + lua_pushliteral(L, "ppc64"); #else # error #endif @@ -133,6 +133,8 @@ static void (lua_remove)(lua_State *L, int idx) { # define ARCH_X64 #elif defined __arm__ || defined __ARM__ || defined ARM || defined __ARM || defined __arm # define ARCH_ARM +#elif defined __powerpc64__ +# define ARCH_PPC64 #else # error #endif @@ -1122,7 +1122,7 @@ static int parse_attribute(lua_State* L, struct parser* P, struct token* tok, st ct->align_mask = ALIGNOF(a32); } else if (IS_LITERAL(*tok, "DI") || IS_LITERAL(*tok, "__DI__") -#if defined ARCH_X64 +#if defined ARCH_X64 || defined ARCH_PPC64 || IS_LITERAL(*tok, "word") || IS_LITERAL(*tok, "__word__") || IS_LITERAL(*tok, "pointer") || IS_LITERAL(*tok, "__pointer__") #endif |