shader_recompiler: GCC fixes
This commit is contained in:
		| @@ -6,6 +6,7 @@ | |||||||
| #include <string_view> | #include <string_view> | ||||||
|  |  | ||||||
| #include "shader_recompiler/backend/glsl/emit_context.h" | #include "shader_recompiler/backend/glsl/emit_context.h" | ||||||
|  | #include "shader_recompiler/backend/glsl/emit_glsl_instructions.h" | ||||||
| #include "shader_recompiler/frontend/ir/value.h" | #include "shader_recompiler/frontend/ir/value.h" | ||||||
|  |  | ||||||
| namespace Shader::Backend::GLSL { | namespace Shader::Backend::GLSL { | ||||||
|   | |||||||
| @@ -5,6 +5,7 @@ | |||||||
| #include <string_view> | #include <string_view> | ||||||
|  |  | ||||||
| #include "shader_recompiler/backend/glsl/emit_context.h" | #include "shader_recompiler/backend/glsl/emit_context.h" | ||||||
|  | #include "shader_recompiler/backend/glsl/emit_glsl_instructions.h" | ||||||
| #include "shader_recompiler/frontend/ir/value.h" | #include "shader_recompiler/frontend/ir/value.h" | ||||||
|  |  | ||||||
| namespace Shader::Backend::GLSL { | namespace Shader::Backend::GLSL { | ||||||
|   | |||||||
| @@ -5,6 +5,7 @@ | |||||||
| #include <string_view> | #include <string_view> | ||||||
|  |  | ||||||
| #include "shader_recompiler/backend/glsl/emit_context.h" | #include "shader_recompiler/backend/glsl/emit_context.h" | ||||||
|  | #include "shader_recompiler/backend/glsl/emit_glsl_instructions.h" | ||||||
| #include "shader_recompiler/frontend/ir/value.h" | #include "shader_recompiler/frontend/ir/value.h" | ||||||
|  |  | ||||||
| namespace Shader::Backend::GLSL { | namespace Shader::Backend::GLSL { | ||||||
|   | |||||||
| @@ -5,6 +5,7 @@ | |||||||
| #include <string_view> | #include <string_view> | ||||||
|  |  | ||||||
| #include "shader_recompiler/backend/glsl/emit_context.h" | #include "shader_recompiler/backend/glsl/emit_context.h" | ||||||
|  | #include "shader_recompiler/backend/glsl/emit_glsl_instructions.h" | ||||||
| #include "shader_recompiler/frontend/ir/value.h" | #include "shader_recompiler/frontend/ir/value.h" | ||||||
|  |  | ||||||
| namespace Shader::Backend::GLSL { | namespace Shader::Backend::GLSL { | ||||||
| @@ -71,8 +72,6 @@ void EmitGetCbufF32(EmitContext& ctx, IR::Inst& inst, const IR::Value& binding, | |||||||
| void EmitGetCbufU32x2(EmitContext& ctx, IR::Inst& inst, const IR::Value& binding, | void EmitGetCbufU32x2(EmitContext& ctx, IR::Inst& inst, const IR::Value& binding, | ||||||
|                       const IR::Value& offset) { |                       const IR::Value& offset) { | ||||||
|     if (offset.IsImmediate()) { |     if (offset.IsImmediate()) { | ||||||
|         const auto u32_offset{offset.U32()}; |  | ||||||
|         const auto index{(u32_offset / 4) % 4}; |  | ||||||
|         ctx.AddU32x2( |         ctx.AddU32x2( | ||||||
|             "{}=uvec2(floatBitsToUint({}_cbuf{}[{}].{}),floatBitsToUint({}_cbuf{}[{}].{}));", inst, |             "{}=uvec2(floatBitsToUint({}_cbuf{}[{}].{}),floatBitsToUint({}_cbuf{}[{}].{}));", inst, | ||||||
|             ctx.stage_name, binding.U32(), offset.U32() / 16, OffsetSwizzle(offset.U32()), |             ctx.stage_name, binding.U32(), offset.U32() / 16, OffsetSwizzle(offset.U32()), | ||||||
|   | |||||||
| @@ -5,6 +5,7 @@ | |||||||
| #include <string_view> | #include <string_view> | ||||||
|  |  | ||||||
| #include "shader_recompiler/backend/glsl/emit_context.h" | #include "shader_recompiler/backend/glsl/emit_context.h" | ||||||
|  | #include "shader_recompiler/backend/glsl/emit_glsl_instructions.h" | ||||||
| #include "shader_recompiler/frontend/ir/value.h" | #include "shader_recompiler/frontend/ir/value.h" | ||||||
|  |  | ||||||
| namespace Shader::Backend::GLSL { | namespace Shader::Backend::GLSL { | ||||||
|   | |||||||
| @@ -5,6 +5,7 @@ | |||||||
| #include <string_view> | #include <string_view> | ||||||
|  |  | ||||||
| #include "shader_recompiler/backend/glsl/emit_context.h" | #include "shader_recompiler/backend/glsl/emit_context.h" | ||||||
|  | #include "shader_recompiler/backend/glsl/emit_glsl_instructions.h" | ||||||
| #include "shader_recompiler/frontend/ir/value.h" | #include "shader_recompiler/frontend/ir/value.h" | ||||||
|  |  | ||||||
| namespace Shader::Backend::GLSL { | namespace Shader::Backend::GLSL { | ||||||
|   | |||||||
| @@ -5,6 +5,7 @@ | |||||||
| #include <string_view> | #include <string_view> | ||||||
|  |  | ||||||
| #include "shader_recompiler/backend/glsl/emit_context.h" | #include "shader_recompiler/backend/glsl/emit_context.h" | ||||||
|  | #include "shader_recompiler/backend/glsl/emit_glsl_instructions.h" | ||||||
| #include "shader_recompiler/frontend/ir/modifiers.h" | #include "shader_recompiler/frontend/ir/modifiers.h" | ||||||
| #include "shader_recompiler/frontend/ir/value.h" | #include "shader_recompiler/frontend/ir/value.h" | ||||||
|  |  | ||||||
|   | |||||||
| @@ -5,6 +5,7 @@ | |||||||
| #include <string_view> | #include <string_view> | ||||||
|  |  | ||||||
| #include "shader_recompiler/backend/glsl/emit_context.h" | #include "shader_recompiler/backend/glsl/emit_context.h" | ||||||
|  | #include "shader_recompiler/backend/glsl/emit_glsl_instructions.h" | ||||||
| #include "shader_recompiler/frontend/ir/value.h" | #include "shader_recompiler/frontend/ir/value.h" | ||||||
|  |  | ||||||
| namespace Shader::Backend::GLSL { | namespace Shader::Backend::GLSL { | ||||||
|   | |||||||
| @@ -5,6 +5,7 @@ | |||||||
| #include <string_view> | #include <string_view> | ||||||
|  |  | ||||||
| #include "shader_recompiler/backend/glsl/emit_context.h" | #include "shader_recompiler/backend/glsl/emit_context.h" | ||||||
|  | #include "shader_recompiler/backend/glsl/emit_glsl_instructions.h" | ||||||
| #include "shader_recompiler/frontend/ir/value.h" | #include "shader_recompiler/frontend/ir/value.h" | ||||||
|  |  | ||||||
| namespace Shader::Backend::GLSL { | namespace Shader::Backend::GLSL { | ||||||
|   | |||||||
| @@ -5,6 +5,7 @@ | |||||||
| #include <string_view> | #include <string_view> | ||||||
|  |  | ||||||
| #include "shader_recompiler/backend/glsl/emit_context.h" | #include "shader_recompiler/backend/glsl/emit_context.h" | ||||||
|  | #include "shader_recompiler/backend/glsl/emit_glsl_instructions.h" | ||||||
| #include "shader_recompiler/frontend/ir/value.h" | #include "shader_recompiler/frontend/ir/value.h" | ||||||
|  |  | ||||||
| namespace Shader::Backend::GLSL { | namespace Shader::Backend::GLSL { | ||||||
|   | |||||||
| @@ -5,6 +5,7 @@ | |||||||
| #include <string_view> | #include <string_view> | ||||||
|  |  | ||||||
| #include "shader_recompiler/backend/glsl/emit_context.h" | #include "shader_recompiler/backend/glsl/emit_context.h" | ||||||
|  | #include "shader_recompiler/backend/glsl/emit_glsl_instructions.h" | ||||||
| #include "shader_recompiler/frontend/ir/value.h" | #include "shader_recompiler/frontend/ir/value.h" | ||||||
|  |  | ||||||
| #ifdef _MSC_VER | #ifdef _MSC_VER | ||||||
|   | |||||||
| @@ -5,6 +5,7 @@ | |||||||
| #include <string_view> | #include <string_view> | ||||||
|  |  | ||||||
| #include "shader_recompiler/backend/glsl/emit_context.h" | #include "shader_recompiler/backend/glsl/emit_context.h" | ||||||
|  | #include "shader_recompiler/backend/glsl/emit_glsl_instructions.h" | ||||||
| #include "shader_recompiler/frontend/ir/value.h" | #include "shader_recompiler/frontend/ir/value.h" | ||||||
|  |  | ||||||
| namespace Shader::Backend::GLSL { | namespace Shader::Backend::GLSL { | ||||||
|   | |||||||
| @@ -5,6 +5,7 @@ | |||||||
| #include <string_view> | #include <string_view> | ||||||
|  |  | ||||||
| #include "shader_recompiler/backend/glsl/emit_context.h" | #include "shader_recompiler/backend/glsl/emit_context.h" | ||||||
|  | #include "shader_recompiler/backend/glsl/emit_glsl_instructions.h" | ||||||
| #include "shader_recompiler/frontend/ir/value.h" | #include "shader_recompiler/frontend/ir/value.h" | ||||||
|  |  | ||||||
| namespace Shader::Backend::GLSL { | namespace Shader::Backend::GLSL { | ||||||
|   | |||||||
| @@ -91,7 +91,6 @@ std::string RegAlloc::Consume(const IR::Value& value) { | |||||||
| } | } | ||||||
|  |  | ||||||
| std::string RegAlloc::Consume(IR::Inst& inst) { | std::string RegAlloc::Consume(IR::Inst& inst) { | ||||||
|     const Id id{inst.Definition<Id>()}; |  | ||||||
|     inst.DestructiveRemoveUsage(); |     inst.DestructiveRemoveUsage(); | ||||||
|     // TODO: reuse variables of same type if possible |     // TODO: reuse variables of same type if possible | ||||||
|     // if (!inst.HasUses()) { |     // if (!inst.HasUses()) { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user