Skip to content

Latest commit

 

History

History
39 lines (34 loc) · 1.18 KB

MLIR.md

File metadata and controls

39 lines (34 loc) · 1.18 KB
module {
  func.func @add(%arg0: ui64) -> ui64 attributes {"function type" = "async", visibility = "pub"} {
    %0 = "mir.addi"(%arg0, %arg0) : (ui64, ui64) -> ui64
    return %0 : ui64
  }
}
"builtin.module"() ({
  "func.func"() ({
  ^bb0(%arg0: ui64):  // 2 preds: ^bb1, ^bb2
    "func.return"(%arg0) : (ui64) -> ()
  ^bb1:  // pred: ^bb3
    %0 = "mir.constant"() {value = 5 : i64} : () -> i64
    "mir.br"(%0)[^bb0] : (i64) -> ()
  ^bb2:  // pred: ^bb3
    %1 = "mir.constant"() {value = 6 : i64} : () -> i64
    "mir.br"(%1)[^bb0] : (i64) -> ()
  ^bb3(%2: ui64):  // no predecessors
    %3 = "mir.constant"() {value = true} : () -> i1
    "mir.cond_br"(%3)[^bb1, ^bb2] {operand_segment_sizes = array<i32: 1, 0, 0>} : (i1) -> ()
  }) {"function type" = "async", function_type = (ui64) -> ui64, sym_name = "add", visibility = "pub"} : () -> ()
"builtin.module"() ({
  "func.func"() ({
  ^bb0(%arg0: ui64, %arg1: ui64):
    %0 = "memref.alloc"() {operand_segment_sizes = array<i32: 0, 0>} : () -> memref<1xi64>
    "func.return"(%0) : (memref<1xi64>) -> ()
  }) {function_type = (ui64, ui64) -> ui64, sym_name = "add"} : () -> ()
}) : () -> ()

TODO: OperatorExpression