Index: llvm/lib/Target/AMDGPU/AMDGPUInstructions.td =================================================================== --- llvm/lib/Target/AMDGPU/AMDGPUInstructions.td +++ llvm/lib/Target/AMDGPU/AMDGPUInstructions.td @@ -408,7 +408,12 @@ let IsAtomic = 1; let MemoryVT = i64; } +} // End let AddressSpaces +} // End foreach as + +foreach as = [ "global", "flat", "local", "private", "region" ] in { +let AddressSpaces = !cast("StoreAddress_"#as).AddrSpaces in { def store_#as : PatFrag<(ops node:$val, node:$ptr), (unindexedstore node:$val, node:$ptr)> { let IsStore = 1; @@ -444,8 +449,8 @@ defm atomic_store_#as : binary_atomic_op; -} // End let AddressSpaces = ... -} // End foreach AddrSpace +} // End let AddressSpaces +} // End foreach as multiclass ret_noret_binary_atomic_op {