allow new dynarec can be built for Windows ARM

This commit is contained in:
GH Cao
2020-04-04 20:12:22 +08:00
parent 9ed018eb96
commit 75ca50ce17
7 changed files with 11 additions and 12 deletions

View File

@@ -112,7 +112,7 @@ uint8_t *codeblock_allocator_get_ptr(mem_block_t *block)
void codegen_allocator_clean_blocks(struct mem_block_t *block)
{
#if defined __ARM_EABI__ || defined __aarch64__
#if defined __ARM_EABI__ || defined _ARM_ || defined __aarch64__
while (1)
{
__clear_cache(&mem_block_alloc[block->offset], &mem_block_alloc[block->offset + MEM_BLOCK_SIZE]);

View File

@@ -13,7 +13,7 @@
Due to the chaining, the total memory size is limited by the range of a jump
instruction. ARMv7 is restricted to +/- 32 MB, ARMv8 to +/- 128 MB, x86 to
+/- 2GB. As a result, total memory size is limited to 32 MB on ARMv7*/
#ifdef __ARM_EABI__
#if defined __ARM_EABI__ || _ARM_
#define MEM_BLOCK_NR 32768
#else
#define MEM_BLOCK_NR 131072

View File

@@ -5,7 +5,7 @@
#include "codegen_backend_x86-64.h"
#elif defined i386 || defined __i386 || defined __i386__ || defined _X86_ || defined _M_IX86
#include "codegen_backend_x86.h"
#elif defined __ARM_EABI__
#elif defined __ARM_EABI__ || defined _ARM_
#include "codegen_backend_arm.h"
#elif defined __aarch64__
#include "codegen_backend_arm64.h"

View File

@@ -1,4 +1,4 @@
#ifdef __ARM_EABI__
#if defined __ARM_EABI__ || defined _ARM_
#include <stdint.h>
#include <stdlib.h>

View File

@@ -1,4 +1,4 @@
#ifdef __ARM_EABI__
#if defined __ARM_EABI__ || defined _ARM_
#include <stdint.h>
#include <86box/86box.h>

View File

@@ -1,4 +1,4 @@
#ifdef __ARM_EABI__
#if defined __ARM_EABI__ || defined _ARM_
#include <math.h>
#include <stdint.h>

View File

@@ -215,12 +215,6 @@ MUNT := y
endif
ifndef DYNAREC
DYNAREC := y
ifeq ($(ARM), y)
DYNAREC := n
endif
ifeq ($(ARM64), y)
DYNAREC := n
endif
endif
ifndef DISCORD
DISCORD := y
@@ -374,6 +368,11 @@ ifeq ($(DYNAREC), y)
ifeq ($(X64), y)
PLATCG := codegen_backend_x86-64.o codegen_backend_x86-64_ops.o codegen_backend_x86-64_ops_sse.o \
codegen_backend_x86-64_uops.o
else ifeq ($(ARM64), y)
PLATCG := codegen_backend_arm64.o codegen_backend_arm64_ops.o codegen_backend_arm64_uops.o \
codegen_backend_arm64_imm.o
else ifeq ($(ARM), y)
PLATCG := codegen_backend_arm.o codegen_backend_arm_ops.o codegen_backend_arm_uops.o
else
PLATCG := codegen_backend_x86.o codegen_backend_x86_ops.o codegen_backend_x86_ops_fpu.o codegen_backend_x86_ops_sse.o \
codegen_backend_x86_uops.o