1*5468f884SOleksandr "Alex" Zinenko// RUN: mlir-opt %s --pass-pipeline="builtin.module(\ 2*5468f884SOleksandr "Alex" Zinenko// RUN: transform-preload-library{transform-library-paths=%p%{fs-sep}include%{fs-sep}test-interpreter-external-concurrent-source.mlir},\ 3*5468f884SOleksandr "Alex" Zinenko// RUN: func.func(transform-interpreter))" \ 4b7895f9dSAlex Zinenko// RUN: --verify-diagnostics 5b7895f9dSAlex Zinenko 6b7895f9dSAlex Zinenko// Exercising the pass on multiple functions of different lengths that may be 7b7895f9dSAlex Zinenko// processed concurrently. This should expose potential races. 8b7895f9dSAlex Zinenko 9b7895f9dSAlex Zinenkofunc.func @f1() { 10b7895f9dSAlex Zinenko // expected-remark @below {{matched}} 11b7895f9dSAlex Zinenko return 12b7895f9dSAlex Zinenko} 13b7895f9dSAlex Zinenko 14b7895f9dSAlex Zinenkofunc.func @f2() { 15b7895f9dSAlex Zinenko // expected-remark @below {{matched}} 16b7895f9dSAlex Zinenko return 17b7895f9dSAlex Zinenko} 18b7895f9dSAlex Zinenko 19b7895f9dSAlex Zinenkofunc.func @f3() { 20b7895f9dSAlex Zinenko call @f2() : () -> () 21b7895f9dSAlex Zinenko call @f2() : () -> () 22b7895f9dSAlex Zinenko call @f5() : () -> () 23b7895f9dSAlex Zinenko call @f7() : () -> () 24b7895f9dSAlex Zinenko call @f5() : () -> () 25b7895f9dSAlex Zinenko call @f5() : () -> () 26b7895f9dSAlex Zinenko // expected-remark @below {{matched}} 27b7895f9dSAlex Zinenko return 28b7895f9dSAlex Zinenko} 29b7895f9dSAlex Zinenko 30b7895f9dSAlex Zinenkofunc.func @f4() { 31b7895f9dSAlex Zinenko call @f3() : () -> () 32b7895f9dSAlex Zinenko call @f3() : () -> () 33b7895f9dSAlex Zinenko // expected-remark @below {{matched}} 34b7895f9dSAlex Zinenko return 35b7895f9dSAlex Zinenko} 36b7895f9dSAlex Zinenko 37b7895f9dSAlex Zinenkofunc.func @f5() { 38b7895f9dSAlex Zinenko call @f7() : () -> () 39b7895f9dSAlex Zinenko call @f7() : () -> () 40b7895f9dSAlex Zinenko call @f7() : () -> () 41b7895f9dSAlex Zinenko call @f7() : () -> () 42b7895f9dSAlex Zinenko call @f1() : () -> () 43b7895f9dSAlex Zinenko call @f1() : () -> () 44b7895f9dSAlex Zinenko call @f7() : () -> () 45b7895f9dSAlex Zinenko call @f7() : () -> () 46b7895f9dSAlex Zinenko call @f7() : () -> () 47b7895f9dSAlex Zinenko call @f7() : () -> () 48b7895f9dSAlex Zinenko // expected-remark @below {{matched}} 49b7895f9dSAlex Zinenko return 50b7895f9dSAlex Zinenko} 51b7895f9dSAlex Zinenko 52b7895f9dSAlex Zinenkofunc.func @f6() { 53b7895f9dSAlex Zinenko // expected-remark @below {{matched}} 54b7895f9dSAlex Zinenko return 55b7895f9dSAlex Zinenko} 56b7895f9dSAlex Zinenko 57b7895f9dSAlex Zinenkofunc.func @f7() { 58b7895f9dSAlex Zinenko // expected-remark @below {{matched}} 59b7895f9dSAlex Zinenko return 60b7895f9dSAlex Zinenko} 61