From feaf65f2aeee2ce8dd882870ea540a8031b32472 Mon Sep 17 00:00:00 2001 From: Ryan Houdek Date: Thu, 26 Sep 2013 07:46:56 +0000 Subject: [PATCH] [Android] The dynamic UBO access isn't actually fixed, contrary to what rev cd646d8e236 said. I presumed it fixed with v4x drivers, but I didn't have the LG G2 with me to test 100% at the time. This won't afflict any Adreno device with v4x drivers since UBOs are disabled for them since they are _broken_. --- Source/Core/VideoCommon/Src/DriverDetails.cpp | 2 +- Source/Core/VideoCommon/Src/VertexShaderGen.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Source/Core/VideoCommon/Src/DriverDetails.cpp b/Source/Core/VideoCommon/Src/DriverDetails.cpp index 43e1f5b183..779edf91e8 100644 --- a/Source/Core/VideoCommon/Src/DriverDetails.cpp +++ b/Source/Core/VideoCommon/Src/DriverDetails.cpp @@ -27,7 +27,7 @@ namespace DriverDetails // This is a list of all known bugs for each vendor // We use this to check if the device and driver has a issue BugInfo m_known_bugs[] = { - {VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, BUG_NODYNUBOACCESS, 14.0, 40.0, true}, + {VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, BUG_NODYNUBOACCESS, 14.0, -1.0, true}, {VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, BUG_BROKENCENTROID, 14.0, -1.0, true}, {VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, BUG_BROKENINFOLOG, -1.0, -1.0, true}, {VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, BUG_ANNIHILATEDUBOS, 41.0, 46.0, true}, diff --git a/Source/Core/VideoCommon/Src/VertexShaderGen.cpp b/Source/Core/VideoCommon/Src/VertexShaderGen.cpp index ad090fb839..a6e758789c 100644 --- a/Source/Core/VideoCommon/Src/VertexShaderGen.cpp +++ b/Source/Core/VideoCommon/Src/VertexShaderGen.cpp @@ -211,7 +211,7 @@ static inline void GenerateVertexShader(T& out, u32 components, API_TYPE api_typ out.Write("int posmtx = int(fposmtx);\n"); } - if (is_writing_shadercode && DriverDetails::HasBug(DriverDetails::BUG_NODYNUBOACCESS)) + if (is_writing_shadercode && (DriverDetails::HasBug(DriverDetails::BUG_NODYNUBOACCESS) && !DriverDetails::HasBug(BUG_ANNIHILATEDUBOS)) ) { // This'll cause issues, but it can't be helped out.Write("float4 pos = float4(dot(" I_TRANSFORMMATRICES"[0], rawpos), dot(" I_TRANSFORMMATRICES"[1], rawpos), dot(" I_TRANSFORMMATRICES"[2], rawpos), 1);\n");