61 lines · plain
1// RUN: mlir-opt %s --pass-pipeline="builtin.module(\2// RUN: transform-preload-library{transform-library-paths=%p%{fs-sep}include%{fs-sep}test-interpreter-external-concurrent-source.mlir},\3// RUN: func.func(transform-interpreter))" \4// RUN: --verify-diagnostics5 6// Exercising the pass on multiple functions of different lengths that may be7// processed concurrently. This should expose potential races.8 9func.func @f1() {10 // expected-remark @below {{matched}}11 return12}13 14func.func @f2() {15 // expected-remark @below {{matched}}16 return17}18 19func.func @f3() {20 call @f2() : () -> ()21 call @f2() : () -> ()22 call @f5() : () -> ()23 call @f7() : () -> ()24 call @f5() : () -> ()25 call @f5() : () -> ()26 // expected-remark @below {{matched}}27 return28}29 30func.func @f4() {31 call @f3() : () -> ()32 call @f3() : () -> ()33 // expected-remark @below {{matched}}34 return35}36 37func.func @f5() {38 call @f7() : () -> ()39 call @f7() : () -> ()40 call @f7() : () -> ()41 call @f7() : () -> ()42 call @f1() : () -> ()43 call @f1() : () -> ()44 call @f7() : () -> ()45 call @f7() : () -> ()46 call @f7() : () -> ()47 call @f7() : () -> ()48 // expected-remark @below {{matched}}49 return50}51 52func.func @f6() {53 // expected-remark @below {{matched}}54 return55}56 57func.func @f7() {58 // expected-remark @below {{matched}}59 return60}61