Merge pull request #626 from Subv/shader_sync
GPU: Stub the shader SYNC and DEPBAR instructions.
This commit is contained in:
commit
762bf6a522
|
@ -451,6 +451,8 @@ public:
|
||||||
enum class Id {
|
enum class Id {
|
||||||
KIL,
|
KIL,
|
||||||
SSY,
|
SSY,
|
||||||
|
SYNC,
|
||||||
|
DEPBAR,
|
||||||
BFE_C,
|
BFE_C,
|
||||||
BFE_R,
|
BFE_R,
|
||||||
BFE_IMM,
|
BFE_IMM,
|
||||||
|
@ -547,6 +549,7 @@ public:
|
||||||
Shift,
|
Shift,
|
||||||
Ffma,
|
Ffma,
|
||||||
Flow,
|
Flow,
|
||||||
|
Synch,
|
||||||
Memory,
|
Memory,
|
||||||
FloatSet,
|
FloatSet,
|
||||||
FloatSetPredicate,
|
FloatSetPredicate,
|
||||||
|
@ -651,6 +654,8 @@ private:
|
||||||
INST("111000110011----", Id::KIL, Type::Flow, "KIL"),
|
INST("111000110011----", Id::KIL, Type::Flow, "KIL"),
|
||||||
INST("111000101001----", Id::SSY, Type::Flow, "SSY"),
|
INST("111000101001----", Id::SSY, Type::Flow, "SSY"),
|
||||||
INST("111000100100----", Id::BRA, Type::Flow, "BRA"),
|
INST("111000100100----", Id::BRA, Type::Flow, "BRA"),
|
||||||
|
INST("1111000011110---", Id::DEPBAR, Type::Synch, "DEPBAR"),
|
||||||
|
INST("1111000011111---", Id::SYNC, Type::Synch, "SYNC"),
|
||||||
INST("1110111111011---", Id::LD_A, Type::Memory, "LD_A"),
|
INST("1110111111011---", Id::LD_A, Type::Memory, "LD_A"),
|
||||||
INST("1110111110010---", Id::LD_C, Type::Memory, "LD_C"),
|
INST("1110111110010---", Id::LD_C, Type::Memory, "LD_C"),
|
||||||
INST("1110111111110---", Id::ST_A, Type::Memory, "ST_A"),
|
INST("1110111111110---", Id::ST_A, Type::Memory, "ST_A"),
|
||||||
|
|
|
@ -1632,6 +1632,13 @@ private:
|
||||||
// can ignore this when generating GLSL code.
|
// can ignore this when generating GLSL code.
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case OpCode::Id::DEPBAR:
|
||||||
|
case OpCode::Id::SYNC: {
|
||||||
|
// TODO(Subv): Find out if we actually have to care about these instructions or if
|
||||||
|
// the GLSL compiler takes care of that for us.
|
||||||
|
LOG_WARNING(HW_GPU, "DEPBAR/SYNC instruction is stubbed");
|
||||||
|
break;
|
||||||
|
}
|
||||||
default: {
|
default: {
|
||||||
LOG_CRITICAL(HW_GPU, "Unhandled instruction: {}", opcode->GetName());
|
LOG_CRITICAL(HW_GPU, "Unhandled instruction: {}", opcode->GetName());
|
||||||
UNREACHABLE();
|
UNREACHABLE();
|
||||||
|
|
Reference in New Issue