#ifndef EMULATOR_INCLUDE_EMULATOR_GRAPHICS_SHADER_RECOMPILER_BINDINGLAYOUT_H_ #define EMULATOR_INCLUDE_EMULATOR_GRAPHICS_SHADER_RECOMPILER_BINDINGLAYOUT_H_ #include "graphics/shader/recompiler/ir/ShaderIR.h" namespace Libs::Graphics::ShaderRecompiler::IR { void AllocateBindings(Program& program, uint32_t push_data_start_dword = 0, bool lds_storage = false); struct SharedMemoryResources { bool lds = false; bool gds = false; }; SharedMemoryResources CollectMemoryResources(const Program& program, std::vector& buffers); bool UsesFlattenedSrt(const Program& program); const DescriptorBinding* FindBinding(const BindingLayout& layout, DescriptorBindingKind kind); } // namespace Libs::Graphics::ShaderRecompiler::IR #endif /* EMULATOR_INCLUDE_EMULATOR_GRAPHICS_SHADER_RECOMPILER_BINDINGLAYOUT_H_ */