ARM alignment warnings fixed
authorFerry Huberts <ferry.huberts@pelagic.nl>
Fri, 26 Oct 2012 08:25:52 +0000 (10:25 +0200)
committerFerry Huberts <ferry.huberts@pelagic.nl>
Fri, 26 Oct 2012 11:06:46 +0000 (13:06 +0200)
from: d1656d8112d5605cd709c211960ab71b34a49bed

lib/tas/src/lua/ldo.h
lib/tas/src/lua/llimits.h
lib/tas/src/lua/lobject.h
lib/tas/src/lua/lstate.c
lib/tas/src/lua/lstate.h

index 3cb3b8a..39f7cab 100644 (file)
@@ -12,6 +12,7 @@
 #include "lstate.h"
 #include "lzio.h"
 
+#include "defs.h" /* ARM_NOWARN_ALIGN */
 
 /*
 ** macro to control inclusion of some hard tests on stack reallocation
 #define incr_top(L) {luaD_checkstack(L,1); L->top++;}
 
 #define savestack(L,p)         ((char *)(p) - (char *)L->stack)
-#define restorestack(L,n)      ((TObject *)((char *)L->stack + (n)))
+#define restorestack(L,n)      ((TObject *)(ARM_NOWARN_ALIGN)((char *)L->stack + (n)))
 
 #define saveci(L,p)            ((char *)(p) - (char *)L->base_ci)
-#define restoreci(L,n)         ((CallInfo *)((char *)L->base_ci + (n)))
+#define restoreci(L,n)         ((CallInfo *)(ARM_NOWARN_ALIGN)((char *)L->base_ci + (n)))
 
 
 /* type of protected functions, to be ran by `runprotected' */
index 0f94937..fd24a4f 100644 (file)
@@ -13,6 +13,7 @@
 
 
 #include "lua.h"
+#include "defs.h" /* ARM_NOWARN_ALIGN */
 
 
 /*
@@ -108,6 +109,9 @@ typedef LUA_UACNUMBER l_uacNumber;
 #define cast(t, exp)   ((t)(exp))
 #endif
 
+#ifndef cast_align
+#define cast_align(t, exp)     ((t)(ARM_NOWARN_ALIGN)(exp))
+#endif
 
 
 /*
index 321a7e0..f9428b4 100644 (file)
@@ -126,7 +126,7 @@ typedef struct lua_TObject {
 
 #define sethvalue(obj,x) \
   { TObject *i_o=(obj); i_o->tt=LUA_TTABLE; \
-    i_o->value.gc=cast(GCObject *, (x)); \
+    i_o->value.gc=cast_align(GCObject *, (x)); \
     lua_assert(i_o->value.gc->gch.tt == LUA_TTABLE); }
 
 #define setnilvalue(obj) ((obj)->tt=LUA_TNIL)
index b593658..f71f2fd 100644 (file)
@@ -50,7 +50,7 @@ static lua_State *mallocstate (lua_State *L) {
   if (block == NULL) return NULL;
   else {
     block += EXTRASPACE;
-    return cast(lua_State *, block);
+    return cast_align(lua_State *, block);
   }
 }
 
index 5422f1b..11b9192 100644 (file)
@@ -185,7 +185,7 @@ union GCObject {
 #define gcototh(o)     check_exp((o)->gch.tt == LUA_TTHREAD, &((o)->th))
 
 /* macro to convert any value into a GCObject */
-#define valtogco(v)    (cast(GCObject *, (v)))
+#define valtogco(v)    (cast_align(GCObject *, (v)))
 
 
 lua_State *luaE_newthread (lua_State *L);