mirror of
https://github.com/KytyPS5/KytyPS5.git
synced 2026-10-22 03:46:53 +02:00
shader: run merged geometry stages as mesh shaders
Co-authored-by: Brandon Strong <brandostrong@gmail.com> Co-authored-by: fxpw <fxpw@outlook.com> Co-authored-by: shadowbeat070 <70843316+shadowbeat070@users.noreply.github.com>
This commit is contained in:
@@ -90,6 +90,7 @@ bool HasSideEffects(ValueOpcode opcode) {
|
||||
case ValueOpcode::Reference:
|
||||
case ValueOpcode::ReferenceU32:
|
||||
case ValueOpcode::SetAttribute:
|
||||
case ValueOpcode::MeshAllocate:
|
||||
case ValueOpcode::Barrier: return true;
|
||||
default: return false;
|
||||
}
|
||||
|
||||
@@ -8,6 +8,8 @@ VALUE_OPCODE(ReferenceU32, Void, U32)
|
||||
// Translation and register-state pseudo operations.
|
||||
VALUE_OPCODE(GetUserData, U32, ScalarReg)
|
||||
VALUE_OPCODE(GetShaderBase, U64)
|
||||
VALUE_OPCODE(MeshDrawParameter, U32, U32)
|
||||
VALUE_OPCODE(MeshAllocate, Void, U32)
|
||||
VALUE_OPCODE(GetBuiltin, U32, U32, U32)
|
||||
VALUE_OPCODE(GetThreadBitScalarRegister, U1, ScalarReg)
|
||||
VALUE_OPCODE(SetThreadBitScalarRegister, Void, ScalarReg, U1)
|
||||
@@ -81,7 +83,6 @@ VALUE_OPCODE(BitFieldSExtract, U32, U32, U32, U32)
|
||||
VALUE_OPCODE(DppMoveU32, U32, U32, U1)
|
||||
VALUE_OPCODE(DppUpdateU32, U32, U32, U32, U1)
|
||||
VALUE_OPCODE(WqmU64, U64, U64)
|
||||
VALUE_OPCODE(WqmMask, U1, U1)
|
||||
|
||||
// Core value operations used to expand architectural side effects.
|
||||
VALUE_OPCODE(SelectU1, U1, U1, U1, U1)
|
||||
|
||||
Reference in New Issue
Block a user