19f3f6d7bSStella Laurenzo# RUN: %PYTHON %s | FileCheck %s 29f3f6d7bSStella Laurenzo 39f3f6d7bSStella Laurenzofrom mlir.ir import * 4*37fe3c67SAbhishek Kulkarnifrom mlir.dialects import arith 5*37fe3c67SAbhishek Kulkarniimport mlir.dialects.async_dialect as async_dialect 69f3f6d7bSStella Laurenzoimport mlir.dialects.async_dialect.passes 79f3f6d7bSStella Laurenzofrom mlir.passmanager import * 89f3f6d7bSStella Laurenzo 9f9008e63STobias Hieta 109f3f6d7bSStella Laurenzodef run(f): 119f3f6d7bSStella Laurenzo print("\nTEST:", f.__name__) 129f3f6d7bSStella Laurenzo f() 139f3f6d7bSStella Laurenzo 14f9008e63STobias Hieta 15*37fe3c67SAbhishek Kulkarni# CHECK-LABEL: TEST: testCreateGroupOp 16*37fe3c67SAbhishek Kulkarni@run 17*37fe3c67SAbhishek Kulkarnidef testCreateGroupOp(): 18*37fe3c67SAbhishek Kulkarni with Context() as ctx, Location.unknown(): 19*37fe3c67SAbhishek Kulkarni module = Module.create() 20*37fe3c67SAbhishek Kulkarni with InsertionPoint(module.body): 21*37fe3c67SAbhishek Kulkarni i32 = IntegerType.get_signless(32) 22*37fe3c67SAbhishek Kulkarni group_size = arith.ConstantOp(i32, 4) 23*37fe3c67SAbhishek Kulkarni async_dialect.create_group(group_size) 24*37fe3c67SAbhishek Kulkarni # CHECK: %0 = "arith.constant"() <{value = 4 : i32}> : () -> i32 25*37fe3c67SAbhishek Kulkarni # CHECK: %1 = "async.create_group"(%0) : (i32) -> !async.group 26*37fe3c67SAbhishek Kulkarni print(module) 27*37fe3c67SAbhishek Kulkarni 289f3f6d7bSStella Laurenzodef testAsyncPass(): 299f3f6d7bSStella Laurenzo with Context() as context: 30f9008e63STobias Hieta PassManager.parse("any(async-to-async-runtime)") 31f9008e63STobias Hieta print("SUCCESS") 32f9008e63STobias Hieta 339f3f6d7bSStella Laurenzo 349f3f6d7bSStella Laurenzo# CHECK-LABEL: testAsyncPass 359f3f6d7bSStella Laurenzo# CHECK: SUCCESS 369f3f6d7bSStella Laurenzorun(testAsyncPass) 37