Created
October 9, 2021 01:48
-
-
Save stellaraccident/13c061a3c576c55d1355b336e85da0c6 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#loc1 = loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0) | |
#loc12 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":16:0) | |
#loc30 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0) | |
#loc88 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0) | |
#loc146 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0) | |
#loc204 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":16:0) | |
module @module { | |
func @main(%arg0: i32 loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0), %arg1: i32 loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0), %arg2: i32 loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0)) -> (i32, i32) { | |
%c-4_i32 = constant -4 : i32 loc(#loc2) | |
%c0_i32 = constant 0 : i32 loc(#loc2) | |
%c1 = constant 1 : index loc(#loc1) | |
%c256_i32 = constant 256 : i32 loc(#loc1) | |
%c0 = constant 0 : index loc(#loc1) | |
%c2 = constant 2 : index loc(#loc1) | |
%c78_i32 = constant 78 : i32 loc(#loc1) | |
%c3_i32 = constant 3 : i32 loc(#loc3) | |
%c22_i32 = constant 22 : i32 loc(#loc4) | |
%c4_i32 = constant 4 : i32 loc(#loc5) | |
%0 = iree.list.create : !iree.list<!iree.variant> loc(#loc1) | |
%1 = iree.list.create : !iree.list<!iree.variant> loc(#loc1) | |
%2 = iree.list.create : !iree.list<!iree.variant> loc(#loc1) | |
%3 = iree.list.create : !iree.list<!iree.variant> loc(#loc1) | |
iree.list.resize %3, %c2 : !iree.list<!iree.variant> loc(#loc1) | |
iree.list.set %3[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc1) | |
iree.list.set %3[%c1], %arg0 : !iree.list<!iree.variant>, i32 loc(#loc1) | |
iree.list.resize %0, %c2 : !iree.list<!iree.variant> loc(#loc1) | |
iree.list.set %0[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc1) | |
iree.list.set %0[%c1], %3 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc1) | |
%4 = iree.list.create : !iree.list<!iree.variant> loc(#loc1) | |
iree.list.resize %4, %c2 : !iree.list<!iree.variant> loc(#loc1) | |
iree.list.set %4[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc1) | |
iree.list.set %4[%c1], %arg1 : !iree.list<!iree.variant>, i32 loc(#loc1) | |
iree.list.resize %2, %c2 : !iree.list<!iree.variant> loc(#loc1) | |
iree.list.set %2[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc1) | |
iree.list.set %2[%c1], %4 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc1) | |
%5 = iree.list.create : !iree.list<!iree.variant> loc(#loc1) | |
iree.list.resize %5, %c2 : !iree.list<!iree.variant> loc(#loc1) | |
iree.list.set %5[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc1) | |
iree.list.set %5[%c1], %arg2 : !iree.list<!iree.variant>, i32 loc(#loc1) | |
iree.list.resize %1, %c2 : !iree.list<!iree.variant> loc(#loc1) | |
iree.list.set %1[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc1) | |
iree.list.set %1[%c1], %5 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc1) | |
%6 = iree.list.get %0[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc2) | |
%7 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc6) | |
%8:2 = call @pydmrtl$dynamic_binary_promote(%6, %7) : (!iree.list<!iree.variant>, !iree.list<!iree.variant>) -> (i32, !iree.list<!iree.variant>) loc(#loc2) | |
%9 = cmpi eq, %c0_i32, %8#0 : i32 loc(#loc2) | |
cond_br %9, ^bb1, ^bb25(%8#0, %c0_i32 : i32, i32) loc(#loc2) | |
^bb1: // pred: ^bb0 | |
%10 = iree.list.size %8#1 : !iree.list<!iree.variant> loc(#loc2) | |
%11 = cmpi eq, %c2, %10 : index loc(#loc2) | |
cond_br %11, ^bb2, ^bb31 loc(#loc2) | |
^bb2: // pred: ^bb1 | |
%12 = iree.list.get %8#1[%c0] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc2) | |
%13 = iree.list.get %8#1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc2) | |
br ^bb3(%c0_i32, %12, %13 : i32, !iree.list<!iree.variant>, !iree.list<!iree.variant>) loc(#loc2) | |
^bb3(%14: i32 loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0), %15: !iree.list<!iree.variant> loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0), %16: !iree.list<!iree.variant> loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0)): // 2 preds: ^bb2, ^bb31 | |
%17 = cmpi eq, %c0_i32, %14 : i32 loc(#loc2) | |
cond_br %17, ^bb4, ^bb25(%14, %c0_i32 : i32, i32) loc(#loc2) | |
^bb4: // pred: ^bb3 | |
%18:2 = call @pydmrtl$apply_binary_sub(%15, %16) : (!iree.list<!iree.variant>, !iree.list<!iree.variant>) -> (i32, !iree.list<!iree.variant>) loc(#loc2) | |
%19 = cmpi eq, %c0_i32, %18#0 : i32 loc(#loc2) | |
cond_br %19, ^bb5, ^bb25(%18#0, %c0_i32 : i32, i32) loc(#loc2) | |
^bb5: // pred: ^bb4 | |
%20:2 = call @pydmrtl$object_as_bool(%18#1) : (!iree.list<!iree.variant>) -> (i32, i1) loc(#loc2) | |
%21 = cmpi eq, %c0_i32, %20#0 : i32 loc(#loc2) | |
cond_br %21, ^bb6, ^bb25(%20#0, %c0_i32 : i32, i32) loc(#loc2) | |
^bb6: // pred: ^bb5 | |
cond_br %20#1, ^bb7, ^bb26 loc(#loc7) | |
^bb7: // pred: ^bb6 | |
%22 = iree.list.get %0[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc8) | |
%23 = iree.list.create : !iree.list<!iree.variant> loc(#loc3) | |
iree.list.resize %23, %c2 : !iree.list<!iree.variant> loc(#loc3) | |
iree.list.set %23[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc3) | |
iree.list.set %23[%c1], %c3_i32 : !iree.list<!iree.variant>, i32 loc(#loc3) | |
%24:2 = call @pydmrtl$dynamic_binary_promote(%23, %22) : (!iree.list<!iree.variant>, !iree.list<!iree.variant>) -> (i32, !iree.list<!iree.variant>) loc(#loc3) | |
%25 = cmpi eq, %c0_i32, %24#0 : i32 loc(#loc3) | |
cond_br %25, ^bb8, ^bb25(%24#0, %c0_i32 : i32, i32) loc(#loc3) | |
^bb8: // pred: ^bb7 | |
%26 = iree.list.size %24#1 : !iree.list<!iree.variant> loc(#loc3) | |
%27 = cmpi eq, %c2, %26 : index loc(#loc3) | |
cond_br %27, ^bb9, ^bb33 loc(#loc3) | |
^bb9: // pred: ^bb8 | |
%28 = iree.list.get %24#1[%c0] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc3) | |
%29 = iree.list.get %24#1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc3) | |
br ^bb10(%c0_i32, %28, %29 : i32, !iree.list<!iree.variant>, !iree.list<!iree.variant>) loc(#loc3) | |
^bb10(%30: i32 loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0), %31: !iree.list<!iree.variant> loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0), %32: !iree.list<!iree.variant> loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0)): // 2 preds: ^bb9, ^bb33 | |
%33 = cmpi eq, %c0_i32, %30 : i32 loc(#loc3) | |
cond_br %33, ^bb11, ^bb25(%30, %c0_i32 : i32, i32) loc(#loc3) | |
^bb11: // pred: ^bb10 | |
%34:2 = call @pydmrtl$apply_binary_mul(%31, %32) : (!iree.list<!iree.variant>, !iree.list<!iree.variant>) -> (i32, !iree.list<!iree.variant>) loc(#loc3) | |
%35 = cmpi eq, %c0_i32, %34#0 : i32 loc(#loc3) | |
cond_br %35, ^bb12, ^bb25(%34#0, %c0_i32 : i32, i32) loc(#loc3) | |
^bb12: // pred: ^bb11 | |
%36 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc9) | |
%37 = iree.list.create : !iree.list<!iree.variant> loc(#loc4) | |
iree.list.resize %37, %c2 : !iree.list<!iree.variant> loc(#loc4) | |
iree.list.set %37[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc4) | |
iree.list.set %37[%c1], %c22_i32 : !iree.list<!iree.variant>, i32 loc(#loc4) | |
%38:2 = call @pydmrtl$dynamic_binary_promote(%37, %36) : (!iree.list<!iree.variant>, !iree.list<!iree.variant>) -> (i32, !iree.list<!iree.variant>) loc(#loc4) | |
%39 = cmpi eq, %c0_i32, %38#0 : i32 loc(#loc4) | |
cond_br %39, ^bb13, ^bb25(%38#0, %c0_i32 : i32, i32) loc(#loc4) | |
^bb13: // pred: ^bb12 | |
%40 = iree.list.size %38#1 : !iree.list<!iree.variant> loc(#loc4) | |
%41 = cmpi eq, %c2, %40 : index loc(#loc4) | |
cond_br %41, ^bb14, ^bb34 loc(#loc4) | |
^bb14: // pred: ^bb13 | |
%42 = iree.list.get %38#1[%c0] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc4) | |
%43 = iree.list.get %38#1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc4) | |
br ^bb15(%c0_i32, %42, %43 : i32, !iree.list<!iree.variant>, !iree.list<!iree.variant>) loc(#loc4) | |
^bb15(%44: i32 loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0), %45: !iree.list<!iree.variant> loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0), %46: !iree.list<!iree.variant> loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0)): // 2 preds: ^bb14, ^bb34 | |
%47 = cmpi eq, %c0_i32, %44 : i32 loc(#loc4) | |
cond_br %47, ^bb16, ^bb25(%44, %c0_i32 : i32, i32) loc(#loc4) | |
^bb16: // pred: ^bb15 | |
%48:2 = call @pydmrtl$apply_binary_mul(%45, %46) : (!iree.list<!iree.variant>, !iree.list<!iree.variant>) -> (i32, !iree.list<!iree.variant>) loc(#loc4) | |
%49 = cmpi eq, %c0_i32, %48#0 : i32 loc(#loc4) | |
cond_br %49, ^bb17, ^bb25(%48#0, %c0_i32 : i32, i32) loc(#loc4) | |
^bb17: // pred: ^bb16 | |
%50:2 = call @pydmrtl$dynamic_binary_promote(%34#1, %48#1) : (!iree.list<!iree.variant>, !iree.list<!iree.variant>) -> (i32, !iree.list<!iree.variant>) loc(#loc3) | |
%51 = cmpi eq, %c0_i32, %50#0 : i32 loc(#loc3) | |
cond_br %51, ^bb18, ^bb25(%50#0, %c0_i32 : i32, i32) loc(#loc3) | |
^bb18: // pred: ^bb17 | |
%52 = iree.list.size %50#1 : !iree.list<!iree.variant> loc(#loc3) | |
%53 = cmpi eq, %c2, %52 : index loc(#loc3) | |
cond_br %53, ^bb19, ^bb35 loc(#loc3) | |
^bb19: // pred: ^bb18 | |
%54 = iree.list.get %50#1[%c0] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc3) | |
%55 = iree.list.get %50#1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc3) | |
br ^bb20(%c0_i32, %54, %55 : i32, !iree.list<!iree.variant>, !iree.list<!iree.variant>) loc(#loc3) | |
^bb20(%56: i32 loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0), %57: !iree.list<!iree.variant> loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0), %58: !iree.list<!iree.variant> loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0)): // 2 preds: ^bb19, ^bb35 | |
%59 = cmpi eq, %c0_i32, %56 : i32 loc(#loc3) | |
cond_br %59, ^bb21, ^bb25(%56, %c0_i32 : i32, i32) loc(#loc3) | |
^bb21: // pred: ^bb20 | |
%60:2 = call @pydmrtl$apply_binary_add(%57, %58) : (!iree.list<!iree.variant>, !iree.list<!iree.variant>) -> (i32, !iree.list<!iree.variant>) loc(#loc3) | |
%61 = cmpi eq, %c0_i32, %60#0 : i32 loc(#loc3) | |
cond_br %61, ^bb22(%60#1, %60#1 : !iree.list<!iree.variant>, !iree.list<!iree.variant>), ^bb25(%60#0, %c0_i32 : i32, i32) loc(#loc3) | |
^bb22(%62: !iree.list<!iree.variant> loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0), %63: !iree.list<!iree.variant> loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0)): // 2 preds: ^bb21, ^bb30 | |
%64 = iree.list.get %62[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc3) | |
%65 = cmpi eq, %c78_i32, %64 : i32 loc(#loc3) | |
cond_br %65, ^bb23(%63 : !iree.list<!iree.variant>), ^bb24(%c-4_i32, %c0_i32 : i32, i32) loc(#loc3) | |
^bb23(%66: !iree.list<!iree.variant> loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0)): // pred: ^bb22 | |
%67 = iree.list.get %66[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc3) | |
br ^bb24(%c0_i32, %67 : i32, i32) loc(#loc3) | |
^bb24(%68: i32 loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0), %69: i32 loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0)): // 2 preds: ^bb22, ^bb23 | |
%70 = cmpi eq, %c0_i32, %68 : i32 loc(#loc3) | |
cond_br %70, ^bb25(%c0_i32, %69 : i32, i32), ^bb25(%68, %c0_i32 : i32, i32) loc(#loc3) | |
^bb25(%71: i32 loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0), %72: i32 loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0)): // 18 preds: ^bb0, ^bb3, ^bb4, ^bb5, ^bb7, ^bb10, ^bb11, ^bb12, ^bb15, ^bb16, ^bb17, ^bb20, ^bb21, ^bb24, ^bb24, ^bb26, ^bb29, ^bb30 | |
return %71, %72 : i32, i32 loc(#loc10) | |
^bb26: // pred: ^bb6 | |
%73 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc11) | |
%74 = iree.list.create : !iree.list<!iree.variant> loc(#loc5) | |
iree.list.resize %74, %c2 : !iree.list<!iree.variant> loc(#loc5) | |
iree.list.set %74[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc5) | |
iree.list.set %74[%c1], %c4_i32 : !iree.list<!iree.variant>, i32 loc(#loc5) | |
%75:2 = call @pydmrtl$dynamic_binary_promote(%74, %73) : (!iree.list<!iree.variant>, !iree.list<!iree.variant>) -> (i32, !iree.list<!iree.variant>) loc(#loc5) | |
%76 = cmpi eq, %c0_i32, %75#0 : i32 loc(#loc5) | |
cond_br %76, ^bb27, ^bb25(%75#0, %c0_i32 : i32, i32) loc(#loc5) | |
^bb27: // pred: ^bb26 | |
%77 = iree.list.size %75#1 : !iree.list<!iree.variant> loc(#loc5) | |
%78 = cmpi eq, %c2, %77 : index loc(#loc5) | |
cond_br %78, ^bb28, ^bb32 loc(#loc5) | |
^bb28: // pred: ^bb27 | |
%79 = iree.list.get %75#1[%c0] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc5) | |
%80 = iree.list.get %75#1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc5) | |
br ^bb29(%c0_i32, %79, %80 : i32, !iree.list<!iree.variant>, !iree.list<!iree.variant>) loc(#loc5) | |
^bb29(%81: i32 loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0), %82: !iree.list<!iree.variant> loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0), %83: !iree.list<!iree.variant> loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":28:0)): // 2 preds: ^bb28, ^bb32 | |
%84 = cmpi eq, %c0_i32, %81 : i32 loc(#loc5) | |
cond_br %84, ^bb30, ^bb25(%81, %c0_i32 : i32, i32) loc(#loc5) | |
^bb30: // pred: ^bb29 | |
%85:2 = call @pydmrtl$apply_binary_mul(%82, %83) : (!iree.list<!iree.variant>, !iree.list<!iree.variant>) -> (i32, !iree.list<!iree.variant>) loc(#loc5) | |
%86 = cmpi eq, %c0_i32, %85#0 : i32 loc(#loc5) | |
cond_br %86, ^bb22(%85#1, %85#1 : !iree.list<!iree.variant>, !iree.list<!iree.variant>), ^bb25(%85#0, %c0_i32 : i32, i32) loc(#loc5) | |
^bb31: // pred: ^bb1 | |
%87 = iree.list.create : !iree.list<!iree.variant> loc(#loc2) | |
%88 = iree.list.create : !iree.list<!iree.variant> loc(#loc2) | |
br ^bb3(%c-4_i32, %87, %88 : i32, !iree.list<!iree.variant>, !iree.list<!iree.variant>) loc(#loc2) | |
^bb32: // pred: ^bb27 | |
%89 = iree.list.create : !iree.list<!iree.variant> loc(#loc5) | |
%90 = iree.list.create : !iree.list<!iree.variant> loc(#loc5) | |
br ^bb29(%c-4_i32, %89, %90 : i32, !iree.list<!iree.variant>, !iree.list<!iree.variant>) loc(#loc5) | |
^bb33: // pred: ^bb8 | |
%91 = iree.list.create : !iree.list<!iree.variant> loc(#loc3) | |
%92 = iree.list.create : !iree.list<!iree.variant> loc(#loc3) | |
br ^bb10(%c-4_i32, %91, %92 : i32, !iree.list<!iree.variant>, !iree.list<!iree.variant>) loc(#loc3) | |
^bb34: // pred: ^bb13 | |
%93 = iree.list.create : !iree.list<!iree.variant> loc(#loc4) | |
%94 = iree.list.create : !iree.list<!iree.variant> loc(#loc4) | |
br ^bb15(%c-4_i32, %93, %94 : i32, !iree.list<!iree.variant>, !iree.list<!iree.variant>) loc(#loc4) | |
^bb35: // pred: ^bb18 | |
%95 = iree.list.create : !iree.list<!iree.variant> loc(#loc3) | |
%96 = iree.list.create : !iree.list<!iree.variant> loc(#loc3) | |
br ^bb20(%c-4_i32, %95, %96 : i32, !iree.list<!iree.variant>, !iree.list<!iree.variant>) loc(#loc3) | |
} loc(#loc1) | |
func private @pydmrtl$dynamic_binary_promote(%arg0: !iree.list<!iree.variant> loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":16:0), %arg1: !iree.list<!iree.variant> loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":16:0)) -> (i32, !iree.list<!iree.variant>) { | |
%c-3_i32 = constant -3 : i32 loc(#loc13) | |
%c0_i32 = constant 0 : i32 loc(#loc14) | |
%c78_i32 = constant 78 : i32 loc(#loc15) | |
%c0 = constant 0 : index loc(#loc12) | |
%c1 = constant 1 : index loc(#loc12) | |
%c256_i32 = constant 256 : i32 loc(#loc12) | |
%c2 = constant 2 : index loc(#loc12) | |
%c1_i32 = constant 1 : i32 loc(#loc14) | |
%c6_i32 = constant 6 : i32 loc(#loc14) | |
%0 = iree.list.create : !iree.list<!iree.variant> loc(#loc12) | |
%1 = iree.list.create : !iree.list<!iree.variant> loc(#loc12) | |
%2 = iree.list.create : !iree.list<!iree.variant> loc(#loc12) | |
%3 = iree.list.create : !iree.list<!iree.variant> loc(#loc12) | |
iree.list.resize %3, %c2 : !iree.list<!iree.variant> loc(#loc12) | |
iree.list.set %3[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc12) | |
iree.list.set %3[%c1], %arg0 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc12) | |
iree.list.resize %1, %c2 : !iree.list<!iree.variant> loc(#loc12) | |
iree.list.set %1[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc12) | |
iree.list.set %1[%c1], %arg1 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc12) | |
%4 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc16) | |
%5 = iree.list.get %4[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc17) | |
%6 = iree.list.create : !iree.list<!iree.variant> loc(#loc15) | |
iree.list.resize %6, %c2 : !iree.list<!iree.variant> loc(#loc15) | |
iree.list.set %6[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc15) | |
iree.list.set %6[%c1], %5 : !iree.list<!iree.variant>, i32 loc(#loc15) | |
iree.list.resize %2, %c2 : !iree.list<!iree.variant> loc(#loc15) | |
iree.list.set %2[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc15) | |
iree.list.set %2[%c1], %6 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc15) | |
%7 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc18) | |
%8 = iree.list.get %7[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc19) | |
%9 = iree.list.create : !iree.list<!iree.variant> loc(#loc20) | |
iree.list.resize %9, %c2 : !iree.list<!iree.variant> loc(#loc20) | |
iree.list.set %9[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc20) | |
iree.list.set %9[%c1], %8 : !iree.list<!iree.variant>, i32 loc(#loc20) | |
iree.list.resize %0, %c2 : !iree.list<!iree.variant> loc(#loc20) | |
iree.list.set %0[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc20) | |
iree.list.set %0[%c1], %9 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc20) | |
%10 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc21) | |
%11 = iree.list.get %10[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc14) | |
%12 = cmpi eq, %c78_i32, %11 : i32 loc(#loc14) | |
cond_br %12, ^bb1, ^bb2(%c0_i32 : i32) loc(#loc14) | |
^bb1: // pred: ^bb0 | |
%13 = iree.list.get %10[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc14) | |
br ^bb2(%13 : i32) loc(#loc14) | |
^bb2(%14: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":16:0)): // 2 preds: ^bb0, ^bb1 | |
%15 = shift_right_signed %14, %c6_i32 : i32 loc(#loc14) | |
%16 = cmpi eq, %15, %c1_i32 : i32 loc(#loc14) | |
cond_br %16, ^bb3, ^bb7 loc(#loc22) | |
^bb3: // pred: ^bb2 | |
%17 = iree.list.get %0[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc23) | |
%18 = iree.list.get %17[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc24) | |
%19 = cmpi eq, %c78_i32, %18 : i32 loc(#loc24) | |
cond_br %19, ^bb4, ^bb5(%c0_i32 : i32) loc(#loc24) | |
^bb4: // pred: ^bb3 | |
%20 = iree.list.get %17[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc24) | |
br ^bb5(%20 : i32) loc(#loc24) | |
^bb5(%21: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":16:0)): // 2 preds: ^bb3, ^bb4 | |
%22 = shift_right_signed %21, %c6_i32 : i32 loc(#loc24) | |
%23 = cmpi eq, %22, %c1_i32 : i32 loc(#loc24) | |
cond_br %23, ^bb6, ^bb7 loc(#loc25) | |
^bb6: // pred: ^bb5 | |
%24 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc26) | |
%25 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc27) | |
%26 = iree.list.create %c2 : !iree.list<!iree.variant> loc(#loc26) | |
iree.list.resize %26, %c2 : !iree.list<!iree.variant> loc(#loc26) | |
iree.list.set %26[%c0], %24 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc26) | |
iree.list.set %26[%c1], %25 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc26) | |
return %c0_i32, %26 : i32, !iree.list<!iree.variant> loc(#loc28) | |
^bb7: // 2 preds: ^bb2, ^bb5 | |
%27 = iree.list.create %c0 : !iree.list<!iree.variant> loc(#loc29) | |
iree.list.resize %27, %c0 : !iree.list<!iree.variant> loc(#loc29) | |
%28 = iree.list.create : !iree.list<!iree.variant> loc(#loc13) | |
return %c-3_i32, %28 : i32, !iree.list<!iree.variant> loc(#loc13) | |
} loc(#loc12) | |
func private @pydmrtl$apply_binary_add(%arg0: !iree.list<!iree.variant> loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0), %arg1: !iree.list<!iree.variant> loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0)) -> (i32, !iree.list<!iree.variant>) { | |
%c0_i64 = constant 0 : i64 loc(#loc31) | |
%cst = constant 0.000000e+00 : f32 loc(#loc32) | |
%c-3_i32 = constant -3 : i32 loc(#loc33) | |
%c90_i32 = constant 90 : i32 loc(#loc32) | |
%c79_i32 = constant 79 : i32 loc(#loc31) | |
%c78_i32 = constant 78 : i32 loc(#loc34) | |
%c0 = constant 0 : index loc(#loc30) | |
%c1 = constant 1 : index loc(#loc30) | |
%c256_i32 = constant 256 : i32 loc(#loc30) | |
%c2 = constant 2 : index loc(#loc30) | |
%c0_i32 = constant 0 : i32 loc(#loc35) | |
%c6_i32 = constant 6 : i32 loc(#loc36) | |
%c2_i32 = constant 2 : i32 loc(#loc37) | |
%c3_i32 = constant 3 : i32 loc(#loc38) | |
%c60_i32 = constant 60 : i32 loc(#loc37) | |
%c1_i32 = constant 1 : i32 loc(#loc36) | |
%0 = iree.list.create : !iree.list<!iree.variant> loc(#loc30) | |
%1 = iree.list.create : !iree.list<!iree.variant> loc(#loc30) | |
%2 = iree.list.create : !iree.list<!iree.variant> loc(#loc30) | |
%3 = iree.list.create : !iree.list<!iree.variant> loc(#loc30) | |
%4 = iree.list.create : !iree.list<!iree.variant> loc(#loc30) | |
%5 = iree.list.create : !iree.list<!iree.variant> loc(#loc30) | |
iree.list.resize %3, %c2 : !iree.list<!iree.variant> loc(#loc30) | |
iree.list.set %3[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc30) | |
iree.list.set %3[%c1], %arg0 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc30) | |
iree.list.resize %2, %c2 : !iree.list<!iree.variant> loc(#loc30) | |
iree.list.set %2[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc30) | |
iree.list.set %2[%c1], %arg1 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc30) | |
%6 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc39) | |
%7 = iree.list.get %6[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc40) | |
%8 = iree.list.create : !iree.list<!iree.variant> loc(#loc34) | |
iree.list.resize %8, %c2 : !iree.list<!iree.variant> loc(#loc34) | |
iree.list.set %8[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc34) | |
iree.list.set %8[%c1], %7 : !iree.list<!iree.variant>, i32 loc(#loc34) | |
iree.list.resize %1, %c2 : !iree.list<!iree.variant> loc(#loc34) | |
iree.list.set %1[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc34) | |
iree.list.set %1[%c1], %8 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc34) | |
%9 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc41) | |
%10 = iree.list.get %9[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc42) | |
%11 = iree.list.create : !iree.list<!iree.variant> loc(#loc43) | |
iree.list.resize %11, %c2 : !iree.list<!iree.variant> loc(#loc43) | |
iree.list.set %11[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc43) | |
iree.list.set %11[%c1], %10 : !iree.list<!iree.variant>, i32 loc(#loc43) | |
iree.list.resize %5, %c2 : !iree.list<!iree.variant> loc(#loc43) | |
iree.list.set %5[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc43) | |
iree.list.set %5[%c1], %11 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc43) | |
%12 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc44) | |
%13 = iree.list.get %12[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc45) | |
%14 = cmpi eq, %c78_i32, %13 : i32 loc(#loc45) | |
cond_br %14, ^bb1, ^bb2(%c0_i32 : i32) loc(#loc45) | |
^bb1: // pred: ^bb0 | |
%15 = iree.list.get %12[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc45) | |
br ^bb2(%15 : i32) loc(#loc45) | |
^bb2(%16: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0)): // 2 preds: ^bb0, ^bb1 | |
%17 = iree.list.get %5[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc46) | |
%18 = iree.list.get %17[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc47) | |
%19 = cmpi eq, %c78_i32, %18 : i32 loc(#loc47) | |
cond_br %19, ^bb3, ^bb4(%c0_i32 : i32) loc(#loc47) | |
^bb3: // pred: ^bb2 | |
%20 = iree.list.get %17[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc47) | |
br ^bb4(%20 : i32) loc(#loc47) | |
^bb4(%21: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0)): // 2 preds: ^bb2, ^bb3 | |
%22 = cmpi eq, %16, %21 : i32 loc(#loc47) | |
cond_br %22, ^bb5, ^bb42 loc(#loc48) | |
^bb5: // pred: ^bb4 | |
%23 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc49) | |
%24 = iree.list.get %23[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc36) | |
%25 = cmpi eq, %c78_i32, %24 : i32 loc(#loc36) | |
cond_br %25, ^bb6, ^bb7(%c0_i32 : i32) loc(#loc36) | |
^bb6: // pred: ^bb5 | |
%26 = iree.list.get %23[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc36) | |
br ^bb7(%26 : i32) loc(#loc36) | |
^bb7(%27: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0)): // 2 preds: ^bb5, ^bb6 | |
%28 = shift_right_signed %27, %c6_i32 : i32 loc(#loc36) | |
%29 = cmpi eq, %28, %c1_i32 : i32 loc(#loc36) | |
cond_br %29, ^bb8, ^bb42 loc(#loc50) | |
^bb8: // pred: ^bb7 | |
%30 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc51) | |
%31 = iree.list.get %30[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc37) | |
%32 = cmpi eq, %c78_i32, %31 : i32 loc(#loc37) | |
cond_br %32, ^bb9, ^bb10(%c0_i32 : i32) loc(#loc37) | |
^bb9: // pred: ^bb8 | |
%33 = iree.list.get %30[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc37) | |
br ^bb10(%33 : i32) loc(#loc37) | |
^bb10(%34: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0)): // 2 preds: ^bb8, ^bb9 | |
%35 = and %34, %c60_i32 : i32 loc(#loc37) | |
%36 = shift_right_signed %35, %c2_i32 : i32 loc(#loc37) | |
%37 = iree.list.create : !iree.list<!iree.variant> loc(#loc52) | |
iree.list.resize %37, %c2 : !iree.list<!iree.variant> loc(#loc52) | |
iree.list.set %37[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc52) | |
iree.list.set %37[%c1], %36 : !iree.list<!iree.variant>, i32 loc(#loc52) | |
iree.list.resize %4, %c2 : !iree.list<!iree.variant> loc(#loc52) | |
iree.list.set %4[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc52) | |
iree.list.set %4[%c1], %37 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc52) | |
%38 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc53) | |
%39 = iree.list.get %38[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc38) | |
%40 = cmpi eq, %c78_i32, %39 : i32 loc(#loc38) | |
cond_br %40, ^bb11, ^bb12(%c0_i32 : i32) loc(#loc38) | |
^bb11: // pred: ^bb10 | |
%41 = iree.list.get %38[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc38) | |
br ^bb12(%41 : i32) loc(#loc38) | |
^bb12(%42: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0)): // 2 preds: ^bb10, ^bb11 | |
%43 = and %42, %c3_i32 : i32 loc(#loc38) | |
%44 = iree.list.create : !iree.list<!iree.variant> loc(#loc54) | |
iree.list.resize %44, %c2 : !iree.list<!iree.variant> loc(#loc54) | |
iree.list.set %44[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc54) | |
iree.list.set %44[%c1], %43 : !iree.list<!iree.variant>, i32 loc(#loc54) | |
iree.list.resize %0, %c2 : !iree.list<!iree.variant> loc(#loc54) | |
iree.list.set %0[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc54) | |
iree.list.set %0[%c1], %44 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc54) | |
%45 = iree.list.get %4[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc55) | |
%46 = iree.list.get %45[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc56) | |
%47 = cmpi eq, %c78_i32, %46 : i32 loc(#loc56) | |
cond_br %47, ^bb13, ^bb14(%c0_i32 : i32) loc(#loc56) | |
^bb13: // pred: ^bb12 | |
%48 = iree.list.get %45[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc56) | |
br ^bb14(%48 : i32) loc(#loc56) | |
^bb14(%49: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0)): // 2 preds: ^bb12, ^bb13 | |
%50 = cmpi sle, %49, %c3_i32 : i32 loc(#loc57) | |
cond_br %50, ^bb15, ^bb31 loc(#loc58) | |
^bb15: // pred: ^bb14 | |
%51 = iree.list.get %0[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc59) | |
%52 = iree.list.get %51[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc60) | |
%53 = cmpi eq, %c78_i32, %52 : i32 loc(#loc60) | |
cond_br %53, ^bb16, ^bb17(%c0_i32 : i32) loc(#loc60) | |
^bb16: // pred: ^bb15 | |
%54 = iree.list.get %51[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc60) | |
br ^bb17(%54 : i32) loc(#loc60) | |
^bb17(%55: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0)): // 2 preds: ^bb15, ^bb16 | |
%56 = cmpi eq, %55, %c2_i32 : i32 loc(#loc61) | |
cond_br %56, ^bb18, ^bb23 loc(#loc62) | |
^bb18: // pred: ^bb17 | |
%57 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc63) | |
%58 = iree.list.get %57[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc64) | |
%59 = cmpi eq, %c78_i32, %58 : i32 loc(#loc64) | |
cond_br %59, ^bb19, ^bb20(%c0_i32 : i32) loc(#loc64) | |
^bb19: // pred: ^bb18 | |
%60 = iree.list.get %57[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc64) | |
br ^bb20(%60 : i32) loc(#loc64) | |
^bb20(%61: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0)): // 2 preds: ^bb18, ^bb19 | |
%62 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc65) | |
%63 = iree.list.get %62[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc66) | |
%64 = cmpi eq, %c78_i32, %63 : i32 loc(#loc66) | |
cond_br %64, ^bb21, ^bb22(%c0_i32 : i32) loc(#loc66) | |
^bb21: // pred: ^bb20 | |
%65 = iree.list.get %62[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc66) | |
br ^bb22(%65 : i32) loc(#loc66) | |
^bb22(%66: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0)): // 2 preds: ^bb20, ^bb21 | |
%67 = addi %61, %66 : i32 loc(#loc64) | |
%68 = iree.list.create : !iree.list<!iree.variant> loc(#loc64) | |
iree.list.resize %68, %c2 : !iree.list<!iree.variant> loc(#loc64) | |
iree.list.set %68[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc64) | |
iree.list.set %68[%c1], %67 : !iree.list<!iree.variant>, i32 loc(#loc64) | |
return %c0_i32, %68 : i32, !iree.list<!iree.variant> loc(#loc67) | |
^bb23: // pred: ^bb17 | |
%69 = iree.list.get %0[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc68) | |
%70 = iree.list.get %69[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc69) | |
%71 = cmpi eq, %c78_i32, %70 : i32 loc(#loc69) | |
cond_br %71, ^bb24, ^bb25(%c0_i32 : i32) loc(#loc69) | |
^bb24: // pred: ^bb23 | |
%72 = iree.list.get %69[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc69) | |
br ^bb25(%72 : i32) loc(#loc69) | |
^bb25(%73: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0)): // 2 preds: ^bb23, ^bb24 | |
%74 = cmpi eq, %73, %c3_i32 : i32 loc(#loc70) | |
cond_br %74, ^bb26, ^bb42 loc(#loc71) | |
^bb26: // pred: ^bb25 | |
%75 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc72) | |
%76 = iree.list.get %75[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc31) | |
%77 = cmpi eq, %c79_i32, %76 : i32 loc(#loc31) | |
cond_br %77, ^bb27, ^bb28(%c0_i64 : i64) loc(#loc31) | |
^bb27: // pred: ^bb26 | |
%78 = iree.list.get %75[%c1] : !iree.list<!iree.variant> -> i64 loc(#loc31) | |
br ^bb28(%78 : i64) loc(#loc31) | |
^bb28(%79: i64 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0)): // 2 preds: ^bb26, ^bb27 | |
%80 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc73) | |
%81 = iree.list.get %80[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc74) | |
%82 = cmpi eq, %c79_i32, %81 : i32 loc(#loc74) | |
cond_br %82, ^bb29, ^bb30(%c0_i64 : i64) loc(#loc74) | |
^bb29: // pred: ^bb28 | |
%83 = iree.list.get %80[%c1] : !iree.list<!iree.variant> -> i64 loc(#loc74) | |
br ^bb30(%83 : i64) loc(#loc74) | |
^bb30(%84: i64 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0)): // 2 preds: ^bb28, ^bb29 | |
%85 = addi %79, %84 : i64 loc(#loc31) | |
%86 = iree.list.create : !iree.list<!iree.variant> loc(#loc31) | |
iree.list.resize %86, %c2 : !iree.list<!iree.variant> loc(#loc31) | |
iree.list.set %86[%c0], %c79_i32 : !iree.list<!iree.variant>, i32 loc(#loc31) | |
iree.list.set %86[%c1], %85 : !iree.list<!iree.variant>, i64 loc(#loc31) | |
return %c0_i32, %86 : i32, !iree.list<!iree.variant> loc(#loc75) | |
^bb31: // pred: ^bb14 | |
%87 = iree.list.get %4[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc76) | |
%88 = iree.list.get %87[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc77) | |
%89 = cmpi eq, %c78_i32, %88 : i32 loc(#loc77) | |
cond_br %89, ^bb32, ^bb33(%c0_i32 : i32) loc(#loc77) | |
^bb32: // pred: ^bb31 | |
%90 = iree.list.get %87[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc77) | |
br ^bb33(%90 : i32) loc(#loc77) | |
^bb33(%91: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0)): // 2 preds: ^bb31, ^bb32 | |
%92 = cmpi eq, %91, %c6_i32 : i32 loc(#loc78) | |
cond_br %92, ^bb34, ^bb42 loc(#loc79) | |
^bb34: // pred: ^bb33 | |
%93 = iree.list.get %0[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc80) | |
%94 = iree.list.get %93[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc81) | |
%95 = cmpi eq, %c78_i32, %94 : i32 loc(#loc81) | |
cond_br %95, ^bb35, ^bb36(%c0_i32 : i32) loc(#loc81) | |
^bb35: // pred: ^bb34 | |
%96 = iree.list.get %93[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc81) | |
br ^bb36(%96 : i32) loc(#loc81) | |
^bb36(%97: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0)): // 2 preds: ^bb34, ^bb35 | |
%98 = cmpi eq, %97, %c2_i32 : i32 loc(#loc82) | |
cond_br %98, ^bb37, ^bb42 loc(#loc83) | |
^bb37: // pred: ^bb36 | |
%99 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc84) | |
%100 = iree.list.get %99[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc32) | |
%101 = cmpi eq, %c90_i32, %100 : i32 loc(#loc32) | |
cond_br %101, ^bb38, ^bb39(%cst : f32) loc(#loc32) | |
^bb38: // pred: ^bb37 | |
%102 = iree.list.get %99[%c1] : !iree.list<!iree.variant> -> f32 loc(#loc32) | |
br ^bb39(%102 : f32) loc(#loc32) | |
^bb39(%103: f32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0)): // 2 preds: ^bb37, ^bb38 | |
%104 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc85) | |
%105 = iree.list.get %104[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc86) | |
%106 = cmpi eq, %c90_i32, %105 : i32 loc(#loc86) | |
cond_br %106, ^bb40, ^bb41(%cst : f32) loc(#loc86) | |
^bb40: // pred: ^bb39 | |
%107 = iree.list.get %104[%c1] : !iree.list<!iree.variant> -> f32 loc(#loc86) | |
br ^bb41(%107 : f32) loc(#loc86) | |
^bb41(%108: f32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":27:0)): // 2 preds: ^bb39, ^bb40 | |
%109 = addf %103, %108 : f32 loc(#loc32) | |
%110 = iree.list.create : !iree.list<!iree.variant> loc(#loc32) | |
iree.list.resize %110, %c2 : !iree.list<!iree.variant> loc(#loc32) | |
iree.list.set %110[%c0], %c90_i32 : !iree.list<!iree.variant>, i32 loc(#loc32) | |
iree.list.set %110[%c1], %109 : !iree.list<!iree.variant>, f32 loc(#loc32) | |
return %c0_i32, %110 : i32, !iree.list<!iree.variant> loc(#loc87) | |
^bb42: // 5 preds: ^bb4, ^bb7, ^bb25, ^bb33, ^bb36 | |
%111 = iree.list.create : !iree.list<!iree.variant> loc(#loc33) | |
return %c-3_i32, %111 : i32, !iree.list<!iree.variant> loc(#loc33) | |
} loc(#loc30) | |
func private @pydmrtl$apply_binary_sub(%arg0: !iree.list<!iree.variant> loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0), %arg1: !iree.list<!iree.variant> loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0)) -> (i32, !iree.list<!iree.variant>) { | |
%c0_i64 = constant 0 : i64 loc(#loc89) | |
%cst = constant 0.000000e+00 : f32 loc(#loc90) | |
%c-3_i32 = constant -3 : i32 loc(#loc91) | |
%c90_i32 = constant 90 : i32 loc(#loc90) | |
%c79_i32 = constant 79 : i32 loc(#loc89) | |
%c78_i32 = constant 78 : i32 loc(#loc92) | |
%c0 = constant 0 : index loc(#loc88) | |
%c1 = constant 1 : index loc(#loc88) | |
%c256_i32 = constant 256 : i32 loc(#loc88) | |
%c2 = constant 2 : index loc(#loc88) | |
%c0_i32 = constant 0 : i32 loc(#loc93) | |
%c6_i32 = constant 6 : i32 loc(#loc94) | |
%c2_i32 = constant 2 : i32 loc(#loc95) | |
%c3_i32 = constant 3 : i32 loc(#loc96) | |
%c60_i32 = constant 60 : i32 loc(#loc95) | |
%c1_i32 = constant 1 : i32 loc(#loc94) | |
%0 = iree.list.create : !iree.list<!iree.variant> loc(#loc88) | |
%1 = iree.list.create : !iree.list<!iree.variant> loc(#loc88) | |
%2 = iree.list.create : !iree.list<!iree.variant> loc(#loc88) | |
%3 = iree.list.create : !iree.list<!iree.variant> loc(#loc88) | |
%4 = iree.list.create : !iree.list<!iree.variant> loc(#loc88) | |
%5 = iree.list.create : !iree.list<!iree.variant> loc(#loc88) | |
iree.list.resize %3, %c2 : !iree.list<!iree.variant> loc(#loc88) | |
iree.list.set %3[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc88) | |
iree.list.set %3[%c1], %arg0 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc88) | |
iree.list.resize %2, %c2 : !iree.list<!iree.variant> loc(#loc88) | |
iree.list.set %2[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc88) | |
iree.list.set %2[%c1], %arg1 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc88) | |
%6 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc97) | |
%7 = iree.list.get %6[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc98) | |
%8 = iree.list.create : !iree.list<!iree.variant> loc(#loc92) | |
iree.list.resize %8, %c2 : !iree.list<!iree.variant> loc(#loc92) | |
iree.list.set %8[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc92) | |
iree.list.set %8[%c1], %7 : !iree.list<!iree.variant>, i32 loc(#loc92) | |
iree.list.resize %1, %c2 : !iree.list<!iree.variant> loc(#loc92) | |
iree.list.set %1[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc92) | |
iree.list.set %1[%c1], %8 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc92) | |
%9 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc99) | |
%10 = iree.list.get %9[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc100) | |
%11 = iree.list.create : !iree.list<!iree.variant> loc(#loc101) | |
iree.list.resize %11, %c2 : !iree.list<!iree.variant> loc(#loc101) | |
iree.list.set %11[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc101) | |
iree.list.set %11[%c1], %10 : !iree.list<!iree.variant>, i32 loc(#loc101) | |
iree.list.resize %5, %c2 : !iree.list<!iree.variant> loc(#loc101) | |
iree.list.set %5[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc101) | |
iree.list.set %5[%c1], %11 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc101) | |
%12 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc102) | |
%13 = iree.list.get %12[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc103) | |
%14 = cmpi eq, %c78_i32, %13 : i32 loc(#loc103) | |
cond_br %14, ^bb1, ^bb2(%c0_i32 : i32) loc(#loc103) | |
^bb1: // pred: ^bb0 | |
%15 = iree.list.get %12[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc103) | |
br ^bb2(%15 : i32) loc(#loc103) | |
^bb2(%16: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0)): // 2 preds: ^bb0, ^bb1 | |
%17 = iree.list.get %5[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc104) | |
%18 = iree.list.get %17[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc105) | |
%19 = cmpi eq, %c78_i32, %18 : i32 loc(#loc105) | |
cond_br %19, ^bb3, ^bb4(%c0_i32 : i32) loc(#loc105) | |
^bb3: // pred: ^bb2 | |
%20 = iree.list.get %17[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc105) | |
br ^bb4(%20 : i32) loc(#loc105) | |
^bb4(%21: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0)): // 2 preds: ^bb2, ^bb3 | |
%22 = cmpi eq, %16, %21 : i32 loc(#loc105) | |
cond_br %22, ^bb5, ^bb42 loc(#loc106) | |
^bb5: // pred: ^bb4 | |
%23 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc107) | |
%24 = iree.list.get %23[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc94) | |
%25 = cmpi eq, %c78_i32, %24 : i32 loc(#loc94) | |
cond_br %25, ^bb6, ^bb7(%c0_i32 : i32) loc(#loc94) | |
^bb6: // pred: ^bb5 | |
%26 = iree.list.get %23[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc94) | |
br ^bb7(%26 : i32) loc(#loc94) | |
^bb7(%27: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0)): // 2 preds: ^bb5, ^bb6 | |
%28 = shift_right_signed %27, %c6_i32 : i32 loc(#loc94) | |
%29 = cmpi eq, %28, %c1_i32 : i32 loc(#loc94) | |
cond_br %29, ^bb8, ^bb42 loc(#loc108) | |
^bb8: // pred: ^bb7 | |
%30 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc109) | |
%31 = iree.list.get %30[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc95) | |
%32 = cmpi eq, %c78_i32, %31 : i32 loc(#loc95) | |
cond_br %32, ^bb9, ^bb10(%c0_i32 : i32) loc(#loc95) | |
^bb9: // pred: ^bb8 | |
%33 = iree.list.get %30[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc95) | |
br ^bb10(%33 : i32) loc(#loc95) | |
^bb10(%34: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0)): // 2 preds: ^bb8, ^bb9 | |
%35 = and %34, %c60_i32 : i32 loc(#loc95) | |
%36 = shift_right_signed %35, %c2_i32 : i32 loc(#loc95) | |
%37 = iree.list.create : !iree.list<!iree.variant> loc(#loc110) | |
iree.list.resize %37, %c2 : !iree.list<!iree.variant> loc(#loc110) | |
iree.list.set %37[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc110) | |
iree.list.set %37[%c1], %36 : !iree.list<!iree.variant>, i32 loc(#loc110) | |
iree.list.resize %4, %c2 : !iree.list<!iree.variant> loc(#loc110) | |
iree.list.set %4[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc110) | |
iree.list.set %4[%c1], %37 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc110) | |
%38 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc111) | |
%39 = iree.list.get %38[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc96) | |
%40 = cmpi eq, %c78_i32, %39 : i32 loc(#loc96) | |
cond_br %40, ^bb11, ^bb12(%c0_i32 : i32) loc(#loc96) | |
^bb11: // pred: ^bb10 | |
%41 = iree.list.get %38[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc96) | |
br ^bb12(%41 : i32) loc(#loc96) | |
^bb12(%42: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0)): // 2 preds: ^bb10, ^bb11 | |
%43 = and %42, %c3_i32 : i32 loc(#loc96) | |
%44 = iree.list.create : !iree.list<!iree.variant> loc(#loc112) | |
iree.list.resize %44, %c2 : !iree.list<!iree.variant> loc(#loc112) | |
iree.list.set %44[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc112) | |
iree.list.set %44[%c1], %43 : !iree.list<!iree.variant>, i32 loc(#loc112) | |
iree.list.resize %0, %c2 : !iree.list<!iree.variant> loc(#loc112) | |
iree.list.set %0[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc112) | |
iree.list.set %0[%c1], %44 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc112) | |
%45 = iree.list.get %4[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc113) | |
%46 = iree.list.get %45[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc114) | |
%47 = cmpi eq, %c78_i32, %46 : i32 loc(#loc114) | |
cond_br %47, ^bb13, ^bb14(%c0_i32 : i32) loc(#loc114) | |
^bb13: // pred: ^bb12 | |
%48 = iree.list.get %45[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc114) | |
br ^bb14(%48 : i32) loc(#loc114) | |
^bb14(%49: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0)): // 2 preds: ^bb12, ^bb13 | |
%50 = cmpi sle, %49, %c3_i32 : i32 loc(#loc115) | |
cond_br %50, ^bb15, ^bb31 loc(#loc116) | |
^bb15: // pred: ^bb14 | |
%51 = iree.list.get %0[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc117) | |
%52 = iree.list.get %51[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc118) | |
%53 = cmpi eq, %c78_i32, %52 : i32 loc(#loc118) | |
cond_br %53, ^bb16, ^bb17(%c0_i32 : i32) loc(#loc118) | |
^bb16: // pred: ^bb15 | |
%54 = iree.list.get %51[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc118) | |
br ^bb17(%54 : i32) loc(#loc118) | |
^bb17(%55: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0)): // 2 preds: ^bb15, ^bb16 | |
%56 = cmpi eq, %55, %c2_i32 : i32 loc(#loc119) | |
cond_br %56, ^bb18, ^bb23 loc(#loc120) | |
^bb18: // pred: ^bb17 | |
%57 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc121) | |
%58 = iree.list.get %57[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc122) | |
%59 = cmpi eq, %c78_i32, %58 : i32 loc(#loc122) | |
cond_br %59, ^bb19, ^bb20(%c0_i32 : i32) loc(#loc122) | |
^bb19: // pred: ^bb18 | |
%60 = iree.list.get %57[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc122) | |
br ^bb20(%60 : i32) loc(#loc122) | |
^bb20(%61: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0)): // 2 preds: ^bb18, ^bb19 | |
%62 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc123) | |
%63 = iree.list.get %62[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc124) | |
%64 = cmpi eq, %c78_i32, %63 : i32 loc(#loc124) | |
cond_br %64, ^bb21, ^bb22(%c0_i32 : i32) loc(#loc124) | |
^bb21: // pred: ^bb20 | |
%65 = iree.list.get %62[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc124) | |
br ^bb22(%65 : i32) loc(#loc124) | |
^bb22(%66: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0)): // 2 preds: ^bb20, ^bb21 | |
%67 = subi %61, %66 : i32 loc(#loc122) | |
%68 = iree.list.create : !iree.list<!iree.variant> loc(#loc122) | |
iree.list.resize %68, %c2 : !iree.list<!iree.variant> loc(#loc122) | |
iree.list.set %68[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc122) | |
iree.list.set %68[%c1], %67 : !iree.list<!iree.variant>, i32 loc(#loc122) | |
return %c0_i32, %68 : i32, !iree.list<!iree.variant> loc(#loc125) | |
^bb23: // pred: ^bb17 | |
%69 = iree.list.get %0[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc126) | |
%70 = iree.list.get %69[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc127) | |
%71 = cmpi eq, %c78_i32, %70 : i32 loc(#loc127) | |
cond_br %71, ^bb24, ^bb25(%c0_i32 : i32) loc(#loc127) | |
^bb24: // pred: ^bb23 | |
%72 = iree.list.get %69[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc127) | |
br ^bb25(%72 : i32) loc(#loc127) | |
^bb25(%73: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0)): // 2 preds: ^bb23, ^bb24 | |
%74 = cmpi eq, %73, %c3_i32 : i32 loc(#loc128) | |
cond_br %74, ^bb26, ^bb42 loc(#loc129) | |
^bb26: // pred: ^bb25 | |
%75 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc130) | |
%76 = iree.list.get %75[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc89) | |
%77 = cmpi eq, %c79_i32, %76 : i32 loc(#loc89) | |
cond_br %77, ^bb27, ^bb28(%c0_i64 : i64) loc(#loc89) | |
^bb27: // pred: ^bb26 | |
%78 = iree.list.get %75[%c1] : !iree.list<!iree.variant> -> i64 loc(#loc89) | |
br ^bb28(%78 : i64) loc(#loc89) | |
^bb28(%79: i64 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0)): // 2 preds: ^bb26, ^bb27 | |
%80 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc131) | |
%81 = iree.list.get %80[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc132) | |
%82 = cmpi eq, %c79_i32, %81 : i32 loc(#loc132) | |
cond_br %82, ^bb29, ^bb30(%c0_i64 : i64) loc(#loc132) | |
^bb29: // pred: ^bb28 | |
%83 = iree.list.get %80[%c1] : !iree.list<!iree.variant> -> i64 loc(#loc132) | |
br ^bb30(%83 : i64) loc(#loc132) | |
^bb30(%84: i64 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0)): // 2 preds: ^bb28, ^bb29 | |
%85 = subi %79, %84 : i64 loc(#loc89) | |
%86 = iree.list.create : !iree.list<!iree.variant> loc(#loc89) | |
iree.list.resize %86, %c2 : !iree.list<!iree.variant> loc(#loc89) | |
iree.list.set %86[%c0], %c79_i32 : !iree.list<!iree.variant>, i32 loc(#loc89) | |
iree.list.set %86[%c1], %85 : !iree.list<!iree.variant>, i64 loc(#loc89) | |
return %c0_i32, %86 : i32, !iree.list<!iree.variant> loc(#loc133) | |
^bb31: // pred: ^bb14 | |
%87 = iree.list.get %4[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc134) | |
%88 = iree.list.get %87[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc135) | |
%89 = cmpi eq, %c78_i32, %88 : i32 loc(#loc135) | |
cond_br %89, ^bb32, ^bb33(%c0_i32 : i32) loc(#loc135) | |
^bb32: // pred: ^bb31 | |
%90 = iree.list.get %87[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc135) | |
br ^bb33(%90 : i32) loc(#loc135) | |
^bb33(%91: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0)): // 2 preds: ^bb31, ^bb32 | |
%92 = cmpi eq, %91, %c6_i32 : i32 loc(#loc136) | |
cond_br %92, ^bb34, ^bb42 loc(#loc137) | |
^bb34: // pred: ^bb33 | |
%93 = iree.list.get %0[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc138) | |
%94 = iree.list.get %93[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc139) | |
%95 = cmpi eq, %c78_i32, %94 : i32 loc(#loc139) | |
cond_br %95, ^bb35, ^bb36(%c0_i32 : i32) loc(#loc139) | |
^bb35: // pred: ^bb34 | |
%96 = iree.list.get %93[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc139) | |
br ^bb36(%96 : i32) loc(#loc139) | |
^bb36(%97: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0)): // 2 preds: ^bb34, ^bb35 | |
%98 = cmpi eq, %97, %c2_i32 : i32 loc(#loc140) | |
cond_br %98, ^bb37, ^bb42 loc(#loc141) | |
^bb37: // pred: ^bb36 | |
%99 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc142) | |
%100 = iree.list.get %99[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc90) | |
%101 = cmpi eq, %c90_i32, %100 : i32 loc(#loc90) | |
cond_br %101, ^bb38, ^bb39(%cst : f32) loc(#loc90) | |
^bb38: // pred: ^bb37 | |
%102 = iree.list.get %99[%c1] : !iree.list<!iree.variant> -> f32 loc(#loc90) | |
br ^bb39(%102 : f32) loc(#loc90) | |
^bb39(%103: f32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0)): // 2 preds: ^bb37, ^bb38 | |
%104 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc143) | |
%105 = iree.list.get %104[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc144) | |
%106 = cmpi eq, %c90_i32, %105 : i32 loc(#loc144) | |
cond_br %106, ^bb40, ^bb41(%cst : f32) loc(#loc144) | |
^bb40: // pred: ^bb39 | |
%107 = iree.list.get %104[%c1] : !iree.list<!iree.variant> -> f32 loc(#loc144) | |
br ^bb41(%107 : f32) loc(#loc144) | |
^bb41(%108: f32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":62:0)): // 2 preds: ^bb39, ^bb40 | |
%109 = subf %103, %108 : f32 loc(#loc90) | |
%110 = iree.list.create : !iree.list<!iree.variant> loc(#loc90) | |
iree.list.resize %110, %c2 : !iree.list<!iree.variant> loc(#loc90) | |
iree.list.set %110[%c0], %c90_i32 : !iree.list<!iree.variant>, i32 loc(#loc90) | |
iree.list.set %110[%c1], %109 : !iree.list<!iree.variant>, f32 loc(#loc90) | |
return %c0_i32, %110 : i32, !iree.list<!iree.variant> loc(#loc145) | |
^bb42: // 5 preds: ^bb4, ^bb7, ^bb25, ^bb33, ^bb36 | |
%111 = iree.list.create : !iree.list<!iree.variant> loc(#loc91) | |
return %c-3_i32, %111 : i32, !iree.list<!iree.variant> loc(#loc91) | |
} loc(#loc88) | |
func private @pydmrtl$apply_binary_mul(%arg0: !iree.list<!iree.variant> loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0), %arg1: !iree.list<!iree.variant> loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0)) -> (i32, !iree.list<!iree.variant>) { | |
%c0_i64 = constant 0 : i64 loc(#loc147) | |
%cst = constant 0.000000e+00 : f32 loc(#loc148) | |
%c-3_i32 = constant -3 : i32 loc(#loc149) | |
%c90_i32 = constant 90 : i32 loc(#loc148) | |
%c79_i32 = constant 79 : i32 loc(#loc147) | |
%c78_i32 = constant 78 : i32 loc(#loc150) | |
%c0 = constant 0 : index loc(#loc146) | |
%c1 = constant 1 : index loc(#loc146) | |
%c256_i32 = constant 256 : i32 loc(#loc146) | |
%c2 = constant 2 : index loc(#loc146) | |
%c0_i32 = constant 0 : i32 loc(#loc151) | |
%c6_i32 = constant 6 : i32 loc(#loc152) | |
%c2_i32 = constant 2 : i32 loc(#loc153) | |
%c3_i32 = constant 3 : i32 loc(#loc154) | |
%c60_i32 = constant 60 : i32 loc(#loc153) | |
%c1_i32 = constant 1 : i32 loc(#loc152) | |
%0 = iree.list.create : !iree.list<!iree.variant> loc(#loc146) | |
%1 = iree.list.create : !iree.list<!iree.variant> loc(#loc146) | |
%2 = iree.list.create : !iree.list<!iree.variant> loc(#loc146) | |
%3 = iree.list.create : !iree.list<!iree.variant> loc(#loc146) | |
%4 = iree.list.create : !iree.list<!iree.variant> loc(#loc146) | |
%5 = iree.list.create : !iree.list<!iree.variant> loc(#loc146) | |
iree.list.resize %3, %c2 : !iree.list<!iree.variant> loc(#loc146) | |
iree.list.set %3[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc146) | |
iree.list.set %3[%c1], %arg0 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc146) | |
iree.list.resize %2, %c2 : !iree.list<!iree.variant> loc(#loc146) | |
iree.list.set %2[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc146) | |
iree.list.set %2[%c1], %arg1 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc146) | |
%6 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc155) | |
%7 = iree.list.get %6[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc156) | |
%8 = iree.list.create : !iree.list<!iree.variant> loc(#loc150) | |
iree.list.resize %8, %c2 : !iree.list<!iree.variant> loc(#loc150) | |
iree.list.set %8[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc150) | |
iree.list.set %8[%c1], %7 : !iree.list<!iree.variant>, i32 loc(#loc150) | |
iree.list.resize %1, %c2 : !iree.list<!iree.variant> loc(#loc150) | |
iree.list.set %1[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc150) | |
iree.list.set %1[%c1], %8 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc150) | |
%9 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc157) | |
%10 = iree.list.get %9[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc158) | |
%11 = iree.list.create : !iree.list<!iree.variant> loc(#loc159) | |
iree.list.resize %11, %c2 : !iree.list<!iree.variant> loc(#loc159) | |
iree.list.set %11[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc159) | |
iree.list.set %11[%c1], %10 : !iree.list<!iree.variant>, i32 loc(#loc159) | |
iree.list.resize %5, %c2 : !iree.list<!iree.variant> loc(#loc159) | |
iree.list.set %5[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc159) | |
iree.list.set %5[%c1], %11 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc159) | |
%12 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc160) | |
%13 = iree.list.get %12[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc161) | |
%14 = cmpi eq, %c78_i32, %13 : i32 loc(#loc161) | |
cond_br %14, ^bb1, ^bb2(%c0_i32 : i32) loc(#loc161) | |
^bb1: // pred: ^bb0 | |
%15 = iree.list.get %12[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc161) | |
br ^bb2(%15 : i32) loc(#loc161) | |
^bb2(%16: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0)): // 2 preds: ^bb0, ^bb1 | |
%17 = iree.list.get %5[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc162) | |
%18 = iree.list.get %17[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc163) | |
%19 = cmpi eq, %c78_i32, %18 : i32 loc(#loc163) | |
cond_br %19, ^bb3, ^bb4(%c0_i32 : i32) loc(#loc163) | |
^bb3: // pred: ^bb2 | |
%20 = iree.list.get %17[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc163) | |
br ^bb4(%20 : i32) loc(#loc163) | |
^bb4(%21: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0)): // 2 preds: ^bb2, ^bb3 | |
%22 = cmpi eq, %16, %21 : i32 loc(#loc163) | |
cond_br %22, ^bb5, ^bb42 loc(#loc164) | |
^bb5: // pred: ^bb4 | |
%23 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc165) | |
%24 = iree.list.get %23[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc152) | |
%25 = cmpi eq, %c78_i32, %24 : i32 loc(#loc152) | |
cond_br %25, ^bb6, ^bb7(%c0_i32 : i32) loc(#loc152) | |
^bb6: // pred: ^bb5 | |
%26 = iree.list.get %23[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc152) | |
br ^bb7(%26 : i32) loc(#loc152) | |
^bb7(%27: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0)): // 2 preds: ^bb5, ^bb6 | |
%28 = shift_right_signed %27, %c6_i32 : i32 loc(#loc152) | |
%29 = cmpi eq, %28, %c1_i32 : i32 loc(#loc152) | |
cond_br %29, ^bb8, ^bb42 loc(#loc166) | |
^bb8: // pred: ^bb7 | |
%30 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc167) | |
%31 = iree.list.get %30[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc153) | |
%32 = cmpi eq, %c78_i32, %31 : i32 loc(#loc153) | |
cond_br %32, ^bb9, ^bb10(%c0_i32 : i32) loc(#loc153) | |
^bb9: // pred: ^bb8 | |
%33 = iree.list.get %30[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc153) | |
br ^bb10(%33 : i32) loc(#loc153) | |
^bb10(%34: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0)): // 2 preds: ^bb8, ^bb9 | |
%35 = and %34, %c60_i32 : i32 loc(#loc153) | |
%36 = shift_right_signed %35, %c2_i32 : i32 loc(#loc153) | |
%37 = iree.list.create : !iree.list<!iree.variant> loc(#loc168) | |
iree.list.resize %37, %c2 : !iree.list<!iree.variant> loc(#loc168) | |
iree.list.set %37[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc168) | |
iree.list.set %37[%c1], %36 : !iree.list<!iree.variant>, i32 loc(#loc168) | |
iree.list.resize %4, %c2 : !iree.list<!iree.variant> loc(#loc168) | |
iree.list.set %4[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc168) | |
iree.list.set %4[%c1], %37 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc168) | |
%38 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc169) | |
%39 = iree.list.get %38[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc154) | |
%40 = cmpi eq, %c78_i32, %39 : i32 loc(#loc154) | |
cond_br %40, ^bb11, ^bb12(%c0_i32 : i32) loc(#loc154) | |
^bb11: // pred: ^bb10 | |
%41 = iree.list.get %38[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc154) | |
br ^bb12(%41 : i32) loc(#loc154) | |
^bb12(%42: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0)): // 2 preds: ^bb10, ^bb11 | |
%43 = and %42, %c3_i32 : i32 loc(#loc154) | |
%44 = iree.list.create : !iree.list<!iree.variant> loc(#loc170) | |
iree.list.resize %44, %c2 : !iree.list<!iree.variant> loc(#loc170) | |
iree.list.set %44[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc170) | |
iree.list.set %44[%c1], %43 : !iree.list<!iree.variant>, i32 loc(#loc170) | |
iree.list.resize %0, %c2 : !iree.list<!iree.variant> loc(#loc170) | |
iree.list.set %0[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc170) | |
iree.list.set %0[%c1], %44 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc170) | |
%45 = iree.list.get %4[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc171) | |
%46 = iree.list.get %45[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc172) | |
%47 = cmpi eq, %c78_i32, %46 : i32 loc(#loc172) | |
cond_br %47, ^bb13, ^bb14(%c0_i32 : i32) loc(#loc172) | |
^bb13: // pred: ^bb12 | |
%48 = iree.list.get %45[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc172) | |
br ^bb14(%48 : i32) loc(#loc172) | |
^bb14(%49: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0)): // 2 preds: ^bb12, ^bb13 | |
%50 = cmpi sle, %49, %c3_i32 : i32 loc(#loc173) | |
cond_br %50, ^bb15, ^bb31 loc(#loc174) | |
^bb15: // pred: ^bb14 | |
%51 = iree.list.get %0[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc175) | |
%52 = iree.list.get %51[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc176) | |
%53 = cmpi eq, %c78_i32, %52 : i32 loc(#loc176) | |
cond_br %53, ^bb16, ^bb17(%c0_i32 : i32) loc(#loc176) | |
^bb16: // pred: ^bb15 | |
%54 = iree.list.get %51[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc176) | |
br ^bb17(%54 : i32) loc(#loc176) | |
^bb17(%55: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0)): // 2 preds: ^bb15, ^bb16 | |
%56 = cmpi eq, %55, %c2_i32 : i32 loc(#loc177) | |
cond_br %56, ^bb18, ^bb23 loc(#loc178) | |
^bb18: // pred: ^bb17 | |
%57 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc179) | |
%58 = iree.list.get %57[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc180) | |
%59 = cmpi eq, %c78_i32, %58 : i32 loc(#loc180) | |
cond_br %59, ^bb19, ^bb20(%c0_i32 : i32) loc(#loc180) | |
^bb19: // pred: ^bb18 | |
%60 = iree.list.get %57[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc180) | |
br ^bb20(%60 : i32) loc(#loc180) | |
^bb20(%61: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0)): // 2 preds: ^bb18, ^bb19 | |
%62 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc181) | |
%63 = iree.list.get %62[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc182) | |
%64 = cmpi eq, %c78_i32, %63 : i32 loc(#loc182) | |
cond_br %64, ^bb21, ^bb22(%c0_i32 : i32) loc(#loc182) | |
^bb21: // pred: ^bb20 | |
%65 = iree.list.get %62[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc182) | |
br ^bb22(%65 : i32) loc(#loc182) | |
^bb22(%66: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0)): // 2 preds: ^bb20, ^bb21 | |
%67 = muli %61, %66 : i32 loc(#loc180) | |
%68 = iree.list.create : !iree.list<!iree.variant> loc(#loc180) | |
iree.list.resize %68, %c2 : !iree.list<!iree.variant> loc(#loc180) | |
iree.list.set %68[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc180) | |
iree.list.set %68[%c1], %67 : !iree.list<!iree.variant>, i32 loc(#loc180) | |
return %c0_i32, %68 : i32, !iree.list<!iree.variant> loc(#loc183) | |
^bb23: // pred: ^bb17 | |
%69 = iree.list.get %0[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc184) | |
%70 = iree.list.get %69[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc185) | |
%71 = cmpi eq, %c78_i32, %70 : i32 loc(#loc185) | |
cond_br %71, ^bb24, ^bb25(%c0_i32 : i32) loc(#loc185) | |
^bb24: // pred: ^bb23 | |
%72 = iree.list.get %69[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc185) | |
br ^bb25(%72 : i32) loc(#loc185) | |
^bb25(%73: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0)): // 2 preds: ^bb23, ^bb24 | |
%74 = cmpi eq, %73, %c3_i32 : i32 loc(#loc186) | |
cond_br %74, ^bb26, ^bb42 loc(#loc187) | |
^bb26: // pred: ^bb25 | |
%75 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc188) | |
%76 = iree.list.get %75[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc147) | |
%77 = cmpi eq, %c79_i32, %76 : i32 loc(#loc147) | |
cond_br %77, ^bb27, ^bb28(%c0_i64 : i64) loc(#loc147) | |
^bb27: // pred: ^bb26 | |
%78 = iree.list.get %75[%c1] : !iree.list<!iree.variant> -> i64 loc(#loc147) | |
br ^bb28(%78 : i64) loc(#loc147) | |
^bb28(%79: i64 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0)): // 2 preds: ^bb26, ^bb27 | |
%80 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc189) | |
%81 = iree.list.get %80[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc190) | |
%82 = cmpi eq, %c79_i32, %81 : i32 loc(#loc190) | |
cond_br %82, ^bb29, ^bb30(%c0_i64 : i64) loc(#loc190) | |
^bb29: // pred: ^bb28 | |
%83 = iree.list.get %80[%c1] : !iree.list<!iree.variant> -> i64 loc(#loc190) | |
br ^bb30(%83 : i64) loc(#loc190) | |
^bb30(%84: i64 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0)): // 2 preds: ^bb28, ^bb29 | |
%85 = muli %79, %84 : i64 loc(#loc147) | |
%86 = iree.list.create : !iree.list<!iree.variant> loc(#loc147) | |
iree.list.resize %86, %c2 : !iree.list<!iree.variant> loc(#loc147) | |
iree.list.set %86[%c0], %c79_i32 : !iree.list<!iree.variant>, i32 loc(#loc147) | |
iree.list.set %86[%c1], %85 : !iree.list<!iree.variant>, i64 loc(#loc147) | |
return %c0_i32, %86 : i32, !iree.list<!iree.variant> loc(#loc191) | |
^bb31: // pred: ^bb14 | |
%87 = iree.list.get %4[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc192) | |
%88 = iree.list.get %87[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc193) | |
%89 = cmpi eq, %c78_i32, %88 : i32 loc(#loc193) | |
cond_br %89, ^bb32, ^bb33(%c0_i32 : i32) loc(#loc193) | |
^bb32: // pred: ^bb31 | |
%90 = iree.list.get %87[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc193) | |
br ^bb33(%90 : i32) loc(#loc193) | |
^bb33(%91: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0)): // 2 preds: ^bb31, ^bb32 | |
%92 = cmpi eq, %91, %c6_i32 : i32 loc(#loc194) | |
cond_br %92, ^bb34, ^bb42 loc(#loc195) | |
^bb34: // pred: ^bb33 | |
%93 = iree.list.get %0[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc196) | |
%94 = iree.list.get %93[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc197) | |
%95 = cmpi eq, %c78_i32, %94 : i32 loc(#loc197) | |
cond_br %95, ^bb35, ^bb36(%c0_i32 : i32) loc(#loc197) | |
^bb35: // pred: ^bb34 | |
%96 = iree.list.get %93[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc197) | |
br ^bb36(%96 : i32) loc(#loc197) | |
^bb36(%97: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0)): // 2 preds: ^bb34, ^bb35 | |
%98 = cmpi eq, %97, %c2_i32 : i32 loc(#loc198) | |
cond_br %98, ^bb37, ^bb42 loc(#loc199) | |
^bb37: // pred: ^bb36 | |
%99 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc200) | |
%100 = iree.list.get %99[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc148) | |
%101 = cmpi eq, %c90_i32, %100 : i32 loc(#loc148) | |
cond_br %101, ^bb38, ^bb39(%cst : f32) loc(#loc148) | |
^bb38: // pred: ^bb37 | |
%102 = iree.list.get %99[%c1] : !iree.list<!iree.variant> -> f32 loc(#loc148) | |
br ^bb39(%102 : f32) loc(#loc148) | |
^bb39(%103: f32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0)): // 2 preds: ^bb37, ^bb38 | |
%104 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc201) | |
%105 = iree.list.get %104[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc202) | |
%106 = cmpi eq, %c90_i32, %105 : i32 loc(#loc202) | |
cond_br %106, ^bb40, ^bb41(%cst : f32) loc(#loc202) | |
^bb40: // pred: ^bb39 | |
%107 = iree.list.get %104[%c1] : !iree.list<!iree.variant> -> f32 loc(#loc202) | |
br ^bb41(%107 : f32) loc(#loc202) | |
^bb41(%108: f32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":97:0)): // 2 preds: ^bb39, ^bb40 | |
%109 = mulf %103, %108 : f32 loc(#loc148) | |
%110 = iree.list.create : !iree.list<!iree.variant> loc(#loc148) | |
iree.list.resize %110, %c2 : !iree.list<!iree.variant> loc(#loc148) | |
iree.list.set %110[%c0], %c90_i32 : !iree.list<!iree.variant>, i32 loc(#loc148) | |
iree.list.set %110[%c1], %109 : !iree.list<!iree.variant>, f32 loc(#loc148) | |
return %c0_i32, %110 : i32, !iree.list<!iree.variant> loc(#loc203) | |
^bb42: // 5 preds: ^bb4, ^bb7, ^bb25, ^bb33, ^bb36 | |
%111 = iree.list.create : !iree.list<!iree.variant> loc(#loc149) | |
return %c-3_i32, %111 : i32, !iree.list<!iree.variant> loc(#loc149) | |
} loc(#loc146) | |
func private @pydmrtl$object_as_bool(%arg0: !iree.list<!iree.variant> loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":16:0)) -> (i32, i1) { | |
%c-3_i32 = constant -3 : i32 loc(#loc205) | |
%c79_i32 = constant 79 : i32 loc(#loc206) | |
%c64_i32 = constant 64 : i32 loc(#loc207) | |
%c78_i32 = constant 78 : i32 loc(#loc208) | |
%c0 = constant 0 : index loc(#loc204) | |
%c1 = constant 1 : index loc(#loc204) | |
%c256_i32 = constant 256 : i32 loc(#loc204) | |
%c2 = constant 2 : index loc(#loc204) | |
%true = constant true loc(#loc209) | |
%c6_i32 = constant 6 : i32 loc(#loc210) | |
%c0_i64 = constant 0 : i64 loc(#loc206) | |
%c0_i32 = constant 0 : i32 loc(#loc211) | |
%c2_i32 = constant 2 : i32 loc(#loc212) | |
%c3_i32 = constant 3 : i32 loc(#loc213) | |
%c60_i32 = constant 60 : i32 loc(#loc212) | |
%c1_i32 = constant 1 : i32 loc(#loc214) | |
%false = constant false loc(#loc215) | |
%0 = iree.list.create : !iree.list<!iree.variant> loc(#loc204) | |
%1 = iree.list.create : !iree.list<!iree.variant> loc(#loc204) | |
%2 = iree.list.create : !iree.list<!iree.variant> loc(#loc204) | |
%3 = iree.list.create : !iree.list<!iree.variant> loc(#loc204) | |
iree.list.resize %0, %c2 : !iree.list<!iree.variant> loc(#loc204) | |
iree.list.set %0[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc204) | |
iree.list.set %0[%c1], %arg0 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc204) | |
%4 = iree.list.get %0[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc216) | |
%5 = iree.list.get %4[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc217) | |
%6 = iree.list.create : !iree.list<!iree.variant> loc(#loc208) | |
iree.list.resize %6, %c2 : !iree.list<!iree.variant> loc(#loc208) | |
iree.list.set %6[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc208) | |
iree.list.set %6[%c1], %5 : !iree.list<!iree.variant>, i32 loc(#loc208) | |
iree.list.resize %2, %c2 : !iree.list<!iree.variant> loc(#loc208) | |
iree.list.set %2[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc208) | |
iree.list.set %2[%c1], %6 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc208) | |
%7 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc218) | |
%8 = iree.list.get %7[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc219) | |
%9 = cmpi eq, %c78_i32, %8 : i32 loc(#loc219) | |
cond_br %9, ^bb1, ^bb2(%c0_i32 : i32) loc(#loc219) | |
^bb1: // pred: ^bb0 | |
%10 = iree.list.get %7[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc219) | |
br ^bb2(%10 : i32) loc(#loc219) | |
^bb2(%11: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":16:0)): // 2 preds: ^bb0, ^bb1 | |
%12 = cmpi eq, %11, %c1_i32 : i32 loc(#loc214) | |
cond_br %12, ^bb3(%false : i1), ^bb4 loc(#loc220) | |
^bb3(%13: i1 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":16:0)): // 6 preds: ^bb2, ^bb12, ^bb13, ^bb37, ^bb40, ^bb43 | |
return %c0_i32, %13 : i32, i1 loc(#loc221) | |
^bb4: // pred: ^bb2 | |
%14 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc222) | |
%15 = iree.list.get %14[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc210) | |
%16 = cmpi eq, %c78_i32, %15 : i32 loc(#loc210) | |
cond_br %16, ^bb5, ^bb6(%c0_i32 : i32) loc(#loc210) | |
^bb5: // pred: ^bb4 | |
%17 = iree.list.get %14[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc210) | |
br ^bb6(%17 : i32) loc(#loc210) | |
^bb6(%18: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":16:0)): // 2 preds: ^bb4, ^bb5 | |
%19 = shift_right_signed %18, %c6_i32 : i32 loc(#loc210) | |
%20 = cmpi eq, %19, %c1_i32 : i32 loc(#loc210) | |
cond_br %20, ^bb7, ^bb31 loc(#loc223) | |
^bb7: // pred: ^bb6 | |
%21 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc224) | |
%22 = iree.list.get %21[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc212) | |
%23 = cmpi eq, %c78_i32, %22 : i32 loc(#loc212) | |
cond_br %23, ^bb8, ^bb9(%c0_i32 : i32) loc(#loc212) | |
^bb8: // pred: ^bb7 | |
%24 = iree.list.get %21[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc212) | |
br ^bb9(%24 : i32) loc(#loc212) | |
^bb9(%25: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":16:0)): // 2 preds: ^bb7, ^bb8 | |
%26 = and %25, %c60_i32 : i32 loc(#loc212) | |
%27 = shift_right_signed %26, %c2_i32 : i32 loc(#loc212) | |
%28 = iree.list.create : !iree.list<!iree.variant> loc(#loc225) | |
iree.list.resize %28, %c2 : !iree.list<!iree.variant> loc(#loc225) | |
iree.list.set %28[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc225) | |
iree.list.set %28[%c1], %27 : !iree.list<!iree.variant>, i32 loc(#loc225) | |
iree.list.resize %1, %c2 : !iree.list<!iree.variant> loc(#loc225) | |
iree.list.set %1[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc225) | |
iree.list.set %1[%c1], %28 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc225) | |
%29 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc226) | |
%30 = iree.list.get %29[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc227) | |
%31 = cmpi eq, %c78_i32, %30 : i32 loc(#loc227) | |
cond_br %31, ^bb10, ^bb11(%c0_i32 : i32) loc(#loc227) | |
^bb10: // pred: ^bb9 | |
%32 = iree.list.get %29[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc227) | |
br ^bb11(%32 : i32) loc(#loc227) | |
^bb11(%33: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":16:0)): // 2 preds: ^bb9, ^bb10 | |
%34 = cmpi eq, %33, %c0_i32 : i32 loc(#loc211) | |
cond_br %34, ^bb12, ^bb14 loc(#loc228) | |
^bb12: // pred: ^bb11 | |
%35 = iree.list.get %0[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc229) | |
%36 = iree.list.get %35[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc207) | |
%37 = cmpi eq, %c64_i32, %36 : i32 loc(#loc207) | |
cond_br %37, ^bb13, ^bb3(%false : i1) loc(#loc207) | |
^bb13: // pred: ^bb12 | |
%38 = iree.list.get %35[%c1] : !iree.list<!iree.variant> -> i1 loc(#loc207) | |
br ^bb3(%38 : i1) loc(#loc207) | |
^bb14: // pred: ^bb11 | |
%39 = iree.list.get %2[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc230) | |
%40 = iree.list.get %39[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc213) | |
%41 = cmpi eq, %c78_i32, %40 : i32 loc(#loc213) | |
cond_br %41, ^bb15, ^bb16(%c0_i32 : i32) loc(#loc213) | |
^bb15: // pred: ^bb14 | |
%42 = iree.list.get %39[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc213) | |
br ^bb16(%42 : i32) loc(#loc213) | |
^bb16(%43: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":16:0)): // 2 preds: ^bb14, ^bb15 | |
%44 = and %43, %c3_i32 : i32 loc(#loc213) | |
%45 = iree.list.create : !iree.list<!iree.variant> loc(#loc231) | |
iree.list.resize %45, %c2 : !iree.list<!iree.variant> loc(#loc231) | |
iree.list.set %45[%c0], %c78_i32 : !iree.list<!iree.variant>, i32 loc(#loc231) | |
iree.list.set %45[%c1], %44 : !iree.list<!iree.variant>, i32 loc(#loc231) | |
iree.list.resize %3, %c2 : !iree.list<!iree.variant> loc(#loc231) | |
iree.list.set %3[%c0], %c256_i32 : !iree.list<!iree.variant>, i32 loc(#loc231) | |
iree.list.set %3[%c1], %45 : !iree.list<!iree.variant>, !iree.list<!iree.variant> loc(#loc231) | |
%46 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc232) | |
%47 = iree.list.get %46[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc233) | |
%48 = cmpi eq, %c78_i32, %47 : i32 loc(#loc233) | |
cond_br %48, ^bb17, ^bb18(%c0_i32 : i32) loc(#loc233) | |
^bb17: // pred: ^bb16 | |
%49 = iree.list.get %46[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc233) | |
br ^bb18(%49 : i32) loc(#loc233) | |
^bb18(%50: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":16:0)): // 2 preds: ^bb16, ^bb17 | |
%51 = cmpi eq, %50, %c3_i32 : i32 loc(#loc234) | |
cond_br %51, ^bb19, ^bb32 loc(#loc235) | |
^bb19: // pred: ^bb18 | |
%52 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc236) | |
%53 = iree.list.get %52[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc237) | |
%54 = cmpi eq, %c78_i32, %53 : i32 loc(#loc237) | |
cond_br %54, ^bb20, ^bb21(%c0_i32 : i32) loc(#loc237) | |
^bb20: // pred: ^bb19 | |
%55 = iree.list.get %52[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc237) | |
br ^bb21(%55 : i32) loc(#loc237) | |
^bb21(%56: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":16:0)): // 2 preds: ^bb19, ^bb20 | |
%57 = cmpi eq, %56, %c2_i32 : i32 loc(#loc238) | |
cond_br %57, ^bb22, ^bb25 loc(#loc239) | |
^bb22: // pred: ^bb21 | |
%58 = iree.list.get %0[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc240) | |
%59 = iree.list.get %58[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc241) | |
%60 = cmpi eq, %c78_i32, %59 : i32 loc(#loc241) | |
cond_br %60, ^bb23, ^bb24(%c0_i32 : i32) loc(#loc241) | |
^bb23: // pred: ^bb22 | |
%61 = iree.list.get %58[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc241) | |
br ^bb24(%61 : i32) loc(#loc241) | |
^bb24(%62: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":16:0)): // 2 preds: ^bb22, ^bb23 | |
%63 = cmpi ne, %62, %c0_i32 : i32 loc(#loc241) | |
return %c0_i32, %63 : i32, i1 loc(#loc242) | |
^bb25: // pred: ^bb21 | |
%64 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc243) | |
%65 = iree.list.get %64[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc244) | |
%66 = cmpi eq, %c78_i32, %65 : i32 loc(#loc244) | |
cond_br %66, ^bb26, ^bb27(%c0_i32 : i32) loc(#loc244) | |
^bb26: // pred: ^bb25 | |
%67 = iree.list.get %64[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc244) | |
br ^bb27(%67 : i32) loc(#loc244) | |
^bb27(%68: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":16:0)): // 2 preds: ^bb25, ^bb26 | |
%69 = cmpi eq, %68, %c3_i32 : i32 loc(#loc245) | |
cond_br %69, ^bb28, ^bb31 loc(#loc246) | |
^bb28: // pred: ^bb27 | |
%70 = iree.list.get %0[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc247) | |
%71 = iree.list.get %70[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc206) | |
%72 = cmpi eq, %c79_i32, %71 : i32 loc(#loc206) | |
cond_br %72, ^bb29, ^bb30(%c0_i64 : i64) loc(#loc206) | |
^bb29: // pred: ^bb28 | |
%73 = iree.list.get %70[%c1] : !iree.list<!iree.variant> -> i64 loc(#loc206) | |
br ^bb30(%73 : i64) loc(#loc206) | |
^bb30(%74: i64 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":16:0)): // 2 preds: ^bb28, ^bb29 | |
%75 = cmpi ne, %74, %c0_i64 : i64 loc(#loc206) | |
return %c0_i32, %75 : i32, i1 loc(#loc248) | |
^bb31: // 4 preds: ^bb6, ^bb27, ^bb34, ^bb43 | |
return %c-3_i32, %false : i32, i1 loc(#loc205) | |
^bb32: // pred: ^bb18 | |
%76 = iree.list.get %1[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc249) | |
%77 = iree.list.get %76[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc250) | |
%78 = cmpi eq, %c78_i32, %77 : i32 loc(#loc250) | |
cond_br %78, ^bb33, ^bb34(%c0_i32 : i32) loc(#loc250) | |
^bb33: // pred: ^bb32 | |
%79 = iree.list.get %76[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc250) | |
br ^bb34(%79 : i32) loc(#loc250) | |
^bb34(%80: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":16:0)): // 2 preds: ^bb32, ^bb33 | |
%81 = cmpi eq, %80, %c6_i32 : i32 loc(#loc251) | |
cond_br %81, ^bb35, ^bb31 loc(#loc252) | |
^bb35: // pred: ^bb34 | |
%82 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc253) | |
%83 = iree.list.get %82[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc254) | |
%84 = cmpi eq, %c78_i32, %83 : i32 loc(#loc254) | |
cond_br %84, ^bb36, ^bb37(%c0_i32 : i32) loc(#loc254) | |
^bb36: // pred: ^bb35 | |
%85 = iree.list.get %82[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc254) | |
br ^bb37(%85 : i32) loc(#loc254) | |
^bb37(%86: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":16:0)): // 2 preds: ^bb35, ^bb36 | |
%87 = cmpi eq, %86, %c2_i32 : i32 loc(#loc255) | |
cond_br %87, ^bb3(%true : i1), ^bb38 loc(#loc256) | |
^bb38: // pred: ^bb37 | |
%88 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc257) | |
%89 = iree.list.get %88[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc258) | |
%90 = cmpi eq, %c78_i32, %89 : i32 loc(#loc258) | |
cond_br %90, ^bb39, ^bb40(%c0_i32 : i32) loc(#loc258) | |
^bb39: // pred: ^bb38 | |
%91 = iree.list.get %88[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc258) | |
br ^bb40(%91 : i32) loc(#loc258) | |
^bb40(%92: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":16:0)): // 2 preds: ^bb38, ^bb39 | |
%93 = cmpi eq, %92, %c3_i32 : i32 loc(#loc259) | |
cond_br %93, ^bb3(%true : i1), ^bb41 loc(#loc260) | |
^bb41: // pred: ^bb40 | |
%94 = iree.list.get %3[%c1] : !iree.list<!iree.variant> -> !iree.list<!iree.variant> loc(#loc261) | |
%95 = iree.list.get %94[%c0] : !iree.list<!iree.variant> -> i32 loc(#loc262) | |
%96 = cmpi eq, %c78_i32, %95 : i32 loc(#loc262) | |
cond_br %96, ^bb42, ^bb43(%c0_i32 : i32) loc(#loc262) | |
^bb42: // pred: ^bb41 | |
%97 = iree.list.get %94[%c1] : !iree.list<!iree.variant> -> i32 loc(#loc262) | |
br ^bb43(%97 : i32) loc(#loc262) | |
^bb43(%98: i32 loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":16:0)): // 2 preds: ^bb41, ^bb42 | |
%99 = cmpi eq, %98, %c0_i32 : i32 loc(#loc263) | |
cond_br %99, ^bb3(%true : i1), ^bb31 loc(#loc264) | |
} loc(#loc204) | |
} loc(#loc0) | |
#loc0 = loc(unknown) | |
#loc2 = loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":29:5) | |
#loc3 = loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":30:11) | |
#loc4 = loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":30:19) | |
#loc5 = loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":32:11) | |
#loc6 = loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":29:9) | |
#loc7 = loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":29:2) | |
#loc8 = loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":30:15) | |
#loc9 = loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":30:24) | |
#loc10 = loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":30:4) | |
#loc11 = loc("/home/stella/src/iree-samples/pydm/simple/arithmetic.py":32:15) | |
#loc13 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":23:9) | |
#loc14 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":19:5) | |
#loc15 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":17:2) | |
#loc16 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":17:33) | |
#loc17 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":17:19) | |
#loc18 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":18:34) | |
#loc19 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":18:20) | |
#loc20 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":18:2) | |
#loc21 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":19:26) | |
#loc22 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":19:2) | |
#loc23 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":20:28) | |
#loc24 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":20:7) | |
#loc25 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":20:4) | |
#loc26 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":22:13) | |
#loc27 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":22:19) | |
#loc28 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":22:6) | |
#loc29 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":23:27) | |
#loc31 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":44:17) | |
#loc32 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":49:17) | |
#loc33 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":57:9) | |
#loc34 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":28:2) | |
#loc35 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":57:27) | |
#loc36 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":31:7) | |
#loc37 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":32:20) | |
#loc38 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":33:24) | |
#loc39 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":28:28) | |
#loc40 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":28:14) | |
#loc41 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":29:34) | |
#loc42 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":29:20) | |
#loc43 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":29:2) | |
#loc44 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":30:15) | |
#loc45 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":30:5) | |
#loc46 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":30:39) | |
#loc47 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":30:29) | |
#loc48 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":30:2) | |
#loc49 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":31:28) | |
#loc50 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":31:4) | |
#loc51 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":32:51) | |
#loc52 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":32:6) | |
#loc53 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":33:54) | |
#loc54 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":33:6) | |
#loc55 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":34:19) | |
#loc56 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":34:9) | |
#loc57 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":34:35) | |
#loc58 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":34:6) | |
#loc59 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":41:21) | |
#loc60 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":41:11) | |
#loc61 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":41:41) | |
#loc62 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":41:8) | |
#loc63 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":42:27) | |
#loc64 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":42:17) | |
#loc65 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":42:45) | |
#loc66 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":42:35) | |
#loc67 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":42:10) | |
#loc68 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":43:23) | |
#loc69 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":43:13) | |
#loc70 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":43:43) | |
#loc71 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":43:8) | |
#loc72 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":44:27) | |
#loc73 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":44:45) | |
#loc74 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":44:35) | |
#loc75 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":44:10) | |
#loc76 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":46:21) | |
#loc77 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":46:11) | |
#loc78 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":46:37) | |
#loc79 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":46:6) | |
#loc80 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":48:21) | |
#loc81 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":48:11) | |
#loc82 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":48:41) | |
#loc83 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":48:8) | |
#loc84 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":49:27) | |
#loc85 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":49:45) | |
#loc86 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":49:35) | |
#loc87 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":49:10) | |
#loc89 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":79:17) | |
#loc90 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":84:17) | |
#loc91 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":92:9) | |
#loc92 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":63:2) | |
#loc93 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":92:27) | |
#loc94 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":66:7) | |
#loc95 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":67:20) | |
#loc96 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":68:24) | |
#loc97 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":63:28) | |
#loc98 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":63:14) | |
#loc99 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":64:34) | |
#loc100 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":64:20) | |
#loc101 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":64:2) | |
#loc102 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":65:15) | |
#loc103 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":65:5) | |
#loc104 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":65:39) | |
#loc105 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":65:29) | |
#loc106 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":65:2) | |
#loc107 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":66:28) | |
#loc108 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":66:4) | |
#loc109 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":67:51) | |
#loc110 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":67:6) | |
#loc111 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":68:54) | |
#loc112 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":68:6) | |
#loc113 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":69:19) | |
#loc114 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":69:9) | |
#loc115 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":69:35) | |
#loc116 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":69:6) | |
#loc117 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":76:21) | |
#loc118 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":76:11) | |
#loc119 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":76:41) | |
#loc120 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":76:8) | |
#loc121 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":77:27) | |
#loc122 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":77:17) | |
#loc123 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":77:45) | |
#loc124 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":77:35) | |
#loc125 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":77:10) | |
#loc126 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":78:23) | |
#loc127 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":78:13) | |
#loc128 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":78:43) | |
#loc129 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":78:8) | |
#loc130 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":79:27) | |
#loc131 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":79:45) | |
#loc132 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":79:35) | |
#loc133 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":79:10) | |
#loc134 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":81:21) | |
#loc135 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":81:11) | |
#loc136 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":81:37) | |
#loc137 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":81:6) | |
#loc138 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":83:21) | |
#loc139 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":83:11) | |
#loc140 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":83:41) | |
#loc141 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":83:8) | |
#loc142 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":84:27) | |
#loc143 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":84:45) | |
#loc144 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":84:35) | |
#loc145 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":84:10) | |
#loc147 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":114:17) | |
#loc148 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":119:17) | |
#loc149 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":127:9) | |
#loc150 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":98:2) | |
#loc151 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":127:27) | |
#loc152 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":101:7) | |
#loc153 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":102:20) | |
#loc154 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":103:24) | |
#loc155 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":98:28) | |
#loc156 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":98:14) | |
#loc157 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":99:34) | |
#loc158 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":99:20) | |
#loc159 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":99:2) | |
#loc160 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":100:15) | |
#loc161 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":100:5) | |
#loc162 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":100:39) | |
#loc163 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":100:29) | |
#loc164 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":100:2) | |
#loc165 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":101:28) | |
#loc166 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":101:4) | |
#loc167 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":102:51) | |
#loc168 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":102:6) | |
#loc169 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":103:54) | |
#loc170 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":103:6) | |
#loc171 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":104:19) | |
#loc172 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":104:9) | |
#loc173 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":104:35) | |
#loc174 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":104:6) | |
#loc175 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":111:21) | |
#loc176 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":111:11) | |
#loc177 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":111:41) | |
#loc178 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":111:8) | |
#loc179 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":112:27) | |
#loc180 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":112:17) | |
#loc181 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":112:45) | |
#loc182 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":112:35) | |
#loc183 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":112:10) | |
#loc184 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":113:23) | |
#loc185 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":113:13) | |
#loc186 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":113:43) | |
#loc187 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":113:8) | |
#loc188 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":114:27) | |
#loc189 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":114:45) | |
#loc190 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":114:35) | |
#loc191 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":114:10) | |
#loc192 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":116:21) | |
#loc193 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":116:11) | |
#loc194 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":116:37) | |
#loc195 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":116:6) | |
#loc196 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":118:21) | |
#loc197 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":118:11) | |
#loc198 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":118:41) | |
#loc199 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":118:8) | |
#loc200 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":119:27) | |
#loc201 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":119:45) | |
#loc202 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":119:35) | |
#loc203 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/numerics.py":119:10) | |
#loc205 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":38:15) | |
#loc206 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":35:15) | |
#loc207 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":23:13) | |
#loc208 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":17:2) | |
#loc209 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":41:15) | |
#loc210 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":20:7) | |
#loc211 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":22:33) | |
#loc212 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":21:18) | |
#loc213 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":24:22) | |
#loc214 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":18:29) | |
#loc215 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":19:11) | |
#loc216 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":17:28) | |
#loc217 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":17:14) | |
#loc218 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":18:15) | |
#loc219 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":18:5) | |
#loc220 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":18:2) | |
#loc221 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":19:4) | |
#loc222 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":20:28) | |
#loc223 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":20:2) | |
#loc224 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":21:49) | |
#loc225 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":21:4) | |
#loc226 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":22:17) | |
#loc227 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":22:7) | |
#loc228 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":22:4) | |
#loc229 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":23:24) | |
#loc230 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":24:52) | |
#loc231 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":24:4) | |
#loc232 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":29:17) | |
#loc233 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":29:7) | |
#loc234 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":29:33) | |
#loc235 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":29:4) | |
#loc236 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":30:19) | |
#loc237 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":30:9) | |
#loc238 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":30:39) | |
#loc239 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":30:6) | |
#loc240 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":32:25) | |
#loc241 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":32:15) | |
#loc242 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":32:8) | |
#loc243 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":33:19) | |
#loc244 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":33:9) | |
#loc245 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":33:39) | |
#loc246 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":33:6) | |
#loc247 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":35:25) | |
#loc248 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":35:8) | |
#loc249 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":39:19) | |
#loc250 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":39:9) | |
#loc251 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":39:35) | |
#loc252 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":39:4) | |
#loc253 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":40:19) | |
#loc254 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":40:9) | |
#loc255 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":40:39) | |
#loc256 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":40:6) | |
#loc257 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":42:21) | |
#loc258 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":42:11) | |
#loc259 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":42:41) | |
#loc260 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":42:6) | |
#loc261 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":44:21) | |
#loc262 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":44:11) | |
#loc263 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":44:41) | |
#loc264 = loc("/home/stella/src/iree-build/compiler-api/python_package/iree/compiler/dialects/iree_pydm/rtl/modules/booleans.py":44:6) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
module @module { | |
iree_pydm.func @main(%arg0: !iree_pydm.integer, %arg1: !iree_pydm.integer, %arg2: !iree_pydm.integer) -> (!iree_pydm.exception_result, !iree_pydm.integer) attributes {arg_names = ["a", "b", "c"], cell_vars = [], free_vars = ["a", "b", "c"]} { | |
%b = alloc_free_var "b" -> !iree_pydm.free_var_ref | |
%c = alloc_free_var "c" -> !iree_pydm.free_var_ref | |
%a = alloc_free_var "a" -> !iree_pydm.free_var_ref | |
%0 = box %arg0 : !iree_pydm.integer -> !iree_pydm.object<!iree_pydm.integer> | |
store_var %a = %0 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer> | |
%1 = box %arg1 : !iree_pydm.integer -> !iree_pydm.object<!iree_pydm.integer> | |
store_var %b = %1 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer> | |
%2 = box %arg2 : !iree_pydm.integer -> !iree_pydm.object<!iree_pydm.integer> | |
store_var %c = %2 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer> | |
%3 = load_var %a : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%4 = load_var %b : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%left_prime, %right_prime = dynamic_binary_promote %3, %4 : !iree_pydm.object, !iree_pydm.object | |
%5 = apply_binary "sub", %left_prime, %right_prime : !iree_pydm.object, !iree_pydm.object -> !iree_pydm.object | |
%6 = as_bool %5 : !iree_pydm.object -> !iree_pydm.bool | |
%7 = bool_to_pred %6 | |
std.cond_br %7, ^bb1, ^bb2 | |
^bb1: // pred: ^bb0 | |
%8 = constant 3 : i64 -> !iree_pydm.integer | |
%9 = load_var %a : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%left_prime_0, %right_prime_1 = dynamic_binary_promote %8, %9 : !iree_pydm.integer, !iree_pydm.object | |
%10 = apply_binary "mul", %left_prime_0, %right_prime_1 : !iree_pydm.object, !iree_pydm.object -> !iree_pydm.object | |
%11 = constant 22 : i64 -> !iree_pydm.integer | |
%12 = load_var %b : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%left_prime_2, %right_prime_3 = dynamic_binary_promote %11, %12 : !iree_pydm.integer, !iree_pydm.object | |
%13 = apply_binary "mul", %left_prime_2, %right_prime_3 : !iree_pydm.object, !iree_pydm.object -> !iree_pydm.object | |
%left_prime_4, %right_prime_5 = dynamic_binary_promote %10, %13 : !iree_pydm.object, !iree_pydm.object | |
%14 = apply_binary "add", %left_prime_4, %right_prime_5 : !iree_pydm.object, !iree_pydm.object -> !iree_pydm.object | |
%exc_result, %primitive = unbox %14 : !iree_pydm.object -> !iree_pydm.integer | |
raise_on_failure %exc_result : !iree_pydm.exception_result | |
return %primitive : !iree_pydm.integer | |
^bb2: // pred: ^bb0 | |
%15 = constant 4 : i64 -> !iree_pydm.integer | |
%16 = load_var %c : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%left_prime_6, %right_prime_7 = dynamic_binary_promote %15, %16 : !iree_pydm.integer, !iree_pydm.object | |
%17 = apply_binary "mul", %left_prime_6, %right_prime_7 : !iree_pydm.object, !iree_pydm.object -> !iree_pydm.object | |
%exc_result_8, %primitive_9 = unbox %17 : !iree_pydm.object -> !iree_pydm.integer | |
raise_on_failure %exc_result_8 : !iree_pydm.exception_result | |
return %primitive_9 : !iree_pydm.integer | |
^bb3: // no predecessors | |
%18 = none | |
return %18 : !iree_pydm.none | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
module @module { | |
iree_pydm.func @main(%arg0: !iree_pydm.integer<32>, %arg1: !iree_pydm.integer<32>, %arg2: !iree_pydm.integer<32>) -> (!iree_pydm.exception_result, !iree_pydm.integer<32>) attributes {arg_names = ["a", "b", "c"], cell_vars = [], free_vars = ["a", "b", "c"]} { | |
%0 = constant 4 : i64 -> !iree_pydm.integer<32> | |
%1 = constant 22 : i64 -> !iree_pydm.integer<32> | |
%2 = constant 3 : i64 -> !iree_pydm.integer<32> | |
%b = alloc_free_var "b" -> !iree_pydm.free_var_ref | |
%c = alloc_free_var "c" -> !iree_pydm.free_var_ref | |
%a = alloc_free_var "a" -> !iree_pydm.free_var_ref | |
%3 = box %arg0 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %a = %3 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%4 = box %arg1 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %b = %4 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%5 = box %arg2 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %c = %5 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%6 = load_var %a : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%7 = load_var %b : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result, %result = call @pydmrtl$dynamic_binary_promote(%6, %7) : (!iree_pydm.object, !iree_pydm.object) -> (!iree_pydm.exception_result, !iree_pydm.tuple) | |
raise_on_failure %exc_result : !iree_pydm.exception_result | |
%exc_result_0, %slots:2 = dynamic_unpack %result : !iree_pydm.tuple -> !iree_pydm.exception_result, [!iree_pydm.object, !iree_pydm.object] | |
raise_on_failure %exc_result_0 : !iree_pydm.exception_result | |
%exc_result_1, %result_2 = call @pydmrtl$apply_binary_sub(%slots#0, %slots#1) : (!iree_pydm.object, !iree_pydm.object) -> (!iree_pydm.exception_result, !iree_pydm.object) | |
raise_on_failure %exc_result_1 : !iree_pydm.exception_result | |
%exc_result_3, %result_4 = call @pydmrtl$object_as_bool(%result_2) : (!iree_pydm.object) -> (!iree_pydm.exception_result, !iree_pydm.bool) | |
raise_on_failure %exc_result_3 : !iree_pydm.exception_result | |
%8 = bool_to_pred %result_4 | |
std.cond_br %8, ^bb1, ^bb2 | |
^bb1: // pred: ^bb0 | |
%9 = load_var %a : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%10 = box %2 : !iree_pydm.integer<32> -> !iree_pydm.object | |
%exc_result_5, %result_6 = call @pydmrtl$dynamic_binary_promote(%10, %9) : (!iree_pydm.object, !iree_pydm.object) -> (!iree_pydm.exception_result, !iree_pydm.tuple) | |
raise_on_failure %exc_result_5 : !iree_pydm.exception_result | |
%exc_result_7, %slots_8:2 = dynamic_unpack %result_6 : !iree_pydm.tuple -> !iree_pydm.exception_result, [!iree_pydm.object, !iree_pydm.object] | |
raise_on_failure %exc_result_7 : !iree_pydm.exception_result | |
%exc_result_9, %result_10 = call @pydmrtl$apply_binary_mul(%slots_8#0, %slots_8#1) : (!iree_pydm.object, !iree_pydm.object) -> (!iree_pydm.exception_result, !iree_pydm.object) | |
raise_on_failure %exc_result_9 : !iree_pydm.exception_result | |
%11 = load_var %b : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%12 = box %1 : !iree_pydm.integer<32> -> !iree_pydm.object | |
%exc_result_11, %result_12 = call @pydmrtl$dynamic_binary_promote(%12, %11) : (!iree_pydm.object, !iree_pydm.object) -> (!iree_pydm.exception_result, !iree_pydm.tuple) | |
raise_on_failure %exc_result_11 : !iree_pydm.exception_result | |
%exc_result_13, %slots_14:2 = dynamic_unpack %result_12 : !iree_pydm.tuple -> !iree_pydm.exception_result, [!iree_pydm.object, !iree_pydm.object] | |
raise_on_failure %exc_result_13 : !iree_pydm.exception_result | |
%exc_result_15, %result_16 = call @pydmrtl$apply_binary_mul(%slots_14#0, %slots_14#1) : (!iree_pydm.object, !iree_pydm.object) -> (!iree_pydm.exception_result, !iree_pydm.object) | |
raise_on_failure %exc_result_15 : !iree_pydm.exception_result | |
%exc_result_17, %result_18 = call @pydmrtl$dynamic_binary_promote(%result_10, %result_16) : (!iree_pydm.object, !iree_pydm.object) -> (!iree_pydm.exception_result, !iree_pydm.tuple) | |
raise_on_failure %exc_result_17 : !iree_pydm.exception_result | |
%exc_result_19, %slots_20:2 = dynamic_unpack %result_18 : !iree_pydm.tuple -> !iree_pydm.exception_result, [!iree_pydm.object, !iree_pydm.object] | |
raise_on_failure %exc_result_19 : !iree_pydm.exception_result | |
%exc_result_21, %result_22 = call @pydmrtl$apply_binary_add(%slots_20#0, %slots_20#1) : (!iree_pydm.object, !iree_pydm.object) -> (!iree_pydm.exception_result, !iree_pydm.object) | |
raise_on_failure %exc_result_21 : !iree_pydm.exception_result | |
%exc_result_23, %primitive = unbox %result_22 : !iree_pydm.object -> !iree_pydm.integer<32> | |
raise_on_failure %exc_result_23 : !iree_pydm.exception_result | |
return %primitive : !iree_pydm.integer<32> | |
^bb2: // pred: ^bb0 | |
%13 = load_var %c : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%14 = box %0 : !iree_pydm.integer<32> -> !iree_pydm.object | |
%exc_result_24, %result_25 = call @pydmrtl$dynamic_binary_promote(%14, %13) : (!iree_pydm.object, !iree_pydm.object) -> (!iree_pydm.exception_result, !iree_pydm.tuple) | |
raise_on_failure %exc_result_24 : !iree_pydm.exception_result | |
%exc_result_26, %slots_27:2 = dynamic_unpack %result_25 : !iree_pydm.tuple -> !iree_pydm.exception_result, [!iree_pydm.object, !iree_pydm.object] | |
raise_on_failure %exc_result_26 : !iree_pydm.exception_result | |
%exc_result_28, %result_29 = call @pydmrtl$apply_binary_mul(%slots_27#0, %slots_27#1) : (!iree_pydm.object, !iree_pydm.object) -> (!iree_pydm.exception_result, !iree_pydm.object) | |
raise_on_failure %exc_result_28 : !iree_pydm.exception_result | |
%exc_result_30, %primitive_31 = unbox %result_29 : !iree_pydm.object -> !iree_pydm.integer<32> | |
raise_on_failure %exc_result_30 : !iree_pydm.exception_result | |
return %primitive_31 : !iree_pydm.integer<32> | |
} | |
iree_pydm.func private @pydmrtl$dynamic_binary_promote(%arg0: !iree_pydm.object, %arg1: !iree_pydm.object) -> (!iree_pydm.exception_result, !iree_pydm.tuple) attributes {arg_names = ["left", "right"], cell_vars = [], free_vars = ["left", "right", "left_type_code", "right_type_code"]} { | |
%0 = constant 6 : i32 -> !iree_pydm.integer<32> | |
%1 = constant 1 : i32 -> !iree_pydm.integer<32> | |
%right = alloc_free_var "right" -> !iree_pydm.free_var_ref | |
%left = alloc_free_var "left" -> !iree_pydm.free_var_ref | |
%right_type_code = alloc_free_var "right_type_code" -> !iree_pydm.free_var_ref | |
%left_type_code = alloc_free_var "left_type_code" -> !iree_pydm.free_var_ref | |
store_var %left = %arg0 : !iree_pydm.free_var_ref, !iree_pydm.object | |
store_var %right = %arg1 : !iree_pydm.free_var_ref, !iree_pydm.object | |
%2 = load_var %left : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%3 = get_type_code %2 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%4 = box %3 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %left_type_code = %4 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%5 = load_var %right : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%6 = get_type_code %5 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%7 = box %6 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %right_type_code = %7 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%8 = load_var %left_type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result, %primitive = unbox %8 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%9 = apply_binary "rshift", %primitive, %0 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%10 = apply_compare "eq", %9, %1 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%11 = bool_to_pred %10 | |
std.cond_br %11, ^bb1, ^bb3 | |
^bb1: // pred: ^bb0 | |
%12 = load_var %right_type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_0, %primitive_1 = unbox %12 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%13 = apply_binary "rshift", %primitive_1, %0 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%14 = apply_compare "eq", %13, %1 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%15 = bool_to_pred %14 | |
std.cond_br %15, ^bb2, ^bb3 | |
^bb2: // pred: ^bb1 | |
%16 = load_var %left : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%17 = load_var %right : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%18 = make_tuple %16, %17 : !iree_pydm.object, !iree_pydm.object -> !iree_pydm.tuple | |
return %18 : !iree_pydm.tuple | |
^bb3: // 2 preds: ^bb0, ^bb1 | |
%19 = make_tuple -> !iree_pydm.tuple | |
%20 = failure -> !iree_pydm.exception_result | |
raise_on_failure %20 : !iree_pydm.exception_result | |
return %19 : !iree_pydm.tuple | |
} | |
iree_pydm.func private @pydmrtl$apply_binary_add(%arg0: !iree_pydm.object, %arg1: !iree_pydm.object) -> (!iree_pydm.exception_result, !iree_pydm.object) attributes {arg_names = ["left", "right"], cell_vars = [], free_vars = ["left", "right", "type_code", "right_type_code", "numeric_cat", "numeric_subtype"]} { | |
%0 = constant 6 : i32 -> !iree_pydm.integer<32> | |
%1 = constant 1 : i32 -> !iree_pydm.integer<32> | |
%2 = constant 60 : i32 -> !iree_pydm.integer<32> | |
%3 = constant 2 : i32 -> !iree_pydm.integer<32> | |
%4 = constant 3 : i32 -> !iree_pydm.integer<32> | |
%5 = constant 3 : i64 -> !iree_pydm.integer<32> | |
%6 = constant 2 : i64 -> !iree_pydm.integer<32> | |
%7 = constant 6 : i64 -> !iree_pydm.integer<32> | |
%8 = constant 0 : i64 -> !iree_pydm.integer<32> | |
%right = alloc_free_var "right" -> !iree_pydm.free_var_ref | |
%left = alloc_free_var "left" -> !iree_pydm.free_var_ref | |
%type_code = alloc_free_var "type_code" -> !iree_pydm.free_var_ref | |
%numeric_cat = alloc_free_var "numeric_cat" -> !iree_pydm.free_var_ref | |
%numeric_subtype = alloc_free_var "numeric_subtype" -> !iree_pydm.free_var_ref | |
%right_type_code = alloc_free_var "right_type_code" -> !iree_pydm.free_var_ref | |
store_var %left = %arg0 : !iree_pydm.free_var_ref, !iree_pydm.object | |
store_var %right = %arg1 : !iree_pydm.free_var_ref, !iree_pydm.object | |
%9 = load_var %left : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%10 = get_type_code %9 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%11 = box %10 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %type_code = %11 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%12 = load_var %right : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%13 = get_type_code %12 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%14 = box %13 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %right_type_code = %14 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%15 = load_var %type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result, %primitive = unbox %15 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%16 = load_var %right_type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_0, %primitive_1 = unbox %16 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%17 = apply_compare "eq", %primitive, %primitive_1 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%18 = bool_to_pred %17 | |
std.cond_br %18, ^bb1, ^bb10 | |
^bb1: // pred: ^bb0 | |
%19 = load_var %type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_2, %primitive_3 = unbox %19 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%20 = apply_binary "rshift", %primitive_3, %0 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%21 = apply_compare "eq", %20, %1 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%22 = bool_to_pred %21 | |
std.cond_br %22, ^bb2, ^bb10 | |
^bb2: // pred: ^bb1 | |
%23 = load_var %type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_4, %primitive_5 = unbox %23 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%24 = apply_binary "and", %primitive_5, %2 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%25 = apply_binary "rshift", %24, %3 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%26 = box %25 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %numeric_cat = %26 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%27 = load_var %type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_6, %primitive_7 = unbox %27 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%28 = apply_binary "and", %primitive_7, %4 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%29 = box %28 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %numeric_subtype = %29 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%30 = load_var %numeric_cat : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_8, %primitive_9 = unbox %30 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%31 = apply_compare "le", %primitive_9, %5 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%32 = bool_to_pred %31 | |
std.cond_br %32, ^bb3, ^bb7 | |
^bb3: // pred: ^bb2 | |
%33 = load_var %numeric_subtype : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_10, %primitive_11 = unbox %33 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%34 = apply_compare "eq", %primitive_11, %6 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%35 = bool_to_pred %34 | |
std.cond_br %35, ^bb4, ^bb5 | |
^bb4: // pred: ^bb3 | |
%36 = load_var %left : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_12, %primitive_13 = unbox %36 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%37 = load_var %right : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_14, %primitive_15 = unbox %37 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%38 = apply_binary "add", %primitive_13, %primitive_15 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%39 = box %38 : !iree_pydm.integer<32> -> !iree_pydm.object | |
return %39 : !iree_pydm.object | |
^bb5: // pred: ^bb3 | |
%40 = load_var %numeric_subtype : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_16, %primitive_17 = unbox %40 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%41 = apply_compare "eq", %primitive_17, %5 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%42 = bool_to_pred %41 | |
std.cond_br %42, ^bb6, ^bb10 | |
^bb6: // pred: ^bb5 | |
%43 = load_var %left : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_18, %primitive_19 = unbox %43 : !iree_pydm.object -> !iree_pydm.integer<64> | |
%44 = load_var %right : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_20, %primitive_21 = unbox %44 : !iree_pydm.object -> !iree_pydm.integer<64> | |
%45 = apply_binary "add", %primitive_19, %primitive_21 : !iree_pydm.integer<64>, !iree_pydm.integer<64> -> !iree_pydm.integer<64> | |
%46 = box %45 : !iree_pydm.integer<64> -> !iree_pydm.object | |
return %46 : !iree_pydm.object | |
^bb7: // pred: ^bb2 | |
%47 = load_var %numeric_cat : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_22, %primitive_23 = unbox %47 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%48 = apply_compare "eq", %primitive_23, %7 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%49 = bool_to_pred %48 | |
std.cond_br %49, ^bb8, ^bb10 | |
^bb8: // pred: ^bb7 | |
%50 = load_var %numeric_subtype : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_24, %primitive_25 = unbox %50 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%51 = apply_compare "eq", %primitive_25, %6 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%52 = bool_to_pred %51 | |
std.cond_br %52, ^bb9, ^bb10 | |
^bb9: // pred: ^bb8 | |
%53 = load_var %left : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_26, %primitive_27 = unbox %53 : !iree_pydm.object -> !iree_pydm.real<f32> | |
%54 = load_var %right : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_28, %primitive_29 = unbox %54 : !iree_pydm.object -> !iree_pydm.real<f32> | |
%55 = apply_binary "add", %primitive_27, %primitive_29 : !iree_pydm.real<f32>, !iree_pydm.real<f32> -> !iree_pydm.real<f32> | |
%56 = box %55 : !iree_pydm.real<f32> -> !iree_pydm.object | |
return %56 : !iree_pydm.object | |
^bb10: // 5 preds: ^bb0, ^bb1, ^bb5, ^bb7, ^bb8 | |
%57 = failure -> !iree_pydm.exception_result | |
raise_on_failure %57 : !iree_pydm.exception_result | |
%58 = box %8 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
return %58 : !iree_pydm.object<!iree_pydm.integer<32>> | |
} | |
iree_pydm.func private @pydmrtl$apply_binary_sub(%arg0: !iree_pydm.object, %arg1: !iree_pydm.object) -> (!iree_pydm.exception_result, !iree_pydm.object) attributes {arg_names = ["left", "right"], cell_vars = [], free_vars = ["left", "right", "type_code", "right_type_code", "numeric_cat", "numeric_subtype"]} { | |
%0 = constant 6 : i32 -> !iree_pydm.integer<32> | |
%1 = constant 1 : i32 -> !iree_pydm.integer<32> | |
%2 = constant 60 : i32 -> !iree_pydm.integer<32> | |
%3 = constant 2 : i32 -> !iree_pydm.integer<32> | |
%4 = constant 3 : i32 -> !iree_pydm.integer<32> | |
%5 = constant 3 : i64 -> !iree_pydm.integer<32> | |
%6 = constant 2 : i64 -> !iree_pydm.integer<32> | |
%7 = constant 6 : i64 -> !iree_pydm.integer<32> | |
%8 = constant 0 : i64 -> !iree_pydm.integer<32> | |
%right = alloc_free_var "right" -> !iree_pydm.free_var_ref | |
%left = alloc_free_var "left" -> !iree_pydm.free_var_ref | |
%type_code = alloc_free_var "type_code" -> !iree_pydm.free_var_ref | |
%numeric_cat = alloc_free_var "numeric_cat" -> !iree_pydm.free_var_ref | |
%numeric_subtype = alloc_free_var "numeric_subtype" -> !iree_pydm.free_var_ref | |
%right_type_code = alloc_free_var "right_type_code" -> !iree_pydm.free_var_ref | |
store_var %left = %arg0 : !iree_pydm.free_var_ref, !iree_pydm.object | |
store_var %right = %arg1 : !iree_pydm.free_var_ref, !iree_pydm.object | |
%9 = load_var %left : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%10 = get_type_code %9 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%11 = box %10 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %type_code = %11 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%12 = load_var %right : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%13 = get_type_code %12 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%14 = box %13 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %right_type_code = %14 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%15 = load_var %type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result, %primitive = unbox %15 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%16 = load_var %right_type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_0, %primitive_1 = unbox %16 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%17 = apply_compare "eq", %primitive, %primitive_1 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%18 = bool_to_pred %17 | |
std.cond_br %18, ^bb1, ^bb10 | |
^bb1: // pred: ^bb0 | |
%19 = load_var %type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_2, %primitive_3 = unbox %19 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%20 = apply_binary "rshift", %primitive_3, %0 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%21 = apply_compare "eq", %20, %1 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%22 = bool_to_pred %21 | |
std.cond_br %22, ^bb2, ^bb10 | |
^bb2: // pred: ^bb1 | |
%23 = load_var %type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_4, %primitive_5 = unbox %23 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%24 = apply_binary "and", %primitive_5, %2 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%25 = apply_binary "rshift", %24, %3 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%26 = box %25 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %numeric_cat = %26 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%27 = load_var %type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_6, %primitive_7 = unbox %27 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%28 = apply_binary "and", %primitive_7, %4 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%29 = box %28 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %numeric_subtype = %29 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%30 = load_var %numeric_cat : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_8, %primitive_9 = unbox %30 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%31 = apply_compare "le", %primitive_9, %5 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%32 = bool_to_pred %31 | |
std.cond_br %32, ^bb3, ^bb7 | |
^bb3: // pred: ^bb2 | |
%33 = load_var %numeric_subtype : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_10, %primitive_11 = unbox %33 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%34 = apply_compare "eq", %primitive_11, %6 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%35 = bool_to_pred %34 | |
std.cond_br %35, ^bb4, ^bb5 | |
^bb4: // pred: ^bb3 | |
%36 = load_var %left : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_12, %primitive_13 = unbox %36 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%37 = load_var %right : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_14, %primitive_15 = unbox %37 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%38 = apply_binary "sub", %primitive_13, %primitive_15 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%39 = box %38 : !iree_pydm.integer<32> -> !iree_pydm.object | |
return %39 : !iree_pydm.object | |
^bb5: // pred: ^bb3 | |
%40 = load_var %numeric_subtype : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_16, %primitive_17 = unbox %40 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%41 = apply_compare "eq", %primitive_17, %5 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%42 = bool_to_pred %41 | |
std.cond_br %42, ^bb6, ^bb10 | |
^bb6: // pred: ^bb5 | |
%43 = load_var %left : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_18, %primitive_19 = unbox %43 : !iree_pydm.object -> !iree_pydm.integer<64> | |
%44 = load_var %right : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_20, %primitive_21 = unbox %44 : !iree_pydm.object -> !iree_pydm.integer<64> | |
%45 = apply_binary "sub", %primitive_19, %primitive_21 : !iree_pydm.integer<64>, !iree_pydm.integer<64> -> !iree_pydm.integer<64> | |
%46 = box %45 : !iree_pydm.integer<64> -> !iree_pydm.object | |
return %46 : !iree_pydm.object | |
^bb7: // pred: ^bb2 | |
%47 = load_var %numeric_cat : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_22, %primitive_23 = unbox %47 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%48 = apply_compare "eq", %primitive_23, %7 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%49 = bool_to_pred %48 | |
std.cond_br %49, ^bb8, ^bb10 | |
^bb8: // pred: ^bb7 | |
%50 = load_var %numeric_subtype : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_24, %primitive_25 = unbox %50 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%51 = apply_compare "eq", %primitive_25, %6 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%52 = bool_to_pred %51 | |
std.cond_br %52, ^bb9, ^bb10 | |
^bb9: // pred: ^bb8 | |
%53 = load_var %left : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_26, %primitive_27 = unbox %53 : !iree_pydm.object -> !iree_pydm.real<f32> | |
%54 = load_var %right : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_28, %primitive_29 = unbox %54 : !iree_pydm.object -> !iree_pydm.real<f32> | |
%55 = apply_binary "sub", %primitive_27, %primitive_29 : !iree_pydm.real<f32>, !iree_pydm.real<f32> -> !iree_pydm.real<f32> | |
%56 = box %55 : !iree_pydm.real<f32> -> !iree_pydm.object | |
return %56 : !iree_pydm.object | |
^bb10: // 5 preds: ^bb0, ^bb1, ^bb5, ^bb7, ^bb8 | |
%57 = failure -> !iree_pydm.exception_result | |
raise_on_failure %57 : !iree_pydm.exception_result | |
%58 = box %8 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
return %58 : !iree_pydm.object<!iree_pydm.integer<32>> | |
} | |
iree_pydm.func private @pydmrtl$apply_binary_mul(%arg0: !iree_pydm.object, %arg1: !iree_pydm.object) -> (!iree_pydm.exception_result, !iree_pydm.object) attributes {arg_names = ["left", "right"], cell_vars = [], free_vars = ["left", "right", "type_code", "right_type_code", "numeric_cat", "numeric_subtype"]} { | |
%0 = constant 6 : i32 -> !iree_pydm.integer<32> | |
%1 = constant 1 : i32 -> !iree_pydm.integer<32> | |
%2 = constant 60 : i32 -> !iree_pydm.integer<32> | |
%3 = constant 2 : i32 -> !iree_pydm.integer<32> | |
%4 = constant 3 : i32 -> !iree_pydm.integer<32> | |
%5 = constant 3 : i64 -> !iree_pydm.integer<32> | |
%6 = constant 2 : i64 -> !iree_pydm.integer<32> | |
%7 = constant 6 : i64 -> !iree_pydm.integer<32> | |
%8 = constant 0 : i64 -> !iree_pydm.integer<32> | |
%right = alloc_free_var "right" -> !iree_pydm.free_var_ref | |
%left = alloc_free_var "left" -> !iree_pydm.free_var_ref | |
%type_code = alloc_free_var "type_code" -> !iree_pydm.free_var_ref | |
%numeric_cat = alloc_free_var "numeric_cat" -> !iree_pydm.free_var_ref | |
%numeric_subtype = alloc_free_var "numeric_subtype" -> !iree_pydm.free_var_ref | |
%right_type_code = alloc_free_var "right_type_code" -> !iree_pydm.free_var_ref | |
store_var %left = %arg0 : !iree_pydm.free_var_ref, !iree_pydm.object | |
store_var %right = %arg1 : !iree_pydm.free_var_ref, !iree_pydm.object | |
%9 = load_var %left : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%10 = get_type_code %9 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%11 = box %10 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %type_code = %11 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%12 = load_var %right : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%13 = get_type_code %12 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%14 = box %13 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %right_type_code = %14 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%15 = load_var %type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result, %primitive = unbox %15 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%16 = load_var %right_type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_0, %primitive_1 = unbox %16 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%17 = apply_compare "eq", %primitive, %primitive_1 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%18 = bool_to_pred %17 | |
std.cond_br %18, ^bb1, ^bb10 | |
^bb1: // pred: ^bb0 | |
%19 = load_var %type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_2, %primitive_3 = unbox %19 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%20 = apply_binary "rshift", %primitive_3, %0 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%21 = apply_compare "eq", %20, %1 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%22 = bool_to_pred %21 | |
std.cond_br %22, ^bb2, ^bb10 | |
^bb2: // pred: ^bb1 | |
%23 = load_var %type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_4, %primitive_5 = unbox %23 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%24 = apply_binary "and", %primitive_5, %2 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%25 = apply_binary "rshift", %24, %3 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%26 = box %25 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %numeric_cat = %26 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%27 = load_var %type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_6, %primitive_7 = unbox %27 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%28 = apply_binary "and", %primitive_7, %4 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%29 = box %28 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %numeric_subtype = %29 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%30 = load_var %numeric_cat : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_8, %primitive_9 = unbox %30 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%31 = apply_compare "le", %primitive_9, %5 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%32 = bool_to_pred %31 | |
std.cond_br %32, ^bb3, ^bb7 | |
^bb3: // pred: ^bb2 | |
%33 = load_var %numeric_subtype : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_10, %primitive_11 = unbox %33 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%34 = apply_compare "eq", %primitive_11, %6 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%35 = bool_to_pred %34 | |
std.cond_br %35, ^bb4, ^bb5 | |
^bb4: // pred: ^bb3 | |
%36 = load_var %left : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_12, %primitive_13 = unbox %36 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%37 = load_var %right : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_14, %primitive_15 = unbox %37 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%38 = apply_binary "mul", %primitive_13, %primitive_15 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%39 = box %38 : !iree_pydm.integer<32> -> !iree_pydm.object | |
return %39 : !iree_pydm.object | |
^bb5: // pred: ^bb3 | |
%40 = load_var %numeric_subtype : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_16, %primitive_17 = unbox %40 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%41 = apply_compare "eq", %primitive_17, %5 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%42 = bool_to_pred %41 | |
std.cond_br %42, ^bb6, ^bb10 | |
^bb6: // pred: ^bb5 | |
%43 = load_var %left : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_18, %primitive_19 = unbox %43 : !iree_pydm.object -> !iree_pydm.integer<64> | |
%44 = load_var %right : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_20, %primitive_21 = unbox %44 : !iree_pydm.object -> !iree_pydm.integer<64> | |
%45 = apply_binary "mul", %primitive_19, %primitive_21 : !iree_pydm.integer<64>, !iree_pydm.integer<64> -> !iree_pydm.integer<64> | |
%46 = box %45 : !iree_pydm.integer<64> -> !iree_pydm.object | |
return %46 : !iree_pydm.object | |
^bb7: // pred: ^bb2 | |
%47 = load_var %numeric_cat : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_22, %primitive_23 = unbox %47 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%48 = apply_compare "eq", %primitive_23, %7 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%49 = bool_to_pred %48 | |
std.cond_br %49, ^bb8, ^bb10 | |
^bb8: // pred: ^bb7 | |
%50 = load_var %numeric_subtype : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_24, %primitive_25 = unbox %50 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%51 = apply_compare "eq", %primitive_25, %6 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%52 = bool_to_pred %51 | |
std.cond_br %52, ^bb9, ^bb10 | |
^bb9: // pred: ^bb8 | |
%53 = load_var %left : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_26, %primitive_27 = unbox %53 : !iree_pydm.object -> !iree_pydm.real<f32> | |
%54 = load_var %right : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_28, %primitive_29 = unbox %54 : !iree_pydm.object -> !iree_pydm.real<f32> | |
%55 = apply_binary "mul", %primitive_27, %primitive_29 : !iree_pydm.real<f32>, !iree_pydm.real<f32> -> !iree_pydm.real<f32> | |
%56 = box %55 : !iree_pydm.real<f32> -> !iree_pydm.object | |
return %56 : !iree_pydm.object | |
^bb10: // 5 preds: ^bb0, ^bb1, ^bb5, ^bb7, ^bb8 | |
%57 = failure -> !iree_pydm.exception_result | |
raise_on_failure %57 : !iree_pydm.exception_result | |
%58 = box %8 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
return %58 : !iree_pydm.object<!iree_pydm.integer<32>> | |
} | |
iree_pydm.func private @pydmrtl$object_as_bool(%arg0: !iree_pydm.object) -> (!iree_pydm.exception_result, !iree_pydm.bool) attributes {arg_names = ["v"], cell_vars = [], free_vars = ["v", "type_code", "numeric_cat", "numeric_subtype"]} { | |
%0 = constant 1 : i64 -> !iree_pydm.integer<32> | |
%1 = constant false -> !iree_pydm.bool | |
%2 = constant 6 : i32 -> !iree_pydm.integer<32> | |
%3 = constant 1 : i32 -> !iree_pydm.integer<32> | |
%4 = constant 60 : i32 -> !iree_pydm.integer<32> | |
%5 = constant 2 : i32 -> !iree_pydm.integer<32> | |
%6 = constant 0 : i64 -> !iree_pydm.integer<32> | |
%7 = constant 3 : i32 -> !iree_pydm.integer<32> | |
%8 = constant 3 : i64 -> !iree_pydm.integer<32> | |
%9 = constant 2 : i64 -> !iree_pydm.integer<32> | |
%10 = constant 0 : i32 -> !iree_pydm.integer<32> | |
%11 = constant 0 : i64 -> !iree_pydm.integer<64> | |
%12 = constant 6 : i64 -> !iree_pydm.integer<32> | |
%13 = constant true -> !iree_pydm.bool | |
%type_code = alloc_free_var "type_code" -> !iree_pydm.free_var_ref | |
%numeric_subtype = alloc_free_var "numeric_subtype" -> !iree_pydm.free_var_ref | |
%v = alloc_free_var "v" -> !iree_pydm.free_var_ref | |
%numeric_cat = alloc_free_var "numeric_cat" -> !iree_pydm.free_var_ref | |
store_var %v = %arg0 : !iree_pydm.free_var_ref, !iree_pydm.object | |
%14 = load_var %v : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%15 = get_type_code %14 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%16 = box %15 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %type_code = %16 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%17 = load_var %type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result, %primitive = unbox %17 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%18 = apply_compare "eq", %primitive, %0 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%19 = bool_to_pred %18 | |
std.cond_br %19, ^bb1(%1 : !iree_pydm.bool), ^bb2 | |
^bb1(%20: !iree_pydm.bool): // 4 preds: ^bb0, ^bb12, ^bb13, ^bb14 | |
return %20 : !iree_pydm.bool | |
^bb2: // pred: ^bb0 | |
%21 = load_var %type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_0, %primitive_1 = unbox %21 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%22 = apply_binary "rshift", %primitive_1, %2 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%23 = apply_compare "eq", %22, %3 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%24 = bool_to_pred %23 | |
std.cond_br %24, ^bb3, ^bb10 | |
^bb3: // pred: ^bb2 | |
%25 = load_var %type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_2, %primitive_3 = unbox %25 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%26 = apply_binary "and", %primitive_3, %4 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%27 = apply_binary "rshift", %26, %5 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%28 = box %27 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %numeric_cat = %28 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%29 = load_var %numeric_cat : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_4, %primitive_5 = unbox %29 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%30 = apply_compare "eq", %primitive_5, %6 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%31 = bool_to_pred %30 | |
std.cond_br %31, ^bb4, ^bb5 | |
^bb4: // pred: ^bb3 | |
%32 = load_var %v : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_6, %primitive_7 = unbox %32 : !iree_pydm.object -> !iree_pydm.bool | |
return %primitive_7 : !iree_pydm.bool | |
^bb5: // pred: ^bb3 | |
%33 = load_var %type_code : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_8, %primitive_9 = unbox %33 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%34 = apply_binary "and", %primitive_9, %7 : !iree_pydm.integer<32>, !iree_pydm.integer<32> -> !iree_pydm.integer<32> | |
%35 = box %34 : !iree_pydm.integer<32> -> !iree_pydm.object<!iree_pydm.integer<32>> | |
store_var %numeric_subtype = %35 : !iree_pydm.free_var_ref, !iree_pydm.object<!iree_pydm.integer<32>> | |
%36 = load_var %numeric_cat : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_10, %primitive_11 = unbox %36 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%37 = apply_compare "eq", %primitive_11, %8 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%38 = bool_to_pred %37 | |
std.cond_br %38, ^bb6, ^bb11 | |
^bb6: // pred: ^bb5 | |
%39 = load_var %numeric_subtype : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_12, %primitive_13 = unbox %39 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%40 = apply_compare "eq", %primitive_13, %9 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%41 = bool_to_pred %40 | |
std.cond_br %41, ^bb7, ^bb8 | |
^bb7: // pred: ^bb6 | |
%42 = load_var %v : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_14, %primitive_15 = unbox %42 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%43 = apply_compare "ne", %primitive_15, %10 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
return %43 : !iree_pydm.bool | |
^bb8: // pred: ^bb6 | |
%44 = load_var %numeric_subtype : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_16, %primitive_17 = unbox %44 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%45 = apply_compare "eq", %primitive_17, %8 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%46 = bool_to_pred %45 | |
std.cond_br %46, ^bb9, ^bb10 | |
^bb9: // pred: ^bb8 | |
%47 = load_var %v : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_18, %primitive_19 = unbox %47 : !iree_pydm.object -> !iree_pydm.integer<64> | |
%48 = apply_compare "ne", %primitive_19, %11 : !iree_pydm.integer<64>, !iree_pydm.integer<64> | |
return %48 : !iree_pydm.bool | |
^bb10: // 4 preds: ^bb2, ^bb8, ^bb11, ^bb14 | |
%49 = failure -> !iree_pydm.exception_result | |
raise_on_failure %49 : !iree_pydm.exception_result | |
return %1 : !iree_pydm.bool | |
^bb11: // pred: ^bb5 | |
%50 = load_var %numeric_cat : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_20, %primitive_21 = unbox %50 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%51 = apply_compare "eq", %primitive_21, %12 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%52 = bool_to_pred %51 | |
std.cond_br %52, ^bb12, ^bb10 | |
^bb12: // pred: ^bb11 | |
%53 = load_var %numeric_subtype : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_22, %primitive_23 = unbox %53 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%54 = apply_compare "eq", %primitive_23, %9 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%55 = bool_to_pred %54 | |
std.cond_br %55, ^bb1(%13 : !iree_pydm.bool), ^bb13 | |
^bb13: // pred: ^bb12 | |
%56 = load_var %numeric_subtype : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_24, %primitive_25 = unbox %56 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%57 = apply_compare "eq", %primitive_25, %8 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%58 = bool_to_pred %57 | |
std.cond_br %58, ^bb1(%13 : !iree_pydm.bool), ^bb14 | |
^bb14: // pred: ^bb13 | |
%59 = load_var %numeric_subtype : !iree_pydm.free_var_ref -> !iree_pydm.object | |
%exc_result_26, %primitive_27 = unbox %59 : !iree_pydm.object -> !iree_pydm.integer<32> | |
%60 = apply_compare "eq", %primitive_27, %6 : !iree_pydm.integer<32>, !iree_pydm.integer<32> | |
%61 = bool_to_pred %60 | |
std.cond_br %61, ^bb1(%13 : !iree_pydm.bool), ^bb10 | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def test_int_arithmetic(self): | |
@jit(debug=True) | |
def compute(a: int, b: int, c: int) -> int: | |
if a - b: | |
return 3 * a + 22 * b | |
else: | |
return 4 * c | |
self.assertEqual(103, compute(5, 4, 10)) | |
self.assertEqual(40, compute(4, 4, 10)) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment