shader: Mark atomic instructions as writes
This commit is contained in:
		@@ -115,6 +115,33 @@ bool IsGlobalMemoryWrite(const IR::Inst& inst) {
 | 
			
		||||
    case IR::Opcode::WriteGlobal32:
 | 
			
		||||
    case IR::Opcode::WriteGlobal64:
 | 
			
		||||
    case IR::Opcode::WriteGlobal128:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicIAdd32:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicSMin32:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicUMin32:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicSMax32:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicUMax32:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicInc32:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicDec32:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicAnd32:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicOr32:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicXor32:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicExchange32:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicIAdd64:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicSMin64:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicUMin64:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicSMax64:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicUMax64:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicAnd64:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicOr64:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicXor64:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicExchange64:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicAddF32:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicAddF16x2:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicAddF32x2:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicMinF16x2:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicMinF32x2:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicMaxF16x2:
 | 
			
		||||
    case IR::Opcode::GlobalAtomicMaxF32x2:
 | 
			
		||||
        return true;
 | 
			
		||||
    default:
 | 
			
		||||
        return false;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user