From 1a32b0f81d56e67157e13ab46735eeaee2bbf9d5 Mon Sep 17 00:00:00 2001 From: negativeExponent Date: Wed, 28 Oct 2020 23:05:54 +0800 Subject: [PATCH 1/1] Fix build with -fno-common (default in gcc10) --- Makefile.libretro | 4 ++-- libpcsxcore/psxcounters.c | 4 +++- libpcsxcore/r3000a.c | 2 ++ 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/Makefile.libretro b/Makefile.libretro index e6740635..3efe8f95 100644 --- a/Makefile.libretro +++ b/Makefile.libretro @@ -186,7 +186,7 @@ else ifeq ($(platform), vita) CFLAGS += -mcpu=cortex-a8 -mtune=cortex-a8 -mfpu=neon -marm CFLAGS += -fsingle-precision-constant -mword-relocations -fno-unwind-tables CFLAGS += -fno-asynchronous-unwind-tables -ftree-vectorize -funroll-loops - CFLAGS += -fno-optimize-sibling-calls -fcommon + CFLAGS += -fno-optimize-sibling-calls CFLAGS += -I$(VITASDK)/include -Ifrontend/vita CFLAGS += -DNO_SOCKET -DNO_OS -DNO_DYLIB ASFLAGS += -mcpu=cortex-a8 -mtune=cortex-a8 -mfpu=neon @@ -209,7 +209,7 @@ else ifeq ($(platform), ctr) AR = $(DEVKITARM)/bin/arm-none-eabi-ar$(EXE_EXT) CFLAGS += -DARM11 -D_3DS -DNO_OS -DNO_DYLIB -DNO_SOCKET -DTHREAD_ENABLED -DGPU_UNAI_USE_FLOATMATH -DGPU_UNAI_USE_FLOAT_DIV_MULTINV CFLAGS += -march=armv6k -mtune=mpcore -mfloat-abi=hard -marm -mfpu=vfp -mtp=soft - CFLAGS += -Wall -mword-relocations -fcommon + CFLAGS += -Wall -mword-relocations CFLAGS += -fomit-frame-pointer -ffast-math -funroll-loops CFLAGS += -Ifrontend/3ds -I$(CTRULIB)/include CFLAGS += -Werror=implicit-function-declaration diff --git a/libpcsxcore/psxcounters.c b/libpcsxcore/psxcounters.c index bebec876..db0b1ec8 100644 --- a/libpcsxcore/psxcounters.c +++ b/libpcsxcore/psxcounters.c @@ -70,7 +70,9 @@ static const s32 VerboseLevel = VERBOSE_LEVEL; /******************************************************************************/ +#ifndef NEW_DYNAREC Rcnt rcnts[ CounterQuantity ]; +#endif u32 hSyncCount = 0; u32 frame_counter = 0; @@ -496,7 +498,7 @@ s32 psxRcntFreeze( void *f, s32 Mode ) u32 count; s32 i; - gzfreeze( &rcnts, sizeof(rcnts) ); + gzfreeze( &rcnts, sizeof(Rcnt) * CounterQuantity ); gzfreeze( &hSyncCount, sizeof(hSyncCount) ); gzfreeze( &spuSyncCount, sizeof(spuSyncCount) ); gzfreeze( &psxNextCounter, sizeof(psxNextCounter) ); diff --git a/libpcsxcore/r3000a.c b/libpcsxcore/r3000a.c index 11181070..0a3e00b8 100644 --- a/libpcsxcore/r3000a.c +++ b/libpcsxcore/r3000a.c @@ -27,7 +27,9 @@ #include "gte.h" R3000Acpu *psxCpu = NULL; +#ifndef NEW_DYNAREC psxRegisters psxRegs; +#endif int psxInit() { SysPrintf(_("Running PCSX Version %s (%s).\n"), PCSX_VERSION, __DATE__); -- 2.39.2