diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/Makefile | 2 | ||||
| -rw-r--r-- | src/lj_arch.h | 22 |
2 files changed, 16 insertions, 8 deletions
diff --git a/src/Makefile b/src/Makefile index dad90138..a83b8629 100644 --- a/src/Makefile +++ b/src/Makefile | |||
| @@ -232,7 +232,7 @@ TARGET_ALDFLAGS= $(LDOPTIONS) $(TARGET_XLDFLAGS) $(TARGET_FLAGS) $(TARGET_LDFLAG | |||
| 232 | TARGET_ASHLDFLAGS= $(LDOPTIONS) $(TARGET_XSHLDFLAGS) $(TARGET_FLAGS) $(TARGET_SHLDFLAGS) | 232 | TARGET_ASHLDFLAGS= $(LDOPTIONS) $(TARGET_XSHLDFLAGS) $(TARGET_FLAGS) $(TARGET_SHLDFLAGS) |
| 233 | TARGET_ALIBS= $(TARGET_XLIBS) $(LIBS) $(TARGET_LIBS) | 233 | TARGET_ALIBS= $(TARGET_XLIBS) $(LIBS) $(TARGET_LIBS) |
| 234 | 234 | ||
| 235 | TARGET_TESTARCH=$(shell $(TARGET_CC) $(TARGET_TCFLAGS) -E lj_arch.h -dM) | 235 | TARGET_TESTARCH:=$(shell $(TARGET_CC) $(TARGET_TCFLAGS) -E lj_arch.h -dM) |
| 236 | ifneq (,$(findstring LJ_TARGET_X64 ,$(TARGET_TESTARCH))) | 236 | ifneq (,$(findstring LJ_TARGET_X64 ,$(TARGET_TESTARCH))) |
| 237 | TARGET_LJARCH= x64 | 237 | TARGET_LJARCH= x64 |
| 238 | else | 238 | else |
diff --git a/src/lj_arch.h b/src/lj_arch.h index da53b162..e77865d9 100644 --- a/src/lj_arch.h +++ b/src/lj_arch.h | |||
| @@ -52,7 +52,7 @@ | |||
| 52 | #elif defined(__mips__) || defined(__mips) || defined(__MIPS__) || defined(__MIPS) | 52 | #elif defined(__mips__) || defined(__mips) || defined(__MIPS__) || defined(__MIPS) |
| 53 | #define LUAJIT_TARGET LUAJIT_ARCH_MIPS | 53 | #define LUAJIT_TARGET LUAJIT_ARCH_MIPS |
| 54 | #else | 54 | #else |
| 55 | #error "No support for this architecture (yet)" | 55 | #error "Architecture not supported (in this version), see: https://luajit.org/status.html#architectures" |
| 56 | #endif | 56 | #endif |
| 57 | 57 | ||
| 58 | #endif | 58 | #endif |
| @@ -188,13 +188,13 @@ | |||
| 188 | #define LJ_TARGET_UNIFYROT 2 /* Want only IR_BROR. */ | 188 | #define LJ_TARGET_UNIFYROT 2 /* Want only IR_BROR. */ |
| 189 | #define LJ_ARCH_NUMMODE LJ_NUMMODE_DUAL | 189 | #define LJ_ARCH_NUMMODE LJ_NUMMODE_DUAL |
| 190 | 190 | ||
| 191 | #if __ARM_ARCH____ARM_ARCH_8__ || __ARM_ARCH_8A__ | 191 | #if __ARM_ARCH >= 8 || __ARM_ARCH_8__ || __ARM_ARCH_8A__ |
| 192 | #define LJ_ARCH_VERSION 80 | 192 | #define LJ_ARCH_VERSION 80 |
| 193 | #elif __ARM_ARCH_7__ || __ARM_ARCH_7A__ || __ARM_ARCH_7R__ || __ARM_ARCH_7S__ || __ARM_ARCH_7VE__ | 193 | #elif __ARM_ARCH == 7 || __ARM_ARCH_7__ || __ARM_ARCH_7A__ || __ARM_ARCH_7R__ || __ARM_ARCH_7S__ || __ARM_ARCH_7VE__ |
| 194 | #define LJ_ARCH_VERSION 70 | 194 | #define LJ_ARCH_VERSION 70 |
| 195 | #elif __ARM_ARCH_6T2__ | 195 | #elif __ARM_ARCH_6T2__ |
| 196 | #define LJ_ARCH_VERSION 61 | 196 | #define LJ_ARCH_VERSION 61 |
| 197 | #elif __ARM_ARCH_6__ || __ARM_ARCH_6J__ || __ARM_ARCH_6K__ || __ARM_ARCH_6Z__ || __ARM_ARCH_6ZK__ | 197 | #elif __ARM_ARCH == 6 || __ARM_ARCH_6__ || __ARM_ARCH_6J__ || __ARM_ARCH_6K__ || __ARM_ARCH_6Z__ || __ARM_ARCH_6ZK__ |
| 198 | #define LJ_ARCH_VERSION 60 | 198 | #define LJ_ARCH_VERSION 60 |
| 199 | #else | 199 | #else |
| 200 | #define LJ_ARCH_VERSION 50 | 200 | #define LJ_ARCH_VERSION 50 |
| @@ -328,29 +328,37 @@ | |||
| 328 | #elif LJ_TARGET_ARM | 328 | #elif LJ_TARGET_ARM |
| 329 | #if defined(__ARMEB__) | 329 | #if defined(__ARMEB__) |
| 330 | #error "No support for big-endian ARM" | 330 | #error "No support for big-endian ARM" |
| 331 | #undef LJ_TARGET_ARM | ||
| 331 | #endif | 332 | #endif |
| 332 | #if __ARM_ARCH_6M__ || __ARM_ARCH_7M__ || __ARM_ARCH_7EM__ | 333 | #if __ARM_ARCH_6M__ || __ARM_ARCH_7M__ || __ARM_ARCH_7EM__ |
| 333 | #error "No support for Cortex-M CPUs" | 334 | #error "No support for Cortex-M CPUs" |
| 335 | #undef LJ_TARGET_ARM | ||
| 334 | #endif | 336 | #endif |
| 335 | #if !(__ARM_EABI__ || LJ_TARGET_IOS) | 337 | #if !(__ARM_EABI__ || LJ_TARGET_IOS) |
| 336 | #error "Only ARM EABI or iOS 3.0+ ABI is supported" | 338 | #error "Only ARM EABI or iOS 3.0+ ABI is supported" |
| 339 | #undef LJ_TARGET_ARM | ||
| 337 | #endif | 340 | #endif |
| 338 | #elif LJ_TARGET_PPC || LJ_TARGET_PPCSPE | 341 | #elif LJ_TARGET_PPC || LJ_TARGET_PPCSPE |
| 339 | #if defined(_SOFT_FLOAT) || defined(_SOFT_DOUBLE) | 342 | #if defined(_SOFT_FLOAT) || defined(_SOFT_DOUBLE) |
| 340 | #error "No support for PowerPC CPUs without double-precision FPU" | 343 | #error "No support for PowerPC CPUs without double-precision FPU, use LuaJIT v2.1" |
| 344 | #undef LJ_TARGET_PPC | ||
| 341 | #endif | 345 | #endif |
| 342 | #if defined(_LITTLE_ENDIAN) && (!defined(_BYTE_ORDER) || (_BYTE_ORDER == _LITTLE_ENDIAN)) | 346 | #if defined(_LITTLE_ENDIAN) && (!defined(_BYTE_ORDER) || (_BYTE_ORDER == _LITTLE_ENDIAN)) |
| 343 | #error "No support for little-endian PowerPC" | 347 | #error "No support for little-endian PowerPC" |
| 348 | #undef LJ_TARGET_PPC | ||
| 344 | #endif | 349 | #endif |
| 345 | #if defined(_LP64) | 350 | #if defined(_LP64) |
| 346 | #error "No support for PowerPC 64 bit mode" | 351 | #error "No support for PowerPC 64 bit mode" |
| 352 | #undef LJ_TARGET_PPC | ||
| 347 | #endif | 353 | #endif |
| 348 | #elif LJ_TARGET_MIPS | 354 | #elif LJ_TARGET_MIPS |
| 349 | #if defined(__mips_soft_float) | 355 | #if defined(__mips_soft_float) |
| 350 | #error "No support for MIPS CPUs without FPU" | 356 | #error "No support for MIPS CPUs without FPU, use LuaJIT v2.1+" |
| 357 | #undef LJ_TARGET_MIPS | ||
| 351 | #endif | 358 | #endif |
| 352 | #if defined(_LP64) | 359 | #if defined(_LP64) |
| 353 | #error "No support for MIPS64" | 360 | #error "No support for MIPS64, use LuaJIT v2.1+" |
| 361 | #undef LJ_TARGET_MIPS | ||
| 354 | #endif | 362 | #endif |
| 355 | #endif | 363 | #endif |
| 356 | #endif | 364 | #endif |
