[llvm] ff5cb1e - [Verifier] add missing checks for convergence control intrinsics

Sameer Sahasrabuddhe via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 10 00:57:45 PDT 2023


Author: Sameer Sahasrabuddhe
Date: 2023-08-10T13:27:25+05:30
New Revision: ff5cb1ec6209e939adef52b2f0ddde23c370afd6

URL: https://github.com/llvm/llvm-project/commit/ff5cb1ec6209e939adef52b2f0ddde23c370afd6
DIFF: https://github.com/llvm/llvm-project/commit/ff5cb1ec6209e939adef52b2f0ddde23c370afd6.diff

LOG: [Verifier] add missing checks for convergence control intrinsics

Added: 
    

Modified: 
    llvm/test/Verifier/convergencectrl-invalid.ll

Removed: 
    


################################################################################
diff  --git a/llvm/test/Verifier/convergencectrl-invalid.ll b/llvm/test/Verifier/convergencectrl-invalid.ll
index 20679076eefa86..d488067e9d09a7 100644
--- a/llvm/test/Verifier/convergencectrl-invalid.ll
+++ b/llvm/test/Verifier/convergencectrl-invalid.ll
@@ -1,5 +1,16 @@
 ; RUN: not llvm-as < %s -o /dev/null 2>&1 | FileCheck %s
 
+; CHECK: Entry or anchor intrinsic must not have a convergencectrl bundle.
+; CHECK-NEXT: %t04_tok2 = call token
+; CHECK: Loop intrinsic must have a convergencectrl bundle.
+; CHECK-NEXT: %t04_tok3 = call token
+define void @basic_syntax() {
+  %t04_tok1 = call token @llvm.experimental.convergence.anchor()
+  %t04_tok2 = call token @llvm.experimental.convergence.anchor() [ "convergencectrl"(token %t04_tok1) ]
+  %t04_tok3 = call token @llvm.experimental.convergence.loop()
+  ret void
+}
+
 ; CHECK: Convergence control tokens can only be produced by calls to the convergence control intrinsics.
 ; CHECK-NEXT:  %t04_tok1 = call token @produce_token()
 ; CHECK-NEXT:  call void @f() [ "convergencectrl"(token %t04_tok1) ]


        


More information about the llvm-commits mailing list