mirror of
https://github.com/sockspls/badfish
synced 2025-06-28 00:19:50 +00:00
Add RISC-V 64-bit support
adds a riscv64 target architecture to the Makefile to support RISC-V 64-bit. Compiled and tested on VisionFive 2 board. closes https://github.com/official-stockfish/Stockfish/pull/4205 No functional change.
This commit is contained in:
parent
804394b939
commit
5604b255e6
2 changed files with 16 additions and 4 deletions
1
AUTHORS
1
AUTHORS
|
@ -43,6 +43,7 @@ Bryan Cross (crossbr)
|
|||
candirufish
|
||||
Chess13234
|
||||
Chris Cain (ceebo)
|
||||
clefrks
|
||||
Dale Weiler (graphitemaster)
|
||||
Dan Schmidt (dfannius)
|
||||
Daniel Axtens (daxtens)
|
||||
|
|
19
src/Makefile
19
src/Makefile
|
@ -116,7 +116,7 @@ ifeq ($(ARCH), $(filter $(ARCH), \
|
|||
x86-64-vnni512 x86-64-vnni256 x86-64-avx512 x86-64-avxvnni x86-64-bmi2 \
|
||||
x86-64-avx2 x86-64-sse41-popcnt x86-64-modern x86-64-ssse3 x86-64-sse3-popcnt \
|
||||
x86-64 x86-32-sse41-popcnt x86-32-sse2 x86-32 ppc-64 ppc-32 e2k \
|
||||
armv7 armv7-neon armv8 apple-silicon general-64 general-32))
|
||||
armv7 armv7-neon armv8 apple-silicon general-64 general-32 riscv64))
|
||||
SUPPORTED_ARCH=true
|
||||
else
|
||||
SUPPORTED_ARCH=false
|
||||
|
@ -338,7 +338,11 @@ ifeq ($(findstring e2k,$(ARCH)),e2k)
|
|||
popcnt = yes
|
||||
endif
|
||||
|
||||
ifeq ($(ARCH),riscv64)
|
||||
arch = riscv64
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
### ==========================================================================
|
||||
### Section 3. Low-level Configuration
|
||||
|
@ -364,11 +368,14 @@ ifeq ($(COMP),gcc)
|
|||
CXX=g++
|
||||
CXXFLAGS += -pedantic -Wextra -Wshadow
|
||||
|
||||
ifeq ($(arch),$(filter $(arch),armv7 armv8))
|
||||
ifeq ($(arch),$(filter $(arch),armv7 armv8 riscv64))
|
||||
ifeq ($(OS),Android)
|
||||
CXXFLAGS += -m$(bits)
|
||||
LDFLAGS += -m$(bits)
|
||||
endif
|
||||
ifeq ($(ARCH),riscv64)
|
||||
CXXFLAGS += -latomic
|
||||
endif
|
||||
else
|
||||
CXXFLAGS += -m$(bits)
|
||||
LDFLAGS += -m$(bits)
|
||||
|
@ -429,11 +436,14 @@ ifeq ($(COMP),clang)
|
|||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(arch),$(filter $(arch),armv7 armv8))
|
||||
ifeq ($(arch),$(filter $(arch),armv7 armv8 riscv64))
|
||||
ifeq ($(OS),Android)
|
||||
CXXFLAGS += -m$(bits)
|
||||
LDFLAGS += -m$(bits)
|
||||
endif
|
||||
ifeq ($(ARCH),riscv64)
|
||||
CXXFLAGS += -latomic
|
||||
endif
|
||||
else
|
||||
CXXFLAGS += -m$(bits)
|
||||
LDFLAGS += -m$(bits)
|
||||
|
@ -757,6 +767,7 @@ help:
|
|||
@echo "apple-silicon > Apple silicon ARM64"
|
||||
@echo "general-64 > unspecified 64-bit"
|
||||
@echo "general-32 > unspecified 32-bit"
|
||||
@echo "riscv64 > RISC-V 64-bit"
|
||||
@echo ""
|
||||
@echo "Supported compilers:"
|
||||
@echo ""
|
||||
|
@ -916,7 +927,7 @@ config-sanity: net
|
|||
@test "$(SUPPORTED_ARCH)" = "true"
|
||||
@test "$(arch)" = "any" || test "$(arch)" = "x86_64" || test "$(arch)" = "i386" || \
|
||||
test "$(arch)" = "ppc64" || test "$(arch)" = "ppc" || test "$(arch)" = "e2k" || \
|
||||
test "$(arch)" = "armv7" || test "$(arch)" = "armv8" || test "$(arch)" = "arm64"
|
||||
test "$(arch)" = "armv7" || test "$(arch)" = "armv8" || test "$(arch)" = "arm64" || test "$(arch)" = "riscv64"
|
||||
@test "$(bits)" = "32" || test "$(bits)" = "64"
|
||||
@test "$(prefetch)" = "yes" || test "$(prefetch)" = "no"
|
||||
@test "$(popcnt)" = "yes" || test "$(popcnt)" = "no"
|
||||
|
|
Loading…
Add table
Reference in a new issue