shader_ir: Declare Manager and pass it to appropiate programs.

This commit is contained in:
Fernando Sahmkow
2019-06-28 22:59:43 -04:00
committed by FernandoS27
parent 8be6e1c522
commit 6fdd501113
7 changed files with 214 additions and 104 deletions

View File

@ -10,6 +10,7 @@
#include "video_core/engines/shader_bytecode.h"
#include "video_core/shader/shader_ir.h"
#include "video_core/shader/ast.h"
namespace VideoCommon::Shader {
@ -67,13 +68,12 @@ struct ShaderBlock {
struct ShaderCharacteristics {
std::list<ShaderBlock> blocks{};
bool decompilable{};
bool decompiled{};
u32 start{};
u32 end{};
std::set<u32> labels{};
};
std::optional<ShaderCharacteristics> ScanFlow(const ProgramCode& program_code,
std::size_t program_size, u32 start_address);
std::unique_ptr<ShaderCharacteristics> ScanFlow(const ProgramCode& program_code, u32 program_size,
u32 start_address, ASTManager& manager);
} // namespace VideoCommon::Shader