Skip to content

Instantly share code, notes, and snippets.

@vivekkhandelwal1
Created March 2, 2023 14:20
Show Gist options
  • Save vivekkhandelwal1/8dc22faacf58d923d632ea960d3e308f to your computer and use it in GitHub Desktop.
Save vivekkhandelwal1/8dc22faacf58d923d632ea960d3e308f to your computer and use it in GitHub Desktop.
#loc = loc(unknown)
#loc1 = loc("<eval_with_key>.1064":5:27)
#loc3 = loc("<eval_with_key>.1064":8:16)
#map = affine_map<(d0, d1, d2, d3) -> (d0, d1, d2, d3)>
#map1 = affine_map<(d0) -> (d0)>
#map2 = affine_map<(d0, d1, d2, d3) -> (0, 0, 0, 0)>
#map3 = affine_map<(d0, d1, d2, d3) -> (d1, 0, 0)>
#map4 = affine_map<(d0, d1, d2, d3) -> (d2, 0)>
#map5 = affine_map<(d0, d1, d2, d3) -> (d3)>
#map6 = affine_map<(d0, d1) -> (d0, d1)>
#map7 = affine_map<(d0, d1) -> (d1, d0)>
module attributes {torch.debug_module_name = "GraphModule"} {
ml_program.global private mutable @global_seed(dense<0> : tensor<i64>) : tensor<i64> loc(#loc)
func.func @forward(%arg0: tensor<96xi64> loc(unknown), %arg1: tensor<1x640x96x96xf32> loc(unknown), %arg2: tensor<96x1xi64> loc(unknown), %arg3: tensor<640x640x3x3xf32> loc(unknown), %arg4: tensor<1x640x96x96xf32> loc(unknown)) -> tensor<1x640x48x48xf32> {
%cst = arith.constant 0.000000e+00 : f32 loc(#loc1)
%c2 = arith.constant 2 : index loc(#loc1)
%0 = tensor.empty() : tensor<640x640x3x3xf32> loc(#loc1)
%1 = linalg.fill ins(%cst : f32) outs(%0 : tensor<640x640x3x3xf32>) -> tensor<640x640x3x3xf32> loc(#loc1)
%2 = linalg.generic {indexing_maps = [#map], iterator_types = ["parallel", "parallel", "parallel", "parallel"]} outs(%1 : tensor<640x640x3x3xf32>) {
^bb0(%out: f32 loc("<eval_with_key>.1064":5:27)):
%25 = linalg.index 0 : index loc(#loc1)
%26 = linalg.index 1 : index loc(#loc1)
%27 = linalg.index 2 : index loc(#loc1)
%28 = linalg.index 3 : index loc(#loc1)
%29 = arith.subi %c2, %27 : index loc(#loc1)
%30 = arith.subi %c2, %28 : index loc(#loc1)
%extracted = tensor.extract %arg3[%26, %25, %29, %30] : tensor<640x640x3x3xf32> loc(#loc1)
linalg.yield %extracted : f32 loc(#loc1)
} -> tensor<640x640x3x3xf32> loc(#loc1)
%3 = tensor.empty() : tensor<1x640x98x98xf32> loc(#loc1)
%4 = linalg.fill ins(%cst : f32) outs(%3 : tensor<1x640x98x98xf32>) -> tensor<1x640x98x98xf32> loc(#loc1)
%inserted_slice = tensor.insert_slice %arg4 into %4[0, 0, 1, 1] [1, 640, 96, 96] [1, 1, 1, 1] : tensor<1x640x96x96xf32> into tensor<1x640x98x98xf32> loc(#loc1)
%5 = tensor.empty() : tensor<1x640x96x96xf32> loc(#loc1)
%6 = linalg.fill ins(%cst : f32) outs(%5 : tensor<1x640x96x96xf32>) -> tensor<1x640x96x96xf32> loc(#loc1)
%7 = linalg.conv_2d_nchw_fchw {dilations = dense<1> : vector<2xi64>, strides = dense<1> : vector<2xi64>} ins(%inserted_slice, %2 : tensor<1x640x98x98xf32>, tensor<640x640x3x3xf32>) outs(%6 : tensor<1x640x96x96xf32>) -> tensor<1x640x96x96xf32> loc(#loc1)
%8 = tensor.empty() : tensor<1x640x48x48xf32> loc(#loc2)
%9 = linalg.fill ins(%cst : f32) outs(%8 : tensor<1x640x48x48xf32>) -> tensor<1x640x48x48xf32> loc(#loc2)
%10 = tensor.empty() : tensor<1xi64> loc(#loc3)
%11 = linalg.generic {indexing_maps = [#map1], iterator_types = ["parallel"]} outs(%10 : tensor<1xi64>) {
^bb0(%out: i64 loc("<eval_with_key>.1064":8:16)):
%25 = linalg.index 0 : index loc(#loc3)
%26 = arith.index_cast %25 : index to i64 loc(#loc3)
linalg.yield %26 : i64 loc(#loc3)
} -> tensor<1xi64> loc(#loc3)
%expanded = tensor.expand_shape %11 [[0, 1, 2, 3]] : tensor<1xi64> into tensor<1x1x1x1xi64> loc(#loc3)
%12 = tensor.empty() : tensor<1x640x96x96xi64> loc(#loc3)
%13 = linalg.generic {indexing_maps = [#map2, #map], iterator_types = ["parallel", "parallel", "parallel", "parallel"]} ins(%expanded : tensor<1x1x1x1xi64>) outs(%12 : tensor<1x640x96x96xi64>) {
^bb0(%in: i64 loc("<eval_with_key>.1064":8:16), %out: i64 loc("<eval_with_key>.1064":8:16)):
linalg.yield %in : i64 loc(#loc3)
} -> tensor<1x640x96x96xi64> loc(#loc3)
%collapsed = tensor.collapse_shape %13 [[0, 1, 2, 3]] : tensor<1x640x96x96xi64> into tensor<5898240xi64> loc(#loc3)
%14 = tensor.empty() : tensor<640xi64> loc(#loc3)
%15 = linalg.generic {indexing_maps = [#map1], iterator_types = ["parallel"]} outs(%14 : tensor<640xi64>) {
^bb0(%out: i64 loc("<eval_with_key>.1064":8:16)):
%25 = linalg.index 0 : index loc(#loc3)
%26 = arith.index_cast %25 : index to i64 loc(#loc3)
linalg.yield %26 : i64 loc(#loc3)
} -> tensor<640xi64> loc(#loc3)
%expanded_0 = tensor.expand_shape %15 [[0, 1, 2]] : tensor<640xi64> into tensor<640x1x1xi64> loc(#loc3)
%16 = linalg.generic {indexing_maps = [#map3, #map], iterator_types = ["parallel", "parallel", "parallel", "parallel"]} ins(%expanded_0 : tensor<640x1x1xi64>) outs(%12 : tensor<1x640x96x96xi64>) {
^bb0(%in: i64 loc("<eval_with_key>.1064":8:16), %out: i64 loc("<eval_with_key>.1064":8:16)):
linalg.yield %in : i64 loc(#loc3)
} -> tensor<1x640x96x96xi64> loc(#loc3)
%collapsed_1 = tensor.collapse_shape %16 [[0, 1, 2, 3]] : tensor<1x640x96x96xi64> into tensor<5898240xi64> loc(#loc3)
%17 = linalg.generic {indexing_maps = [#map4, #map], iterator_types = ["parallel", "parallel", "parallel", "parallel"]} ins(%arg2 : tensor<96x1xi64>) outs(%12 : tensor<1x640x96x96xi64>) {
^bb0(%in: i64 loc("<eval_with_key>.1064":8:16), %out: i64 loc("<eval_with_key>.1064":8:16)):
linalg.yield %in : i64 loc(#loc3)
} -> tensor<1x640x96x96xi64> loc(#loc3)
%collapsed_2 = tensor.collapse_shape %17 [[0, 1, 2, 3]] : tensor<1x640x96x96xi64> into tensor<5898240xi64> loc(#loc3)
%18 = linalg.generic {indexing_maps = [#map5, #map], iterator_types = ["parallel", "parallel", "parallel", "parallel"]} ins(%arg0 : tensor<96xi64>) outs(%12 : tensor<1x640x96x96xi64>) {
^bb0(%in: i64 loc("<eval_with_key>.1064":8:16), %out: i64 loc("<eval_with_key>.1064":8:16)):
linalg.yield %in : i64 loc(#loc3)
} -> tensor<1x640x96x96xi64> loc(#loc3)
%collapsed_3 = tensor.collapse_shape %18 [[0, 1, 2, 3]] : tensor<1x640x96x96xi64> into tensor<5898240xi64> loc(#loc3)
%19 = tensor.empty() : tensor<23592960xi64> loc(#loc3)
%inserted_slice_4 = tensor.insert_slice %collapsed into %19[0] [5898240] [1] : tensor<5898240xi64> into tensor<23592960xi64> loc(#loc3)
%inserted_slice_5 = tensor.insert_slice %collapsed_1 into %inserted_slice_4[5898240] [5898240] [1] : tensor<5898240xi64> into tensor<23592960xi64> loc(#loc3)
%inserted_slice_6 = tensor.insert_slice %collapsed_2 into %inserted_slice_5[11796480] [5898240] [1] : tensor<5898240xi64> into tensor<23592960xi64> loc(#loc3)
%inserted_slice_7 = tensor.insert_slice %collapsed_3 into %inserted_slice_6[17694720] [5898240] [1] : tensor<5898240xi64> into tensor<23592960xi64> loc(#loc3)
%expanded_8 = tensor.expand_shape %inserted_slice_7 [[0, 1]] : tensor<23592960xi64> into tensor<4x5898240xi64> loc(#loc3)
%20 = tensor.empty() : tensor<5898240x4xi64> loc(#loc3)
%21 = linalg.generic {indexing_maps = [#map6, #map7], iterator_types = ["parallel", "parallel"]} ins(%expanded_8 : tensor<4x5898240xi64>) outs(%20 : tensor<5898240x4xi64>) {
^bb0(%in: i64 loc("<eval_with_key>.1064":8:16), %out: i64 loc("<eval_with_key>.1064":8:16)):
linalg.yield %in : i64 loc(#loc3)
} -> tensor<5898240x4xi64> loc(#loc3)
%collapsed_9 = tensor.collapse_shape %7 [[0, 1, 2, 3]] : tensor<1x640x96x96xf32> into tensor<5898240xf32> loc(#loc3)
%22 = tensor.empty() : tensor<5898240x4xi32> loc(#loc3)
%23 = linalg.generic {indexing_maps = [#map6, #map6], iterator_types = ["parallel", "parallel"]} ins(%21 : tensor<5898240x4xi64>) outs(%22 : tensor<5898240x4xi32>) {
^bb0(%in: i64 loc("<eval_with_key>.1064":8:16), %out: i32 loc("<eval_with_key>.1064":8:16)):
%25 = arith.trunci %in : i64 to i32 loc(#loc3)
linalg.yield %25 : i32 loc(#loc3)
} -> tensor<5898240x4xi32> loc(#loc3)
%24 = tm_tensor.scatter unique_indices(false) ins(%collapsed_9, %23 : tensor<5898240xf32>, tensor<5898240x4xi32>) outs(%9 : tensor<1x640x48x48xf32>) {
^bb0(%arg5: f32 loc("<eval_with_key>.1064":8:16), %arg6: f32 loc("<eval_with_key>.1064":8:16)):
%25 = arith.addf %arg6, %arg5 : f32 loc(#loc3)
tm_tensor.yield %25 : f32 loc(#loc3)
} -> tensor<1x640x48x48xf32> loc(#loc3)
return %24 : tensor<1x640x48x48xf32> loc(#loc)
} loc(#loc)
} loc(#loc)
#loc2 = loc("<eval_with_key>.1064":7:16)
{-#
external_resources: {
mlir_reproducer: {
pipeline: "builtin.module(func.func(iree-tm-tensor-to-linalg-ext), iree-import-public, iree-import-ml-program, iree-sanitize-module-names, iree-abi-wrap-entry-points{invocation-model=coarse-fences}, inline{default-pipeline= max-iterations=4 }, func.func(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse), symbol-dce, iree-util-demote-f64-to-f32, func.func(iree-flow-detach-elementwise-from-named-ops,linalg-named-op-conversion,iree-flow-convert-1x1-filter-conv2d-to-matmul),util.initializer(iree-flow-detach-elementwise-from-named-ops,linalg-named-op-conversion,iree-flow-convert-1x1-filter-conv2d-to-matmul), iree-flow-erase-unused-linalg-operands, iree-verify-input-legality, iree-flow-expand-tensor-shapes, iree-util-fixed-point-iterator{max-iterations=10 pipeline=builtin.module(func.func(iree-util-simplify-global-accesses),util.initializer(iree-util-simplify-global-accesses),iree-util-apply-patterns,iree-util-fold-globals,iree-util-ipo,func.func(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse),util.initializer(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse))}, iree-flow-tensor-pad-to-tensor-insert-slice{skip-one-linalg-use-case=false}, func.func(convert-elementwise-to-linalg,linalg-fold-unit-extent-dims{fold-one-trip-loops-only=false use-rank-reducing-slices=false},iree-flow-raise-special-ops,iree-flow-interchange-generic-ops,resolve-shaped-type-result-dims,canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-flow-fusion-of-tensor-ops{fuse-multi-use=false multi-use-fusion-iteration=2},linalg-detensorize{aggressive-mode=false},canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-flow-collapse-dims,iree-flow-split-reduction-ops,iree-flow-interchange-generic-ops,iree-flow-form-dispatch-regions{aggressive-fusion=false genereate-workload-region=true},iree-flow-collapse-dimensions,iree-flow-form-dispatch-workgroups{genereate-workload-region=true},iree-flow-capture-dispatch-dynamic-dims,canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-flow-initialize-empty-tensors{zero-fill=false}),util.initializer(convert-elementwise-to-linalg,linalg-fold-unit-extent-dims{fold-one-trip-loops-only=false use-rank-reducing-slices=false},iree-flow-raise-special-ops,iree-flow-interchange-generic-ops,resolve-shaped-type-result-dims,canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-flow-fusion-of-tensor-ops{fuse-multi-use=false multi-use-fusion-iteration=2},linalg-detensorize{aggressive-mode=false},canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-flow-collapse-dims,iree-flow-split-reduction-ops,iree-flow-interchange-generic-ops,iree-flow-form-dispatch-regions{aggressive-fusion=false genereate-workload-region=true},iree-flow-collapse-dimensions,iree-flow-form-dispatch-workgroups{genereate-workload-region=true},iree-flow-capture-dispatch-dynamic-dims,canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-flow-initialize-empty-tensors{zero-fill=false}), iree-flow-outline-dispatch-regions, flow.executable(iree-util-strip-debug-ops),func.func(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true}),util.initializer(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true}), iree-flow-deduplicate-executables, flow.executable(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse),func.func(iree-flow-cleanup-tensor-shapes,canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse),util.initializer(iree-flow-cleanup-tensor-shapes,canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse), symbol-dce, iree-stream-verify-input, iree-stream-outline-constants, func.func(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses),util.initializer(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses), iree-util-apply-patterns, iree-util-fold-globals, iree-util-fuse-globals, iree-util-ipo, iree-stream-conversion, iree-stream-verify-lowering-to-tensors, func.func(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses),util.initializer(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses), iree-util-apply-patterns, iree-util-fold-globals, iree-util-fuse-globals, iree-util-ipo, iree-util-combine-initializers, func.func(iree-stream-encode-host-tensors),stream.executable(iree-stream-encode-device-tensors),util.initializer(iree-stream-encode-host-tensors), iree-stream-materialize-builtins, func.func(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses),util.initializer(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses), iree-util-apply-patterns, iree-util-fold-globals, iree-util-fuse-globals, iree-util-ipo, func.func(iree-stream-materialize-copy-on-write),util.initializer(iree-stream-materialize-copy-on-write), iree-stream-elide-async-copies, func.func(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},iree-stream-emplace-allocations),util.initializer(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},iree-stream-emplace-allocations), iree-stream-refine-usage, func.func(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses),util.initializer(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses), iree-util-apply-patterns, iree-util-fold-globals, iree-util-fuse-globals, iree-util-ipo, func.func(iree-stream-schedule-execution,iree-stream-schedule-concurrency),util.initializer(iree-stream-schedule-execution,iree-stream-schedule-concurrency), iree-stream-propagate-timepoints, func.func(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses),util.initializer(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses), iree-util-apply-patterns, iree-util-fold-globals, iree-util-fuse-globals, iree-util-ipo, iree-stream-verify-lowering-to-async, func.func(iree-stream-schedule-allocation,iree-stream-pack-constants,iree-stream-pack-allocations,iree-stream-layout-slices),util.initializer(iree-stream-schedule-allocation,iree-stream-pack-constants,iree-stream-pack-allocations,iree-stream-layout-slices), iree-util-propagate-subranges, func.func(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses),util.initializer(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses), iree-util-apply-patterns, iree-util-fold-globals, iree-util-fuse-globals, iree-util-ipo, iree-stream-verify-lowering-to-cmd, func.func(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses),util.initializer(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses), iree-util-apply-patterns, iree-util-fold-globals, iree-util-fuse-globals, iree-util-ipo, func.func(convert-scf-to-cf),util.initializer(convert-scf-to-cf), iree-util-fixed-point-iterator{max-iterations=10 pipeline=builtin.module(func.func(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses),util.initializer(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses),iree-util-apply-patterns,iree-util-fold-globals,iree-util-fuse-globals,iree-util-ipo,iree-stream-elide-timepoints)}, iree-stream-fuse-dispatch-bindings{alias-mutable-bindings=false}, iree-stream-annotate-dispatch-arguments, iree-stream-pack-dispatch-operands, cse, iree-stream-fold-uniform-operands, iree-stream-memoize-channels, func.func(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses),util.initializer(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,iree-util-simplify-global-accesses), iree-util-apply-patterns, iree-util-fold-globals, iree-util-fuse-globals, iree-util-ipo, symbol-dce, canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true}, cse, func.func(iree-util-simplify-global-accesses),util.initializer(iree-util-simplify-global-accesses), iree-util-apply-patterns, iree-util-fold-globals, iree-util-fuse-globals, iree-hal-assign-target-devices{targets=cuda}, iree-hal-verify-target-environment, iree-hal-materialize-interfaces, hal.executable(iree-hal-translate-executables), iree-hal-conversion, iree-hal-fixup-legacy-sync, canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true}, cse, func.func(iree-util-simplify-global-accesses),util.initializer(iree-util-simplify-global-accesses), iree-util-apply-patterns, iree-util-fold-globals, iree-util-fuse-globals, iree-hal-link-executables, iree-hal-resolve-export-ordinals, iree-hal-materialize-resource-caches, func.func(iree-hal-inline-device-switches),util.initializer(iree-hal-inline-device-switches), iree-hal-memoize-device-queries, canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true}, cse, func.func(iree-util-simplify-global-accesses),util.initializer(iree-util-simplify-global-accesses), iree-util-apply-patterns, iree-util-fold-globals, iree-util-fuse-globals, func.func(iree-hal-elide-redundant-commands),util.initializer(iree-hal-elide-redundant-commands), lower-affine, func.func(convert-scf-to-cf),util.initializer(convert-scf-to-cf), iree-util-combine-initializers, hal.executable(iree-hal-serialize-executables), symbol-dce, iree-util-fixed-point-iterator{max-iterations=10 pipeline=builtin.module(canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true},cse,func.func(iree-util-simplify-global-accesses),util.initializer(iree-util-simplify-global-accesses),iree-util-apply-patterns,iree-util-fold-globals,iree-util-fuse-globals,iree-util-ipo)}, inline{default-pipeline= max-iterations=4 }, symbol-dce, func.func(scf-for-loop-canonicalization,affine-loop-coalescing,loop-invariant-code-motion,convert-scf-to-cf,lower-affine,arith-unsigned-when-equivalent),util.initializer(scf-for-loop-canonicalization,loop-invariant-code-motion,convert-scf-to-cf,lower-affine,arith-unsigned-when-equivalent), iree-util-propagate-subranges, canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true}, cse, func.func(iree-util-simplify-global-accesses),util.initializer(iree-util-simplify-global-accesses), iree-util-apply-patterns, iree-util-fold-globals, iree-util-fuse-globals, iree-vm-conversion, vm.module(iree-vm-hoist-inlined-rodata,iree-vm-deduplicate-rodata), canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true}, cse, func.func(iree-util-simplify-global-accesses),util.initializer(iree-util-simplify-global-accesses), iree-util-apply-patterns, iree-util-fold-globals, iree-util-fuse-globals, vm.module(iree-vm-resolve-rodata-loads), inline{default-pipeline= max-iterations=4 }, symbol-dce, canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true}, cse, func.func(iree-util-simplify-global-accesses),util.initializer(iree-util-simplify-global-accesses), iree-util-apply-patterns, iree-util-fold-globals, iree-util-fuse-globals, vm.module(iree-vm-global-initialization), canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true}, cse, canonicalize{ max-iterations=10 max-num-rewrites=-1 region-simplify=true test-convergence=false top-down=true}, vm.module(iree-vm-drop-empty-module-initializers), iree-util-drop-compiler-hints)",
disable_threading: false,
verify_each: true
}
}
#-}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment