From 19998976c7fd58c6cad95072f3f4999aee34d61c Mon Sep 17 00:00:00 2001 From: "Unknown W. Brackets" Date: Tue, 4 Jan 2022 23:58:07 -0800 Subject: [PATCH] samplerjit: Correct linear compile failure. It was resetting to nullptr, because `nearest` was nullptr. --- GPU/Software/SamplerX86.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/GPU/Software/SamplerX86.cpp b/GPU/Software/SamplerX86.cpp index 4af7e719f4..90dcc2bd83 100644 --- a/GPU/Software/SamplerX86.cpp +++ b/GPU/Software/SamplerX86.cpp @@ -69,6 +69,7 @@ FetchFunc SamplerJitCache::CompileFetch(const SamplerID &id) { regCache_.Reset(false); EndWrite(); ResetCodePtr(GetOffset(start)); + ERROR_LOG(G3D, "Failed to compile fetch %s", DescribeSamplerID(id).c_str()); return nullptr; } @@ -386,6 +387,7 @@ NearestFunc SamplerJitCache::CompileNearest(const SamplerID &id) { regCache_.Reset(false); EndWrite(); ResetCodePtr(GetOffset(start)); + ERROR_LOG(G3D, "Failed to compile nearest %s", DescribeSamplerID(id).c_str()); return nullptr; } @@ -453,6 +455,7 @@ LinearFunc SamplerJitCache::CompileLinear(const SamplerID &id) { regCache_.Reset(false); EndWrite(); ResetCodePtr(GetOffset(nearest)); + ERROR_LOG(G3D, "Failed to compile linear nearest %s", DescribeSamplerID(id).c_str()); return nullptr; } @@ -807,7 +810,8 @@ LinearFunc SamplerJitCache::CompileLinear(const SamplerID &id) { if (!success) { regCache_.Reset(false); EndWrite(); - ResetCodePtr(GetOffset(nearest)); + ResetCodePtr(GetOffset(nearest ? nearest : start)); + ERROR_LOG(G3D, "Failed to compile linear %s", DescribeSamplerID(id).c_str()); return nullptr; }