mirror of
https://git.eden-emu.dev/eden-emu/eden.git
synced 2025-10-14 12:17:49 +00:00
shader_ir: Implement BRX & BRA.CC
This commit is contained in:
parent
fc89b55635
commit
d5d4cc30ec
6 changed files with 76 additions and 4 deletions
|
@ -1555,6 +1555,14 @@ private:
|
|||
return {};
|
||||
}
|
||||
|
||||
std::string BranchIndirect(Operation operation) {
|
||||
const std::string op_a = VisitOperand(operation, 0, Type::Uint);
|
||||
|
||||
code.AddLine("jmp_to = {};", op_a);
|
||||
code.AddLine("break;");
|
||||
return {};
|
||||
}
|
||||
|
||||
std::string PushFlowStack(Operation operation) {
|
||||
const auto stack = std::get<MetaStackClass>(operation.GetMeta());
|
||||
const auto target = std::get_if<ImmediateNode>(&*operation[0]);
|
||||
|
@ -1789,6 +1797,7 @@ private:
|
|||
&GLSLDecompiler::ImageStore,
|
||||
|
||||
&GLSLDecompiler::Branch,
|
||||
&GLSLDecompiler::BranchIndirect,
|
||||
&GLSLDecompiler::PushFlowStack,
|
||||
&GLSLDecompiler::PopFlowStack,
|
||||
&GLSLDecompiler::Exit,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue