kumi 0.0.27 → 0.0.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/README.md +24 -9
- data/data/functions/core/arithmetic.yaml +28 -8
- data/data/functions/core/boolean.yaml +8 -3
- data/data/functions/core/comparison.yaml +12 -4
- data/data/kernels/javascript/core/arithmetic.yaml +6 -2
- data/data/kernels/ruby/core/arithmetic.yaml +7 -2
- data/golden/array_element/expected/schema_ruby.rb +1 -1
- data/golden/array_index/expected/lir_00_unoptimized.txt +2 -2
- data/golden/array_index/expected/lir_01_hoist_scalar_references.txt +2 -2
- data/golden/array_index/expected/lir_02_inlined.txt +2 -2
- data/golden/array_index/expected/lir_03_cse.txt +2 -2
- data/golden/array_index/expected/lir_04_1_loop_fusion.txt +2 -2
- data/golden/array_index/expected/lir_04_loop_invcm.txt +2 -2
- data/golden/array_index/expected/lir_06_const_prop.txt +2 -2
- data/golden/array_index/expected/schema_ruby.rb +1 -1
- data/golden/array_index/expected/snast.txt +2 -2
- data/golden/array_operations/expected/lir_00_unoptimized.txt +2 -2
- data/golden/array_operations/expected/lir_01_hoist_scalar_references.txt +2 -2
- data/golden/array_operations/expected/lir_02_inlined.txt +2 -2
- data/golden/array_operations/expected/lir_03_cse.txt +2 -2
- data/golden/array_operations/expected/lir_04_1_loop_fusion.txt +2 -2
- data/golden/array_operations/expected/lir_04_loop_invcm.txt +2 -2
- data/golden/array_operations/expected/lir_06_const_prop.txt +2 -2
- data/golden/array_operations/expected/schema_ruby.rb +1 -1
- data/golden/array_operations/expected/snast.txt +2 -2
- data/golden/cascade_logic/expected/schema_ruby.rb +1 -1
- data/golden/chained_fusion/expected/schema_ruby.rb +1 -1
- data/golden/decimal_explicit/expected/lir_00_unoptimized.txt +2 -2
- data/golden/decimal_explicit/expected/lir_01_hoist_scalar_references.txt +2 -2
- data/golden/decimal_explicit/expected/lir_02_inlined.txt +6 -6
- data/golden/decimal_explicit/expected/lir_03_cse.txt +5 -5
- data/golden/decimal_explicit/expected/lir_04_1_loop_fusion.txt +5 -5
- data/golden/decimal_explicit/expected/lir_04_loop_invcm.txt +5 -5
- data/golden/decimal_explicit/expected/lir_06_const_prop.txt +5 -5
- data/golden/decimal_explicit/expected/schema_ruby.rb +1 -1
- data/golden/decimal_explicit/expected/snast.txt +2 -2
- data/golden/element_arrays/expected/schema_ruby.rb +1 -1
- data/golden/empty_and_null_inputs/expected/schema_ruby.rb +1 -1
- data/golden/function_overload/expected/schema_ruby.rb +1 -1
- data/golden/game_of_life/expected/schema_ruby.rb +1 -1
- data/golden/hash_keys/expected/schema_ruby.rb +1 -1
- data/golden/hash_value/expected/schema_ruby.rb +1 -1
- data/golden/hierarchical_complex/expected/lir_00_unoptimized.txt +3 -3
- data/golden/hierarchical_complex/expected/lir_01_hoist_scalar_references.txt +3 -3
- data/golden/hierarchical_complex/expected/lir_02_inlined.txt +3 -3
- data/golden/hierarchical_complex/expected/lir_03_cse.txt +3 -3
- data/golden/hierarchical_complex/expected/lir_04_1_loop_fusion.txt +3 -3
- data/golden/hierarchical_complex/expected/lir_04_loop_invcm.txt +3 -3
- data/golden/hierarchical_complex/expected/lir_06_const_prop.txt +3 -3
- data/golden/hierarchical_complex/expected/schema_ruby.rb +1 -1
- data/golden/hierarchical_complex/expected/snast.txt +3 -3
- data/golden/inline_rename_scope_leak/expected/schema_ruby.rb +1 -1
- data/golden/input_reference/expected/schema_ruby.rb +1 -1
- data/golden/interleaved_fusion/expected/lir_00_unoptimized.txt +1 -1
- data/golden/interleaved_fusion/expected/lir_01_hoist_scalar_references.txt +1 -1
- data/golden/interleaved_fusion/expected/lir_02_inlined.txt +2 -2
- data/golden/interleaved_fusion/expected/lir_03_cse.txt +2 -2
- data/golden/interleaved_fusion/expected/lir_04_1_loop_fusion.txt +2 -2
- data/golden/interleaved_fusion/expected/lir_04_loop_invcm.txt +2 -2
- data/golden/interleaved_fusion/expected/lir_06_const_prop.txt +2 -2
- data/golden/interleaved_fusion/expected/schema_ruby.rb +1 -1
- data/golden/interleaved_fusion/expected/snast.txt +1 -1
- data/golden/let_inline/expected/lir_00_unoptimized.txt +2 -2
- data/golden/let_inline/expected/lir_01_hoist_scalar_references.txt +2 -2
- data/golden/let_inline/expected/lir_02_inlined.txt +6 -6
- data/golden/let_inline/expected/lir_03_cse.txt +6 -6
- data/golden/let_inline/expected/lir_04_1_loop_fusion.txt +6 -6
- data/golden/let_inline/expected/lir_04_loop_invcm.txt +6 -6
- data/golden/let_inline/expected/lir_06_const_prop.txt +6 -6
- data/golden/let_inline/expected/schema_ruby.rb +1 -1
- data/golden/let_inline/expected/snast.txt +2 -2
- data/golden/loop_fusion/expected/schema_ruby.rb +1 -1
- data/golden/min_reduce_scope/expected/schema_ruby.rb +1 -1
- data/golden/mixed_dimensions/expected/schema_ruby.rb +1 -1
- data/golden/multirank_hoisting/expected/lir_00_unoptimized.txt +2 -2
- data/golden/multirank_hoisting/expected/lir_01_hoist_scalar_references.txt +2 -2
- data/golden/multirank_hoisting/expected/lir_02_inlined.txt +7 -7
- data/golden/multirank_hoisting/expected/lir_03_cse.txt +7 -7
- data/golden/multirank_hoisting/expected/lir_04_1_loop_fusion.txt +7 -7
- data/golden/multirank_hoisting/expected/lir_04_loop_invcm.txt +7 -7
- data/golden/multirank_hoisting/expected/lir_06_const_prop.txt +7 -7
- data/golden/multirank_hoisting/expected/schema_ruby.rb +1 -1
- data/golden/multirank_hoisting/expected/snast.txt +2 -2
- data/golden/nested_hash/expected/lir_00_unoptimized.txt +1 -1
- data/golden/nested_hash/expected/lir_01_hoist_scalar_references.txt +1 -1
- data/golden/nested_hash/expected/lir_02_inlined.txt +1 -1
- data/golden/nested_hash/expected/lir_03_cse.txt +1 -1
- data/golden/nested_hash/expected/lir_04_1_loop_fusion.txt +1 -1
- data/golden/nested_hash/expected/lir_04_loop_invcm.txt +1 -1
- data/golden/nested_hash/expected/lir_06_const_prop.txt +1 -1
- data/golden/nested_hash/expected/schema_ruby.rb +1 -1
- data/golden/nested_hash/expected/snast.txt +1 -1
- data/golden/reduction_broadcast/expected/schema_ruby.rb +1 -1
- data/golden/roll/expected/schema_ruby.rb +1 -1
- data/golden/shift/expected/schema_ruby.rb +1 -1
- data/golden/shift_2d/expected/schema_ruby.rb +1 -1
- data/golden/simple_math/expected/lir_00_unoptimized.txt +2 -2
- data/golden/simple_math/expected/lir_01_hoist_scalar_references.txt +2 -2
- data/golden/simple_math/expected/lir_02_inlined.txt +2 -2
- data/golden/simple_math/expected/lir_03_cse.txt +2 -2
- data/golden/simple_math/expected/lir_04_1_loop_fusion.txt +2 -2
- data/golden/simple_math/expected/lir_04_loop_invcm.txt +2 -2
- data/golden/simple_math/expected/lir_06_const_prop.txt +2 -2
- data/golden/simple_math/expected/schema_ruby.rb +1 -1
- data/golden/simple_math/expected/snast.txt +2 -2
- data/golden/streaming_basics/expected/lir_00_unoptimized.txt +3 -3
- data/golden/streaming_basics/expected/lir_01_hoist_scalar_references.txt +3 -3
- data/golden/streaming_basics/expected/lir_02_inlined.txt +9 -9
- data/golden/streaming_basics/expected/lir_03_cse.txt +7 -7
- data/golden/streaming_basics/expected/lir_04_1_loop_fusion.txt +7 -7
- data/golden/streaming_basics/expected/lir_04_loop_invcm.txt +7 -7
- data/golden/streaming_basics/expected/lir_06_const_prop.txt +7 -7
- data/golden/streaming_basics/expected/schema_ruby.rb +1 -1
- data/golden/streaming_basics/expected/snast.txt +3 -3
- data/golden/tuples/expected/schema_ruby.rb +1 -1
- data/golden/tuples_and_arrays/expected/schema_ruby.rb +1 -1
- data/golden/us_tax_2024/expected/lir_00_unoptimized.txt +6 -6
- data/golden/us_tax_2024/expected/lir_01_hoist_scalar_references.txt +6 -6
- data/golden/us_tax_2024/expected/lir_02_inlined.txt +71 -71
- data/golden/us_tax_2024/expected/lir_03_cse.txt +43 -43
- data/golden/us_tax_2024/expected/lir_04_1_loop_fusion.txt +48 -48
- data/golden/us_tax_2024/expected/lir_04_loop_invcm.txt +43 -43
- data/golden/us_tax_2024/expected/lir_06_const_prop.txt +43 -43
- data/golden/us_tax_2024/expected/schema_ruby.rb +1 -1
- data/golden/us_tax_2024/expected/snast.txt +6 -6
- data/golden/with_constants/expected/schema_ruby.rb +1 -1
- data/lib/kumi/core/analyzer/passes/nast_dimensional_analyzer_pass.rb +1 -1
- data/lib/kumi/core/error_reporter.rb +1 -1
- data/lib/kumi/core/errors.rb +1 -1
- data/lib/kumi/core/functions/overload_resolver.rb +57 -11
- data/lib/kumi/core/functions/type_categories.rb +44 -0
- data/lib/kumi/frontends/text.rb +33 -5
- data/lib/kumi/syntax/location.rb +5 -1
- data/lib/kumi/version.rb +1 -1
- metadata +2 -1
@@ -1,27 +1,27 @@
|
|
1
1
|
(LIR
|
2
2
|
(Declaration x_sq
|
3
3
|
%t1 = load_input "x" :: integer
|
4
|
-
%t3 = call core.mul(%t1, %t1) :: integer
|
4
|
+
%t3 = call core.mul:numeric(%t1, %t1) :: integer
|
5
5
|
yield %t3
|
6
6
|
)
|
7
7
|
(Declaration y_sq
|
8
8
|
%t4 = load_input "y" :: integer
|
9
|
-
%t6 = call core.mul(%t4, %t4) :: integer
|
9
|
+
%t6 = call core.mul:numeric(%t4, %t4) :: integer
|
10
10
|
yield %t6
|
11
11
|
)
|
12
12
|
(Declaration distance_sq
|
13
13
|
%t13 = load_input "x" :: integer
|
14
|
-
%t15 = call core.mul(%t13, %t13) :: integer
|
14
|
+
%t15 = call core.mul:numeric(%t13, %t13) :: integer
|
15
15
|
%t16 = load_input "y" :: integer
|
16
|
-
%t18 = call core.mul(%t16, %t16) :: integer
|
16
|
+
%t18 = call core.mul:numeric(%t16, %t16) :: integer
|
17
17
|
%t9 = call core.add(%t15, %t18) :: integer
|
18
18
|
yield %t9
|
19
19
|
)
|
20
20
|
(Declaration distance
|
21
21
|
%t22 = load_input "x" :: integer
|
22
|
-
%t24 = call core.mul(%t22, %t22) :: integer
|
22
|
+
%t24 = call core.mul:numeric(%t22, %t22) :: integer
|
23
23
|
%t25 = load_input "y" :: integer
|
24
|
-
%t27 = call core.mul(%t25, %t25) :: integer
|
24
|
+
%t27 = call core.mul:numeric(%t25, %t25) :: integer
|
25
25
|
%t21 = call core.add(%t24, %t27) :: integer
|
26
26
|
%t11 = const 0.5 :: float
|
27
27
|
%t12 = call core.pow(%t21, %t11) :: float
|
@@ -1,27 +1,27 @@
|
|
1
1
|
(LIR
|
2
2
|
(Declaration x_sq
|
3
3
|
%t1 = load_input "x" :: integer
|
4
|
-
%t3 = call core.mul(%t1, %t1) :: integer
|
4
|
+
%t3 = call core.mul:numeric(%t1, %t1) :: integer
|
5
5
|
yield %t3
|
6
6
|
)
|
7
7
|
(Declaration y_sq
|
8
8
|
%t4 = load_input "y" :: integer
|
9
|
-
%t6 = call core.mul(%t4, %t4) :: integer
|
9
|
+
%t6 = call core.mul:numeric(%t4, %t4) :: integer
|
10
10
|
yield %t6
|
11
11
|
)
|
12
12
|
(Declaration distance_sq
|
13
13
|
%t13 = load_input "x" :: integer
|
14
|
-
%t15 = call core.mul(%t13, %t13) :: integer
|
14
|
+
%t15 = call core.mul:numeric(%t13, %t13) :: integer
|
15
15
|
%t16 = load_input "y" :: integer
|
16
|
-
%t18 = call core.mul(%t16, %t16) :: integer
|
16
|
+
%t18 = call core.mul:numeric(%t16, %t16) :: integer
|
17
17
|
%t9 = call core.add(%t15, %t18) :: integer
|
18
18
|
yield %t9
|
19
19
|
)
|
20
20
|
(Declaration distance
|
21
21
|
%t22 = load_input "x" :: integer
|
22
|
-
%t24 = call core.mul(%t22, %t22) :: integer
|
22
|
+
%t24 = call core.mul:numeric(%t22, %t22) :: integer
|
23
23
|
%t25 = load_input "y" :: integer
|
24
|
-
%t27 = call core.mul(%t25, %t25) :: integer
|
24
|
+
%t27 = call core.mul:numeric(%t25, %t25) :: integer
|
25
25
|
%t21 = call core.add(%t24, %t27) :: integer
|
26
26
|
%t11 = const 0.5 :: float
|
27
27
|
%t12 = call core.pow(%t21, %t11) :: float
|
@@ -1,27 +1,27 @@
|
|
1
1
|
(LIR
|
2
2
|
(Declaration x_sq
|
3
3
|
%t1 = load_input "x" :: integer
|
4
|
-
%t3 = call core.mul(%t1, %t1) :: integer
|
4
|
+
%t3 = call core.mul:numeric(%t1, %t1) :: integer
|
5
5
|
yield %t3
|
6
6
|
)
|
7
7
|
(Declaration y_sq
|
8
8
|
%t4 = load_input "y" :: integer
|
9
|
-
%t6 = call core.mul(%t4, %t4) :: integer
|
9
|
+
%t6 = call core.mul:numeric(%t4, %t4) :: integer
|
10
10
|
yield %t6
|
11
11
|
)
|
12
12
|
(Declaration distance_sq
|
13
13
|
%t13 = load_input "x" :: integer
|
14
|
-
%t15 = call core.mul(%t13, %t13) :: integer
|
14
|
+
%t15 = call core.mul:numeric(%t13, %t13) :: integer
|
15
15
|
%t16 = load_input "y" :: integer
|
16
|
-
%t18 = call core.mul(%t16, %t16) :: integer
|
16
|
+
%t18 = call core.mul:numeric(%t16, %t16) :: integer
|
17
17
|
%t9 = call core.add(%t15, %t18) :: integer
|
18
18
|
yield %t9
|
19
19
|
)
|
20
20
|
(Declaration distance
|
21
21
|
%t22 = load_input "x" :: integer
|
22
|
-
%t24 = call core.mul(%t22, %t22) :: integer
|
22
|
+
%t24 = call core.mul:numeric(%t22, %t22) :: integer
|
23
23
|
%t25 = load_input "y" :: integer
|
24
|
-
%t27 = call core.mul(%t25, %t25) :: integer
|
24
|
+
%t27 = call core.mul:numeric(%t25, %t25) :: integer
|
25
25
|
%t21 = call core.add(%t24, %t27) :: integer
|
26
26
|
%t11 = const 0.5 :: float
|
27
27
|
%t12 = call core.pow(%t21, %t11) :: float
|
@@ -1,27 +1,27 @@
|
|
1
1
|
(LIR
|
2
2
|
(Declaration x_sq
|
3
3
|
%t1 = load_input "x" :: integer
|
4
|
-
%t3 = call core.mul(%t1, %t1) :: integer
|
4
|
+
%t3 = call core.mul:numeric(%t1, %t1) :: integer
|
5
5
|
yield %t3
|
6
6
|
)
|
7
7
|
(Declaration y_sq
|
8
8
|
%t4 = load_input "y" :: integer
|
9
|
-
%t6 = call core.mul(%t4, %t4) :: integer
|
9
|
+
%t6 = call core.mul:numeric(%t4, %t4) :: integer
|
10
10
|
yield %t6
|
11
11
|
)
|
12
12
|
(Declaration distance_sq
|
13
13
|
%t13 = load_input "x" :: integer
|
14
|
-
%t15 = call core.mul(%t13, %t13) :: integer
|
14
|
+
%t15 = call core.mul:numeric(%t13, %t13) :: integer
|
15
15
|
%t16 = load_input "y" :: integer
|
16
|
-
%t18 = call core.mul(%t16, %t16) :: integer
|
16
|
+
%t18 = call core.mul:numeric(%t16, %t16) :: integer
|
17
17
|
%t9 = call core.add(%t15, %t18) :: integer
|
18
18
|
yield %t9
|
19
19
|
)
|
20
20
|
(Declaration distance
|
21
21
|
%t22 = load_input "x" :: integer
|
22
|
-
%t24 = call core.mul(%t22, %t22) :: integer
|
22
|
+
%t24 = call core.mul:numeric(%t22, %t22) :: integer
|
23
23
|
%t25 = load_input "y" :: integer
|
24
|
-
%t27 = call core.mul(%t25, %t25) :: integer
|
24
|
+
%t27 = call core.mul:numeric(%t25, %t25) :: integer
|
25
25
|
%t21 = call core.add(%t24, %t27) :: integer
|
26
26
|
%t11 = const 0.5 :: float
|
27
27
|
%t12 = call core.pow(%t21, %t11) :: float
|
@@ -1,5 +1,5 @@
|
|
1
1
|
# Autogenerated by Kumi Codegen
|
2
|
-
module Kumi::Compiled::
|
2
|
+
module Kumi::Compiled::KUMI_4ba9786339bb3384237482ed7334efcae808cd73eef2823136776301c5bd59b7
|
3
3
|
def self.from(input_data = nil)
|
4
4
|
instance = Object.new
|
5
5
|
instance.extend(self)
|
@@ -1,12 +1,12 @@
|
|
1
1
|
(SNAST
|
2
2
|
(VALUE x_sq
|
3
|
-
(Call :core.mul
|
3
|
+
(Call :core.mul:numeric
|
4
4
|
(InputRef x key_chain=[]) :: [] -> integer
|
5
5
|
(InputRef x key_chain=[]) :: [] -> integer
|
6
6
|
) :: [] -> integer
|
7
7
|
) :: [] -> integer
|
8
8
|
(VALUE y_sq
|
9
|
-
(Call :core.mul
|
9
|
+
(Call :core.mul:numeric
|
10
10
|
(InputRef y key_chain=[]) :: [] -> integer
|
11
11
|
(InputRef y key_chain=[]) :: [] -> integer
|
12
12
|
) :: [] -> integer
|
@@ -1,5 +1,5 @@
|
|
1
1
|
# Autogenerated by Kumi Codegen
|
2
|
-
module Kumi::Compiled::
|
2
|
+
module Kumi::Compiled::KUMI_80921fb9abca1f3a8314f3c4a1b2d356c9886ad4e7bbdb54bfeed321ece530e0
|
3
3
|
def self.from(input_data = nil)
|
4
4
|
instance = Object.new
|
5
5
|
instance.extend(self)
|
@@ -1,5 +1,5 @@
|
|
1
1
|
# Autogenerated by Kumi Codegen
|
2
|
-
module Kumi::Compiled::
|
2
|
+
module Kumi::Compiled::KUMI_5fa2745abc03dd13cf6efc948886e2be28e6babb72ae15765e8095902dfef66f
|
3
3
|
def self.from(input_data = nil)
|
4
4
|
instance = Object.new
|
5
5
|
instance.extend(self)
|
@@ -1,5 +1,5 @@
|
|
1
1
|
# Autogenerated by Kumi Codegen
|
2
|
-
module Kumi::Compiled::
|
2
|
+
module Kumi::Compiled::KUMI_6632bd2527f41d4c6ee428b793c77441bcb39e57922e972fe2ea1231a40722a7
|
3
3
|
def self.from(input_data = nil)
|
4
4
|
instance = Object.new
|
5
5
|
instance.extend(self)
|
@@ -21,7 +21,7 @@
|
|
21
21
|
loop row id=L3 in %t13 as el=%row_el_14, idx=%row_i_15
|
22
22
|
%t16 = load_field row_el_14["scale"] :: float
|
23
23
|
%t17 = const 2.0 :: float
|
24
|
-
%t18 = call core.mul(%t16, %t17) :: float
|
24
|
+
%t18 = call core.mul:numeric(%t16, %t17) :: float
|
25
25
|
yield %t18
|
26
26
|
end_loop
|
27
27
|
end_loop
|
@@ -35,7 +35,7 @@
|
|
35
35
|
loop col id=L6 in %t25 as el=%col_el_26, idx=%col_i_27
|
36
36
|
%t28 = load_field col_el_26["val"] :: float
|
37
37
|
%t29 = load_decl row_scale2 axes=[batch, row] :: float
|
38
|
-
%t30 = call core.mul(%t28, %t29) :: float
|
38
|
+
%t30 = call core.mul:numeric(%t28, %t29) :: float
|
39
39
|
%t31 = load_decl batch_bias axes=[batch] :: float
|
40
40
|
%t32 = call core.add(%t30, %t31) :: float
|
41
41
|
yield %t32
|
@@ -21,7 +21,7 @@
|
|
21
21
|
loop row id=L3 in %t13 as el=%row_el_14, idx=%row_i_15
|
22
22
|
%t16 = load_field row_el_14["scale"] :: float
|
23
23
|
%t17 = const 2.0 :: float
|
24
|
-
%t18 = call core.mul(%t16, %t17) :: float
|
24
|
+
%t18 = call core.mul:numeric(%t16, %t17) :: float
|
25
25
|
yield %t18
|
26
26
|
end_loop
|
27
27
|
end_loop
|
@@ -35,7 +35,7 @@
|
|
35
35
|
loop col id=L6 in %t25 as el=%col_el_26, idx=%col_i_27
|
36
36
|
%t28 = load_field col_el_26["val"] :: float
|
37
37
|
%t29 = load_decl row_scale2 axes=[batch, row] :: float
|
38
|
-
%t30 = call core.mul(%t28, %t29) :: float
|
38
|
+
%t30 = call core.mul:numeric(%t28, %t29) :: float
|
39
39
|
%t31 = load_decl batch_bias axes=[batch] :: float
|
40
40
|
%t32 = call core.add(%t30, %t31) :: float
|
41
41
|
yield %t32
|
@@ -23,7 +23,7 @@
|
|
23
23
|
loop row id=L3 in %t13 as el=%row_el_14, idx=%row_i_15
|
24
24
|
%t16 = load_field row_el_14["scale"] :: float
|
25
25
|
%t17 = const 2.0 :: float
|
26
|
-
%t18 = call core.mul(%t16, %t17) :: float
|
26
|
+
%t18 = call core.mul:numeric(%t16, %t17) :: float
|
27
27
|
yield %t18
|
28
28
|
end_loop
|
29
29
|
end_loop
|
@@ -43,11 +43,11 @@
|
|
43
43
|
%t58 = load_field batch_el_20["row"] :: any
|
44
44
|
%t59 = load_field row_el_23["scale"] :: float
|
45
45
|
%t60 = const 2.0 :: float
|
46
|
-
%t61 = call core.mul(%t59, %t60) :: float
|
46
|
+
%t61 = call core.mul:numeric(%t59, %t60) :: float
|
47
47
|
%t25 = load_field row_el_23["col"] :: any
|
48
48
|
loop col id=L6 in %t25 as el=%col_el_26, idx=%col_i_27
|
49
49
|
%t28 = load_field col_el_26["val"] :: float
|
50
|
-
%t30 = call core.mul(%t28, %t61) :: float
|
50
|
+
%t30 = call core.mul:numeric(%t28, %t61) :: float
|
51
51
|
%t32 = call core.add(%t30, %t65) :: float
|
52
52
|
yield %t32
|
53
53
|
end_loop
|
@@ -69,7 +69,7 @@
|
|
69
69
|
%t78 = load_field batch_el_34["row"] :: any
|
70
70
|
%t79 = load_field row_el_37["scale"] :: float
|
71
71
|
%t80 = const 2.0 :: float
|
72
|
-
%t81 = call core.mul(%t79, %t80) :: float
|
72
|
+
%t81 = call core.mul:numeric(%t79, %t80) :: float
|
73
73
|
%acc_39 = decl_acc :: float
|
74
74
|
%t40 = load_field row_el_37["col"] :: any
|
75
75
|
loop col id=L9 in %t40 as el=%col_el_41, idx=%col_i_42
|
@@ -77,7 +77,7 @@
|
|
77
77
|
%t70 = load_field batch_el_34["row"] :: any
|
78
78
|
%t71 = load_field row_el_37["col"] :: any
|
79
79
|
%t72 = load_field col_el_41["val"] :: float
|
80
|
-
%t74 = call core.mul(%t72, %t81) :: float
|
80
|
+
%t74 = call core.mul:numeric(%t72, %t81) :: float
|
81
81
|
%t76 = call core.add(%t74, %t85) :: float
|
82
82
|
%acc_39 = acc_add agg.sum(%acc_39, %t76) :: float
|
83
83
|
end_loop
|
@@ -102,7 +102,7 @@
|
|
102
102
|
%t107 = load_field batch_el_46["row"] :: any
|
103
103
|
%t108 = load_field row_el_50["scale"] :: float
|
104
104
|
%t109 = const 2.0 :: float
|
105
|
-
%t110 = call core.mul(%t108, %t109) :: float
|
105
|
+
%t110 = call core.mul:numeric(%t108, %t109) :: float
|
106
106
|
%t89 = load_input "batch" :: array
|
107
107
|
%t90 = load_field batch_el_46["row"] :: any
|
108
108
|
%acc92 = decl_acc :: float
|
@@ -112,7 +112,7 @@
|
|
112
112
|
%t99 = load_field batch_el_46["row"] :: any
|
113
113
|
%t100 = load_field row_el_50["col"] :: any
|
114
114
|
%t101 = load_field t94["val"] :: float
|
115
|
-
%t103 = call core.mul(%t101, %t110) :: float
|
115
|
+
%t103 = call core.mul:numeric(%t101, %t110) :: float
|
116
116
|
%t105 = call core.add(%t103, %t114) :: float
|
117
117
|
%acc92 = acc_add agg.sum(%acc92, %t105) :: float
|
118
118
|
end_loop
|
@@ -23,7 +23,7 @@
|
|
23
23
|
loop row id=L3 in %t13 as el=%row_el_14, idx=%row_i_15
|
24
24
|
%t16 = load_field row_el_14["scale"] :: float
|
25
25
|
%t17 = const 2.0 :: float
|
26
|
-
%t18 = call core.mul(%t16, %t17) :: float
|
26
|
+
%t18 = call core.mul:numeric(%t16, %t17) :: float
|
27
27
|
yield %t18
|
28
28
|
end_loop
|
29
29
|
end_loop
|
@@ -40,11 +40,11 @@
|
|
40
40
|
loop row id=L5 in %t22 as el=%row_el_23, idx=%row_i_24
|
41
41
|
%t59 = load_field row_el_23["scale"] :: float
|
42
42
|
%t60 = const 2.0 :: float
|
43
|
-
%t61 = call core.mul(%t59, %t60) :: float
|
43
|
+
%t61 = call core.mul:numeric(%t59, %t60) :: float
|
44
44
|
%t25 = load_field row_el_23["col"] :: any
|
45
45
|
loop col id=L6 in %t25 as el=%col_el_26, idx=%col_i_27
|
46
46
|
%t28 = load_field col_el_26["val"] :: float
|
47
|
-
%t30 = call core.mul(%t28, %t61) :: float
|
47
|
+
%t30 = call core.mul:numeric(%t28, %t61) :: float
|
48
48
|
%t32 = call core.add(%t30, %t65) :: float
|
49
49
|
yield %t32
|
50
50
|
end_loop
|
@@ -63,12 +63,12 @@
|
|
63
63
|
loop row id=L8 in %t36 as el=%row_el_37, idx=%row_i_38
|
64
64
|
%t79 = load_field row_el_37["scale"] :: float
|
65
65
|
%t80 = const 2.0 :: float
|
66
|
-
%t81 = call core.mul(%t79, %t80) :: float
|
66
|
+
%t81 = call core.mul:numeric(%t79, %t80) :: float
|
67
67
|
%acc_39 = decl_acc :: float
|
68
68
|
%t40 = load_field row_el_37["col"] :: any
|
69
69
|
loop col id=L9 in %t40 as el=%col_el_41, idx=%col_i_42
|
70
70
|
%t72 = load_field col_el_41["val"] :: float
|
71
|
-
%t74 = call core.mul(%t72, %t81) :: float
|
71
|
+
%t74 = call core.mul:numeric(%t72, %t81) :: float
|
72
72
|
%t76 = call core.add(%t74, %t85) :: float
|
73
73
|
%acc_39 = acc_add agg.sum(%acc_39, %t76) :: float
|
74
74
|
end_loop
|
@@ -90,12 +90,12 @@
|
|
90
90
|
loop row id=L11 in %t49 as el=%row_el_50, idx=%row_i_51
|
91
91
|
%t108 = load_field row_el_50["scale"] :: float
|
92
92
|
%t109 = const 2.0 :: float
|
93
|
-
%t110 = call core.mul(%t108, %t109) :: float
|
93
|
+
%t110 = call core.mul:numeric(%t108, %t109) :: float
|
94
94
|
%acc92 = decl_acc :: float
|
95
95
|
%t93 = load_field row_el_50["col"] :: any
|
96
96
|
loop col id=L12 in %t93 as el=%t94, idx=%t95
|
97
97
|
%t101 = load_field t94["val"] :: float
|
98
|
-
%t103 = call core.mul(%t101, %t110) :: float
|
98
|
+
%t103 = call core.mul:numeric(%t101, %t110) :: float
|
99
99
|
%t105 = call core.add(%t103, %t114) :: float
|
100
100
|
%acc92 = acc_add agg.sum(%acc92, %t105) :: float
|
101
101
|
end_loop
|
@@ -23,7 +23,7 @@
|
|
23
23
|
loop row id=L3 in %t13 as el=%row_el_14, idx=%row_i_15
|
24
24
|
%t16 = load_field row_el_14["scale"] :: float
|
25
25
|
%t17 = const 2.0 :: float
|
26
|
-
%t18 = call core.mul(%t16, %t17) :: float
|
26
|
+
%t18 = call core.mul:numeric(%t16, %t17) :: float
|
27
27
|
yield %t18
|
28
28
|
end_loop
|
29
29
|
end_loop
|
@@ -40,11 +40,11 @@
|
|
40
40
|
loop row id=L5 in %t22 as el=%row_el_23, idx=%row_i_24
|
41
41
|
%t59 = load_field row_el_23["scale"] :: float
|
42
42
|
%t60 = const 2.0 :: float
|
43
|
-
%t61 = call core.mul(%t59, %t60) :: float
|
43
|
+
%t61 = call core.mul:numeric(%t59, %t60) :: float
|
44
44
|
%t25 = load_field row_el_23["col"] :: any
|
45
45
|
loop col id=L6 in %t25 as el=%col_el_26, idx=%col_i_27
|
46
46
|
%t28 = load_field col_el_26["val"] :: float
|
47
|
-
%t30 = call core.mul(%t28, %t61) :: float
|
47
|
+
%t30 = call core.mul:numeric(%t28, %t61) :: float
|
48
48
|
%t32 = call core.add(%t30, %t65) :: float
|
49
49
|
yield %t32
|
50
50
|
end_loop
|
@@ -63,12 +63,12 @@
|
|
63
63
|
loop row id=L8 in %t36 as el=%row_el_37, idx=%row_i_38
|
64
64
|
%t79 = load_field row_el_37["scale"] :: float
|
65
65
|
%t80 = const 2.0 :: float
|
66
|
-
%t81 = call core.mul(%t79, %t80) :: float
|
66
|
+
%t81 = call core.mul:numeric(%t79, %t80) :: float
|
67
67
|
%acc_39 = decl_acc :: float
|
68
68
|
%t40 = load_field row_el_37["col"] :: any
|
69
69
|
loop col id=L9 in %t40 as el=%col_el_41, idx=%col_i_42
|
70
70
|
%t72 = load_field col_el_41["val"] :: float
|
71
|
-
%t74 = call core.mul(%t72, %t81) :: float
|
71
|
+
%t74 = call core.mul:numeric(%t72, %t81) :: float
|
72
72
|
%t76 = call core.add(%t74, %t85) :: float
|
73
73
|
%acc_39 = acc_add agg.sum(%acc_39, %t76) :: float
|
74
74
|
end_loop
|
@@ -90,12 +90,12 @@
|
|
90
90
|
loop row id=L11 in %t49 as el=%row_el_50, idx=%row_i_51
|
91
91
|
%t108 = load_field row_el_50["scale"] :: float
|
92
92
|
%t109 = const 2.0 :: float
|
93
|
-
%t110 = call core.mul(%t108, %t109) :: float
|
93
|
+
%t110 = call core.mul:numeric(%t108, %t109) :: float
|
94
94
|
%acc92 = decl_acc :: float
|
95
95
|
%t93 = load_field row_el_50["col"] :: any
|
96
96
|
loop col id=L12 in %t93 as el=%t94, idx=%t95
|
97
97
|
%t101 = load_field t94["val"] :: float
|
98
|
-
%t103 = call core.mul(%t101, %t110) :: float
|
98
|
+
%t103 = call core.mul:numeric(%t101, %t110) :: float
|
99
99
|
%t105 = call core.add(%t103, %t114) :: float
|
100
100
|
%acc92 = acc_add agg.sum(%acc92, %t105) :: float
|
101
101
|
end_loop
|
@@ -23,7 +23,7 @@
|
|
23
23
|
%t13 = load_field batch_el_11["row"] :: any
|
24
24
|
loop row id=L3 in %t13 as el=%row_el_14, idx=%row_i_15
|
25
25
|
%t16 = load_field row_el_14["scale"] :: float
|
26
|
-
%t18 = call core.mul(%t16, %t17) :: float
|
26
|
+
%t18 = call core.mul:numeric(%t16, %t17) :: float
|
27
27
|
yield %t18
|
28
28
|
end_loop
|
29
29
|
end_loop
|
@@ -40,11 +40,11 @@
|
|
40
40
|
%t65 = call core.add(%t64, %t68) :: float
|
41
41
|
loop row id=L5 in %t22 as el=%row_el_23, idx=%row_i_24
|
42
42
|
%t59 = load_field row_el_23["scale"] :: float
|
43
|
-
%t61 = call core.mul(%t59, %t60) :: float
|
43
|
+
%t61 = call core.mul:numeric(%t59, %t60) :: float
|
44
44
|
%t25 = load_field row_el_23["col"] :: any
|
45
45
|
loop col id=L6 in %t25 as el=%col_el_26, idx=%col_i_27
|
46
46
|
%t28 = load_field col_el_26["val"] :: float
|
47
|
-
%t30 = call core.mul(%t28, %t61) :: float
|
47
|
+
%t30 = call core.mul:numeric(%t28, %t61) :: float
|
48
48
|
%t32 = call core.add(%t30, %t65) :: float
|
49
49
|
yield %t32
|
50
50
|
end_loop
|
@@ -63,12 +63,12 @@
|
|
63
63
|
%t85 = call core.add(%t84, %t88) :: float
|
64
64
|
loop row id=L8 in %t36 as el=%row_el_37, idx=%row_i_38
|
65
65
|
%t79 = load_field row_el_37["scale"] :: float
|
66
|
-
%t81 = call core.mul(%t79, %t80) :: float
|
66
|
+
%t81 = call core.mul:numeric(%t79, %t80) :: float
|
67
67
|
%acc_39 = decl_acc :: float
|
68
68
|
%t40 = load_field row_el_37["col"] :: any
|
69
69
|
loop col id=L9 in %t40 as el=%col_el_41, idx=%col_i_42
|
70
70
|
%t72 = load_field col_el_41["val"] :: float
|
71
|
-
%t74 = call core.mul(%t72, %t81) :: float
|
71
|
+
%t74 = call core.mul:numeric(%t72, %t81) :: float
|
72
72
|
%t76 = call core.add(%t74, %t85) :: float
|
73
73
|
%acc_39 = acc_add agg.sum(%acc_39, %t76) :: float
|
74
74
|
end_loop
|
@@ -90,12 +90,12 @@
|
|
90
90
|
%t114 = call core.add(%t113, %t117) :: float
|
91
91
|
loop row id=L11 in %t49 as el=%row_el_50, idx=%row_i_51
|
92
92
|
%t108 = load_field row_el_50["scale"] :: float
|
93
|
-
%t110 = call core.mul(%t108, %t109) :: float
|
93
|
+
%t110 = call core.mul:numeric(%t108, %t109) :: float
|
94
94
|
%acc92 = decl_acc :: float
|
95
95
|
%t93 = load_field row_el_50["col"] :: any
|
96
96
|
loop col id=L12 in %t93 as el=%t94, idx=%t95
|
97
97
|
%t101 = load_field t94["val"] :: float
|
98
|
-
%t103 = call core.mul(%t101, %t110) :: float
|
98
|
+
%t103 = call core.mul:numeric(%t101, %t110) :: float
|
99
99
|
%t105 = call core.add(%t103, %t114) :: float
|
100
100
|
%acc92 = acc_add agg.sum(%acc92, %t105) :: float
|
101
101
|
end_loop
|
@@ -23,7 +23,7 @@
|
|
23
23
|
%t13 = load_field batch_el_11["row"] :: any
|
24
24
|
loop row id=L3 in %t13 as el=%row_el_14, idx=%row_i_15
|
25
25
|
%t16 = load_field row_el_14["scale"] :: float
|
26
|
-
%t18 = call core.mul(%t16, %t17) :: float
|
26
|
+
%t18 = call core.mul:numeric(%t16, %t17) :: float
|
27
27
|
yield %t18
|
28
28
|
end_loop
|
29
29
|
end_loop
|
@@ -40,11 +40,11 @@
|
|
40
40
|
%t65 = call core.add(%t64, %t68) :: float
|
41
41
|
loop row id=L5 in %t22 as el=%row_el_23, idx=%row_i_24
|
42
42
|
%t59 = load_field row_el_23["scale"] :: float
|
43
|
-
%t61 = call core.mul(%t59, %t60) :: float
|
43
|
+
%t61 = call core.mul:numeric(%t59, %t60) :: float
|
44
44
|
%t25 = load_field row_el_23["col"] :: any
|
45
45
|
loop col id=L6 in %t25 as el=%col_el_26, idx=%col_i_27
|
46
46
|
%t28 = load_field col_el_26["val"] :: float
|
47
|
-
%t30 = call core.mul(%t28, %t61) :: float
|
47
|
+
%t30 = call core.mul:numeric(%t28, %t61) :: float
|
48
48
|
%t32 = call core.add(%t30, %t65) :: float
|
49
49
|
yield %t32
|
50
50
|
end_loop
|
@@ -63,12 +63,12 @@
|
|
63
63
|
%t85 = call core.add(%t84, %t88) :: float
|
64
64
|
loop row id=L8 in %t36 as el=%row_el_37, idx=%row_i_38
|
65
65
|
%t79 = load_field row_el_37["scale"] :: float
|
66
|
-
%t81 = call core.mul(%t79, %t80) :: float
|
66
|
+
%t81 = call core.mul:numeric(%t79, %t80) :: float
|
67
67
|
%acc_39 = decl_acc :: float
|
68
68
|
%t40 = load_field row_el_37["col"] :: any
|
69
69
|
loop col id=L9 in %t40 as el=%col_el_41, idx=%col_i_42
|
70
70
|
%t72 = load_field col_el_41["val"] :: float
|
71
|
-
%t74 = call core.mul(%t72, %t81) :: float
|
71
|
+
%t74 = call core.mul:numeric(%t72, %t81) :: float
|
72
72
|
%t76 = call core.add(%t74, %t85) :: float
|
73
73
|
%acc_39 = acc_add agg.sum(%acc_39, %t76) :: float
|
74
74
|
end_loop
|
@@ -90,12 +90,12 @@
|
|
90
90
|
%t114 = call core.add(%t113, %t117) :: float
|
91
91
|
loop row id=L11 in %t49 as el=%row_el_50, idx=%row_i_51
|
92
92
|
%t108 = load_field row_el_50["scale"] :: float
|
93
|
-
%t110 = call core.mul(%t108, %t109) :: float
|
93
|
+
%t110 = call core.mul:numeric(%t108, %t109) :: float
|
94
94
|
%acc92 = decl_acc :: float
|
95
95
|
%t93 = load_field row_el_50["col"] :: any
|
96
96
|
loop col id=L12 in %t93 as el=%t94, idx=%t95
|
97
97
|
%t101 = load_field t94["val"] :: float
|
98
|
-
%t103 = call core.mul(%t101, %t110) :: float
|
98
|
+
%t103 = call core.mul:numeric(%t101, %t110) :: float
|
99
99
|
%t105 = call core.add(%t103, %t114) :: float
|
100
100
|
%acc92 = acc_add agg.sum(%acc92, %t105) :: float
|
101
101
|
end_loop
|
@@ -1,5 +1,5 @@
|
|
1
1
|
# Autogenerated by Kumi Codegen
|
2
|
-
module Kumi::Compiled::
|
2
|
+
module Kumi::Compiled::KUMI_6df7130ca75124f097c82329888ab5cb9a478bb0c2dac2ab00593581b5698852
|
3
3
|
def self.from(input_data = nil)
|
4
4
|
instance = Object.new
|
5
5
|
instance.extend(self)
|
@@ -12,14 +12,14 @@
|
|
12
12
|
) :: [batch] -> float
|
13
13
|
) :: [batch] -> float
|
14
14
|
(VALUE row_scale2
|
15
|
-
(Call :core.mul
|
15
|
+
(Call :core.mul:numeric
|
16
16
|
(InputRef batch.b.row.r.scale key_chain=[]) :: [batch, row] -> float
|
17
17
|
(Const 2.0) :: [] -> float
|
18
18
|
) :: [batch, row] -> float
|
19
19
|
) :: [batch, row] -> float
|
20
20
|
(VALUE elem_affine
|
21
21
|
(Call :core.add
|
22
|
-
(Call :core.mul
|
22
|
+
(Call :core.mul:numeric
|
23
23
|
(InputRef batch.b.row.r.col.c.val key_chain=[]) :: [batch, row, col] -> float
|
24
24
|
(Ref row_scale2) :: [batch, row] -> float
|
25
25
|
) :: [batch, row, col] -> float
|
@@ -1,5 +1,5 @@
|
|
1
1
|
# Autogenerated by Kumi Codegen
|
2
|
-
module Kumi::Compiled::
|
2
|
+
module Kumi::Compiled::KUMI_1c9e6afbc4a766888d75e9e5003d26bfeda2e167eb1fbd69da44bcd76d9f7484
|
3
3
|
def self.from(input_data = nil)
|
4
4
|
instance = Object.new
|
5
5
|
instance.extend(self)
|
@@ -1,5 +1,5 @@
|
|
1
1
|
# Autogenerated by Kumi Codegen
|
2
|
-
module Kumi::Compiled::
|
2
|
+
module Kumi::Compiled::KUMI_121b9b19ba424a91a0d50b683d292605ee54c09c014acb917007ca19cc881fd1
|
3
3
|
def self.from(input_data = nil)
|
4
4
|
instance = Object.new
|
5
5
|
instance.extend(self)
|
@@ -1,5 +1,5 @@
|
|
1
1
|
# Autogenerated by Kumi Codegen
|
2
|
-
module Kumi::Compiled::
|
2
|
+
module Kumi::Compiled::KUMI_fbbd9524e89735c5dbaf290442b7ae9b51c1aeedcbe116ad99c5af17605a99ee
|
3
3
|
def self.from(input_data = nil)
|
4
4
|
instance = Object.new
|
5
5
|
instance.extend(self)
|
@@ -1,5 +1,5 @@
|
|
1
1
|
# Autogenerated by Kumi Codegen
|
2
|
-
module Kumi::Compiled::
|
2
|
+
module Kumi::Compiled::KUMI_cb5c8bdee5947708dc24300b2c2b672056453e6f137563d7bf848a40bdc4e534
|
3
3
|
def self.from(input_data = nil)
|
4
4
|
instance = Object.new
|
5
5
|
instance.extend(self)
|
@@ -1,5 +1,5 @@
|
|
1
1
|
# Autogenerated by Kumi Codegen
|
2
|
-
module Kumi::Compiled::
|
2
|
+
module Kumi::Compiled::KUMI_21390de8a42e8b9e82e444c05c8030a3d5285d0077573acab1c303e27d5436fb
|
3
3
|
def self.from(input_data = nil)
|
4
4
|
instance = Object.new
|
5
5
|
instance.extend(self)
|