This is based on the MIPS dynarec (more or less) with some ARM borrowings. Seems to be quite fast (under my testing fixed results: faster than ARM on A1 but not a lot faster than the interpreter on Android Snapdragon 845) but still some optimizations are missing at the moment. Seems to pass my testing suite and compatibility wise is very similar to arm.
48 lines
1.2 KiB
Makefile
48 lines
1.2 KiB
Makefile
LOCAL_PATH := $(call my-dir)
|
|
|
|
CORE_DIR := $(LOCAL_PATH)/..
|
|
|
|
CORE_LDLIBS :=
|
|
CPU_ARCH :=
|
|
HAVE_DYNAREC :=
|
|
|
|
COREFLAGS := -DINLINE=inline -D__LIBRETRO__ -DFRONTEND_SUPPORTS_RGB565
|
|
|
|
ifeq ($(TARGET_ARCH),arm)
|
|
COREFLAGS += -DARM_ARCH -DMMAP_JIT_CACHE
|
|
CPU_ARCH := arm
|
|
HAVE_DYNAREC := 1
|
|
else ifeq ($(TARGET_ARCH),arm64)
|
|
COREFLAGS += -DARM64_ARCH -DMMAP_JIT_CACHE
|
|
CPU_ARCH := arm64
|
|
HAVE_DYNAREC := 1
|
|
else ifeq ($(TARGET_ARCH),x86)
|
|
COREFLAGS += -DMMAP_JIT_CACHE
|
|
CPU_ARCH := x86_32
|
|
HAVE_DYNAREC := 1
|
|
else ifeq ($(TARGET_ARCH),x86_64)
|
|
COREFLAGS += -DMMAP_JIT_CACHE
|
|
CPU_ARCH := x86_32
|
|
HAVE_DYNAREC := 1
|
|
endif
|
|
|
|
ifeq ($(HAVE_DYNAREC),1)
|
|
COREFLAGS += -DHAVE_DYNAREC
|
|
endif
|
|
|
|
include $(CORE_DIR)/Makefile.common
|
|
|
|
GIT_VERSION := " $(shell git rev-parse --short HEAD || echo unknown)"
|
|
ifneq ($(GIT_VERSION)," unknown")
|
|
COREFLAGS += -DGIT_VERSION=\"$(GIT_VERSION)\"
|
|
endif
|
|
|
|
include $(CLEAR_VARS)
|
|
LOCAL_DISABLE_FATAL_LINKER_WARNINGS := true
|
|
LOCAL_MODULE := retro
|
|
LOCAL_SRC_FILES := $(SOURCES_C) $(SOURCES_ASM)
|
|
LOCAL_CFLAGS := $(COREFLAGS) $(INCFLAGS)
|
|
LOCAL_LDFLAGS := -Wl,-version-script=$(CORE_DIR)/link.T
|
|
LOCAL_LDLIBS := $(CORE_LDLIBS)
|
|
LOCAL_ARM_MODE := arm
|
|
include $(BUILD_SHARED_LIBRARY)
|