32 lines · plain
1// RUN: mlir-opt %s --log-actions-to=- --test-composite-fixed-point-pass -split-input-file --dump-pass-pipeline 2>&1 | FileCheck %s --check-prefixes=CHECK,PIPELINE2// RUN: mlir-opt %s --log-actions-to=- --composite-fixed-point-pass='name=TestCompositePass pipeline=any(canonicalize,cse)' -split-input-file | FileCheck %s3 4// Ensure the composite pass correctly prints its options.5// PIPELINE: builtin.module(6// PIPELINE-NEXT: composite-fixed-point-pass{max-iterations=10 name=TestCompositePass7// PIPELINE-SAME: pipeline=canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=normal test-convergence=false top-down=true},cse}8 9// CHECK-LABEL: running `TestCompositePass`10// CHECK: running `Canonicalizer`11// CHECK: running `CSE`12// CHECK-NOT: running `Canonicalizer`13// CHECK-NOT: running `CSE`14func.func @test() {15 return16}17 18// -----19 20// CHECK-LABEL: running `TestCompositePass`21// CHECK: running `Canonicalizer`22// CHECK: running `CSE`23// CHECK: running `Canonicalizer`24// CHECK: running `CSE`25// CHECK-NOT: running `Canonicalizer`26// CHECK-NOT: running `CSE`27func.func @test() {28// this constant will be canonicalized away, causing another pass iteration29 %0 = arith.constant 1.5 : f3230 return31}32