forked from ShuriZma/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:
parent
6edadef96d
commit
48e16c4c49
|
@ -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);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue