Browse Source

Add shorter defines for endianess checks.

Mike Pall 14 years ago
parent
commit
2033d6310b
2 changed files with 6 additions and 5 deletions
  1. 4 3
      src/lj_arch.h
  2. 2 2
      src/lj_str.c

+ 4 - 3
src/lj_arch.h

@@ -96,7 +96,6 @@
 #define LJ_ARCH_NAME		"x86"
 #define LJ_ARCH_BITS		32
 #define LJ_ARCH_ENDIAN		LUAJIT_LE
-#define LJ_ARCH_BITENDIAN	LUAJIT_LE
 #define LJ_ARCH_HASFPU		1
 #define LJ_ABI_WIN		LJ_TARGET_WINDOWS
 #define LJ_TARGET_X86		1
@@ -110,7 +109,6 @@
 #define LJ_ARCH_NAME		"x64"
 #define LJ_ARCH_BITS		64
 #define LJ_ARCH_ENDIAN		LUAJIT_LE
-#define LJ_ARCH_BITENDIAN	LUAJIT_LE
 #define LJ_ARCH_HASFPU		1
 #define LJ_ABI_WIN		LJ_TARGET_WINDOWS
 #define LJ_TARGET_X64		1
@@ -128,7 +126,6 @@
 #define LJ_ARCH_NAME		"ppcspe"
 #define LJ_ARCH_BITS		32
 #define LJ_ARCH_ENDIAN		LUAJIT_BE
-#define LJ_ARCH_BITENDIAN	LUAJIT_BE
 #define LJ_ARCH_HASFPU		1
 #define LJ_ABI_SOFTFP		1
 #define LJ_ABI_EABI		1
@@ -187,9 +184,13 @@
 #endif
 
 #if LJ_ARCH_ENDIAN == LUAJIT_BE
+#define LJ_LE			0
+#define LJ_BE			1
 #define LJ_ENDIAN_SELECT(le, be)	be
 #define LJ_ENDIAN_LOHI(lo, hi)		hi lo
 #else
+#define LJ_LE			1
+#define LJ_BE			0
 #define LJ_ENDIAN_SELECT(le, be)	le
 #define LJ_ENDIAN_LOHI(lo, hi)		lo hi
 #endif

+ 2 - 2
src/lj_str.c

@@ -29,7 +29,7 @@ int32_t LJ_FASTCALL lj_str_cmp(GCstr *a, GCstr *b)
     uint32_t va = *(const uint32_t *)(strdata(a)+i);
     uint32_t vb = *(const uint32_t *)(strdata(b)+i);
     if (va != vb) {
-#if LJ_ARCH_ENDIAN == LUAJIT_LE
+#if LJ_LE
       va = lj_bswap(va); vb = lj_bswap(vb);
 #endif
       i -= n;
@@ -53,7 +53,7 @@ static LJ_AINLINE int str_fastcmp(const char *a, const char *b, MSize len)
     uint32_t v = *(const uint32_t *)(a+i) ^ *(const uint32_t *)(b+i);
     if (v) {
       i -= len;
-#if LJ_ARCH_ENDIAN == LUAJIT_LE
+#if LJ_LE
       return (int32_t)i >= -3 ? (v << (32+(i<<3))) : 1;
 #else
       return (int32_t)i >= -3 ? (v >> (32+(i<<3))) : 1;