Skip to content
This repository has been archived by the owner on May 14, 2024. It is now read-only.

Commit

Permalink
Merge "Update syncscope usage based on https://reviews.llvm.org/rL307722
Browse files Browse the repository at this point in the history
"
  • Loading branch information
kzhuravl authored and Gerrit Code Review committed Jul 20, 2017
2 parents 835f078 + 21000a2 commit 1db13d8
Showing 1 changed file with 16 additions and 20 deletions.
36 changes: 16 additions & 20 deletions irif/src/fence.ll
Original file line number Diff line number Diff line change
@@ -1,27 +1,23 @@
target datalayout = "e-p:32:32-p1:64:64-p2:64:64-p3:32:32-p4:64:64-p5:32:32-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024-v2048:2048-n32:64"
target triple = "amdgcn--amdhsa"

;;
;; syncscope number mapping is in llvm/target/AMDGPU/AMDGPU.h class AMDGPUSynchronizationScope
;;

define void @__llvm_fence_acq_wi() local_unnamed_addr #0 {
fence syncscope(5) acquire
fence syncscope("singlethread") acquire
ret void
}

define void @__llvm_fence_acq_sg() local_unnamed_addr #0 {
fence syncscope(4) acquire
fence syncscope("wavefront") acquire
ret void
}

define void @__llvm_fence_acq_wg() local_unnamed_addr #0 {
fence syncscope(3) acquire
fence syncscope("workgroup") acquire
ret void
}

define void @__llvm_fence_acq_dev() local_unnamed_addr #0 {
fence syncscope(2) acquire
fence syncscope("agent") acquire
ret void
}

Expand All @@ -31,22 +27,22 @@ define void @__llvm_fence_acq_sys() local_unnamed_addr #0 {
}

define void @__llvm_fence_rel_wi() local_unnamed_addr #0 {
fence syncscope(5) release
fence syncscope("singlethread") release
ret void
}

define void @__llvm_fence_rel_sg() local_unnamed_addr #0 {
fence syncscope(4) release
fence syncscope("wavefront") release
ret void
}

define void @__llvm_fence_rel_wg() local_unnamed_addr #0 {
fence syncscope(3) release
fence syncscope("workgroup") release
ret void
}

define void @__llvm_fence_rel_dev() local_unnamed_addr #0 {
fence syncscope(2) release
fence syncscope("agent") release
ret void
}

Expand All @@ -56,22 +52,22 @@ define void @__llvm_fence_rel_sys() local_unnamed_addr #0 {
}

define void @__llvm_fence_ar_wi() local_unnamed_addr #0 {
fence syncscope(5) acq_rel
fence syncscope("singlethread") acq_rel
ret void
}

define void @__llvm_fence_ar_sg() local_unnamed_addr #0 {
fence syncscope(4) acq_rel
fence syncscope("wavefront") acq_rel
ret void
}

define void @__llvm_fence_ar_wg() local_unnamed_addr #0 {
fence syncscope(3) acq_rel
fence syncscope("workgroup") acq_rel
ret void
}

define void @__llvm_fence_ar_dev() local_unnamed_addr #0 {
fence syncscope(2) acq_rel
fence syncscope("agent") acq_rel
ret void
}

Expand All @@ -81,22 +77,22 @@ define void @__llvm_fence_ar_sys() local_unnamed_addr #0 {
}

define void @__llvm_fence_sc_wi() local_unnamed_addr #0 {
fence syncscope(5) seq_cst
fence syncscope("singlethread") seq_cst
ret void
}

define void @__llvm_fence_sc_sg() local_unnamed_addr #0 {
fence syncscope(4) seq_cst
fence syncscope("wavefront") seq_cst
ret void
}

define void @__llvm_fence_sc_wg() local_unnamed_addr #0 {
fence syncscope(3) seq_cst
fence syncscope("workgroup") seq_cst
ret void
}

define void @__llvm_fence_sc_dev() local_unnamed_addr #0 {
fence syncscope(2) seq_cst
fence syncscope("agent") seq_cst
ret void
}

Expand Down

0 comments on commit 1db13d8

Please sign in to comment.