mirror of
https://github.com/hrydgard/ppsspp.git
synced 2024-11-23 05:19:56 +00:00
Also disable the GPU JIT tests on ARM64, not applicable
This commit is contained in:
parent
431a30b9c8
commit
8397fd6791
@ -542,3 +542,31 @@ std::string CPUInfo::Summarize() {
|
||||
}
|
||||
|
||||
#endif // PPSSPP_ARCH(X86) || PPSSPP_ARCH(AMD64)
|
||||
|
||||
const char *GetCompilerABI() {
|
||||
#if PPSSPP_ARCH(ARMV7)
|
||||
return "armeabi-v7a";
|
||||
#elif PPSSPP_ARCH(ARM)
|
||||
return "armeabi";
|
||||
#elif PPSSPP_ARCH(ARM64)
|
||||
return "arm64";
|
||||
#elif PPSSPP_ARCH(X86)
|
||||
return "x86";
|
||||
#elif PPSSPP_ARCH(AMD64)
|
||||
return "x86-64";
|
||||
#elif PPSSPP_ARCH(RISCV64)
|
||||
//https://github.com/riscv/riscv-toolchain-conventions#cc-preprocessor-definitions
|
||||
//https://github.com/riscv/riscv-c-api-doc/blob/master/riscv-c-api.md#abi-related-preprocessor-definitions
|
||||
#if defined(__riscv_float_abi_single)
|
||||
return "lp64f";
|
||||
#elif defined(__riscv_float_abi_double)
|
||||
return "lp64d";
|
||||
#elif defined(__riscv_float_abi_quad)
|
||||
return "lp64q";
|
||||
#elif defined(__riscv_float_abi_soft)
|
||||
return "lp64";
|
||||
#endif
|
||||
#else
|
||||
return "other";
|
||||
#endif
|
||||
}
|
||||
|
@ -161,3 +161,5 @@ private:
|
||||
};
|
||||
|
||||
extern CPUInfo cpu_info;
|
||||
|
||||
const char *GetCompilerABI();
|
||||
|
@ -181,6 +181,7 @@ NearestFunc SamplerJitCache::GetByID(const SamplerID &id, size_t key, BinManager
|
||||
}
|
||||
|
||||
if (!binner) {
|
||||
printf("No binner, can't compile\n");
|
||||
// Can't compile, let's try to do it later when there's an opportunity.
|
||||
compileQueue_.insert(id);
|
||||
return nullptr;
|
||||
|
@ -2,6 +2,7 @@
|
||||
#include "Common/GPU/thin3d.h"
|
||||
#include "Common/System/System.h"
|
||||
#include "Common/Data/Text/I18n.h"
|
||||
#include "Common/CPUDetect.h"
|
||||
#include "Core/MIPS/MIPS.h"
|
||||
#include "Core/HW/Display.h"
|
||||
#include "Core/FrameTiming.h"
|
||||
|
@ -452,34 +452,6 @@ UI::EventReturn JitDebugScreen::OnDisableAll(UI::EventParams &e) {
|
||||
return UI::EVENT_DONE;
|
||||
}
|
||||
|
||||
const char *GetCompilerABI() {
|
||||
#if PPSSPP_ARCH(ARMV7)
|
||||
return "armeabi-v7a";
|
||||
#elif PPSSPP_ARCH(ARM)
|
||||
return "armeabi";
|
||||
#elif PPSSPP_ARCH(ARM64)
|
||||
return "arm64";
|
||||
#elif PPSSPP_ARCH(X86)
|
||||
return "x86";
|
||||
#elif PPSSPP_ARCH(AMD64)
|
||||
return "x86-64";
|
||||
#elif PPSSPP_ARCH(RISCV64)
|
||||
//https://github.com/riscv/riscv-toolchain-conventions#cc-preprocessor-definitions
|
||||
//https://github.com/riscv/riscv-c-api-doc/blob/master/riscv-c-api.md#abi-related-preprocessor-definitions
|
||||
#if defined(__riscv_float_abi_single)
|
||||
return "lp64f";
|
||||
#elif defined(__riscv_float_abi_double)
|
||||
return "lp64d";
|
||||
#elif defined(__riscv_float_abi_quad)
|
||||
return "lp64q";
|
||||
#elif defined(__riscv_float_abi_soft)
|
||||
return "lp64";
|
||||
#endif
|
||||
#else
|
||||
return "other";
|
||||
#endif
|
||||
}
|
||||
|
||||
void SystemInfoScreen::update() {
|
||||
TabbedUIDialogScreenWithGameBackground::update();
|
||||
g_OSD.NudgeSidebar();
|
||||
|
@ -264,6 +264,5 @@ protected:
|
||||
};
|
||||
|
||||
void DrawProfile(UIContext &ui);
|
||||
const char *GetCompilerABI();
|
||||
|
||||
void AddOverlayList(UI::ViewGroup *items, ScreenManager *screenManager);
|
||||
|
@ -282,7 +282,7 @@ bool TestArm64Emitter() {
|
||||
emitter.EORI2R(X1, X3, 0x3F0000003F0, INVALID_REG);
|
||||
RET(CheckLast(emitter, "d21c1461 eor x1, x3, #0x3f0000003f0"));
|
||||
|
||||
printf("yay!\n");
|
||||
printf("ARM64 emitter test completed!\n");
|
||||
//emitter.ANDI2R(W1, W3, 0xFF00FF00FF00FF00ULL, INVALID_REG);
|
||||
//RET(CheckLast(emitter, "00000000 and x1, x3, 0xFF00FF00FF00FF00"));
|
||||
|
||||
|
@ -24,6 +24,7 @@
|
||||
#include "GPU/Software/SoftGpu.h"
|
||||
|
||||
static bool TestSamplerJit() {
|
||||
#if PPSSPP_ARCH(AMD64)
|
||||
using namespace Sampler;
|
||||
SamplerJitCache *cache = new SamplerJitCache();
|
||||
BinManager binner;
|
||||
@ -108,9 +109,14 @@ static bool TestSamplerJit() {
|
||||
|
||||
delete cache;
|
||||
return successes == count && !HitAnyAsserts();
|
||||
#else
|
||||
// Don't test sampler jit, not supported.
|
||||
return true;
|
||||
#endif
|
||||
}
|
||||
|
||||
static bool TestPixelJit() {
|
||||
#if PPSSPP_ARCH(AMD64)
|
||||
using namespace Rasterizer;
|
||||
PixelJitCache *cache = new PixelJitCache();
|
||||
BinManager binner;
|
||||
@ -159,6 +165,10 @@ static bool TestPixelJit() {
|
||||
delete [] zb_data;
|
||||
delete cache;
|
||||
return successes == count && !HitAnyAsserts();
|
||||
#else
|
||||
// Not yet supported
|
||||
return true;
|
||||
#endif
|
||||
}
|
||||
|
||||
bool TestSoftwareGPUJit() {
|
||||
|
@ -1061,6 +1061,10 @@ TestItem availableTests[] = {
|
||||
int main(int argc, const char *argv[]) {
|
||||
SetCurrentThreadName("UnitTest");
|
||||
|
||||
printf("CPU name: %s\n", cpu_info.cpu_string);
|
||||
printf("ABI: %s\n", GetCompilerABI());
|
||||
|
||||
// In case we're on ARM, assume these are available.
|
||||
cpu_info.bNEON = true;
|
||||
cpu_info.bVFP = true;
|
||||
cpu_info.bVFPv3 = true;
|
||||
@ -1096,6 +1100,7 @@ int main(int argc, const char *argv[]) {
|
||||
printf("%d tests passed.\n", passes);
|
||||
}
|
||||
if (fails > 0) {
|
||||
printf("%d tests failed!\n", fails);
|
||||
return 2;
|
||||
}
|
||||
} else if (testFunc == nullptr) {
|
||||
|
Loading…
Reference in New Issue
Block a user