blob: f31ac95b295474707d1204a88b134e5f342c6a42 [file] [edit]
// RUN: fir-opt -pass-pipeline='builtin.module(func.func(test-fir-alias-analysis-modref))' \
// RUN: --mlir-disable-threading %s -o /dev/null 2>&1 | FileCheck %s
// Test that fir.call modref can recognize Fortran user procedures
// after ExternalNameConversion pass.
// CHECK-LABEL: Testing : "test_modref_"
// CHECK: callee_procedure -> xx#0: NoModRef
func.func @test_modref_() {
%0 = fir.dummy_scope : !fir.dscope
%1 = fir.alloca f32 {bindc_name = "xx", uniq_name = "_QFtest_modrefExx"}
%2 = fir.declare %1 {test.ptr = "xx", uniq_name = "_QFtest_modrefExx"} : (!fir.ref<f32>) -> !fir.ref<f32>
fir.call @callee_() {test.ptr = "callee_procedure"} : () -> ()
return
}
func.func private @callee_() attributes {fir.internal_name = "_QPcallee"}