1
0
Fork 0
forked from suyu/suyu

gl_shader_cache: Add missing new-line on emitted GLSL

Add missing new-line. This caused shaders using local memory and shared
memory to inject a preprocessor GLSL line after an expression (resulting
in invalid code).

It looked like this:
shared uint smem[8];#define LOCAL_MEMORY_SIZE 16

It should look like this (addressed by this commit):
shared uint smem[8];
\#define LOCAL_MEMORY_SIZE 16
This commit is contained in:
ReinUsesLisp 2019-12-10 23:49:43 -03:00
parent 6edadef96d
commit 48e16c4c49
No known key found for this signature in database
GPG key ID: 2DFC508897B39CFE

View file

@ -281,11 +281,11 @@ CachedProgram BuildShader(const Device& device, u64 unique_identifier, ShaderTyp
if (variant.shared_memory_size > 0) { if (variant.shared_memory_size > 0) {
// TODO(Rodrigo): We should divide by four here, but having a larger shared memory pool // TODO(Rodrigo): We should divide by four here, but having a larger shared memory pool
// avoids out of bound stores. Find out why shared memory size is being invalid. // avoids out of bound stores. Find out why shared memory size is being invalid.
source += fmt::format("shared uint smem[{}];", variant.shared_memory_size); source += fmt::format("shared uint smem[{}];\n", variant.shared_memory_size);
} }
if (variant.local_memory_size > 0) { if (variant.local_memory_size > 0) {
source += fmt::format("#define LOCAL_MEMORY_SIZE {}", source += fmt::format("#define LOCAL_MEMORY_SIZE {}\n",
Common::AlignUp(variant.local_memory_size, 4) / 4); Common::AlignUp(variant.local_memory_size, 4) / 4);
} }
} }