Map BUFFER_AUTOMIC SMIN/SAMX/AND/OR/XOR/INC/DEC (#910)

This commit is contained in:
Raven 2024-09-14 23:52:20 +08:00 committed by GitHub
parent e30255e0d2
commit 12a0a02e38
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -118,10 +118,25 @@ void Translator::EmitVectorMemory(const GcnInst& inst) {
return BUFFER_ATOMIC(AtomicOp::Add, inst);
case Opcode::BUFFER_ATOMIC_SWAP:
return BUFFER_ATOMIC(AtomicOp::Swap, inst);
case Opcode::BUFFER_ATOMIC_SMIN:
return BUFFER_ATOMIC(AtomicOp::Smin, inst);
case Opcode::BUFFER_ATOMIC_UMIN:
return BUFFER_ATOMIC(AtomicOp::Umin, inst);
case Opcode::BUFFER_ATOMIC_SMAX:
return BUFFER_ATOMIC(AtomicOp::Smax, inst);
case Opcode::BUFFER_ATOMIC_UMAX:
return BUFFER_ATOMIC(AtomicOp::Umax, inst);
case Opcode::BUFFER_ATOMIC_AND:
return BUFFER_ATOMIC(AtomicOp::And, inst);
case Opcode::BUFFER_ATOMIC_OR:
return BUFFER_ATOMIC(AtomicOp::Or, inst);
case Opcode::BUFFER_ATOMIC_XOR:
return BUFFER_ATOMIC(AtomicOp::Xor, inst);
case Opcode::BUFFER_ATOMIC_INC:
return BUFFER_ATOMIC(AtomicOp::Inc, inst);
case Opcode::BUFFER_ATOMIC_DEC:
return BUFFER_ATOMIC(AtomicOp::Dec, inst);
default:
LogMissingOpcode(inst);
}