mirror of
https://github.com/KytyPS5/KytyPS5.git
synced 2026-10-28 05:46:56 +01:00
refactor(shader): preserve native wide buffer operations
This commit is contained in:
@@ -140,7 +140,14 @@ U64 IREmitter::PackUint2x32(U32 low, U32 high) {
|
||||
}
|
||||
|
||||
U32 IREmitter::CompositeExtract(Value composite, uint32_t index) {
|
||||
return U32(Emit(ValueOpcode::CompositeExtractU32x2, {composite, Value(index)}));
|
||||
ValueOpcode opcode;
|
||||
switch (composite.GetType()) {
|
||||
case Type::U32x2: opcode = ValueOpcode::CompositeExtractU32x2; break;
|
||||
case Type::U32x3: opcode = ValueOpcode::CompositeExtractU32x3; break;
|
||||
case Type::U32x4: opcode = ValueOpcode::CompositeExtractU32x4; break;
|
||||
default: EXIT("invalid U32 composite type\n");
|
||||
}
|
||||
return U32(Emit(opcode, {composite, Value(index)}));
|
||||
}
|
||||
|
||||
U32 IREmitter::IAdd(U32 lhs, U32 rhs) {
|
||||
|
||||
Reference in New Issue
Block a user