mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-10-06 10:44:41 +01:00
Avoid recursion in InstNamer::CollectNamesInBlock (#4706)
Use a deque to maintain the set of instructions to be walked over. so that the loop can append more instructions (with their related scope) during iteration without requiring recursion. --------- Co-authored-by: jonmeow <jperkins@google.com>
This commit is contained in:
+6
-6
@@ -72,17 +72,17 @@ fn G() {
|
||||
// CHECK:STDOUT: %v.var: ref %array_type = var v
|
||||
// CHECK:STDOUT: %v: ref %array_type = bind_name v, %v.var
|
||||
// CHECK:STDOUT: %F.ref.loc14_34: %F.type = name_ref F, file.%F.decl [template = constants.%F]
|
||||
// CHECK:STDOUT: %.loc14_42.2: ref %tuple.type.2 = splice_block %.loc14_42.1 {
|
||||
// CHECK:STDOUT: %.loc14_42.1: ref %tuple.type.2 = splice_block %.loc14_42.2 {
|
||||
// CHECK:STDOUT: %int_0: Core.IntLiteral = int_value 0 [template = constants.%int_0]
|
||||
// CHECK:STDOUT: %.loc14_42.1: ref %tuple.type.2 = array_index %v.var, %int_0
|
||||
// CHECK:STDOUT: %.loc14_42.2: ref %tuple.type.2 = array_index %v.var, %int_0
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %F.call.loc14_36: init %tuple.type.2 = call %F.ref.loc14_34() to %.loc14_42.2
|
||||
// CHECK:STDOUT: %F.call.loc14_36: init %tuple.type.2 = call %F.ref.loc14_34() to %.loc14_42.1
|
||||
// CHECK:STDOUT: %F.ref.loc14_39: %F.type = name_ref F, file.%F.decl [template = constants.%F]
|
||||
// CHECK:STDOUT: %.loc14_42.4: ref %tuple.type.2 = splice_block %.loc14_42.3 {
|
||||
// CHECK:STDOUT: %.loc14_42.3: ref %tuple.type.2 = splice_block %.loc14_42.4 {
|
||||
// CHECK:STDOUT: %int_1: Core.IntLiteral = int_value 1 [template = constants.%int_1]
|
||||
// CHECK:STDOUT: %.loc14_42.3: ref %tuple.type.2 = array_index %v.var, %int_1
|
||||
// CHECK:STDOUT: %.loc14_42.4: ref %tuple.type.2 = array_index %v.var, %int_1
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %F.call.loc14_41: init %tuple.type.2 = call %F.ref.loc14_39() to %.loc14_42.4
|
||||
// CHECK:STDOUT: %F.call.loc14_41: init %tuple.type.2 = call %F.ref.loc14_39() to %.loc14_42.3
|
||||
// CHECK:STDOUT: %.loc14_42.5: %tuple.type.3 = tuple_literal (%F.call.loc14_36, %F.call.loc14_41)
|
||||
// CHECK:STDOUT: %.loc14_42.6: init %array_type = array_init (%F.call.loc14_36, %F.call.loc14_41) to %v.var
|
||||
// CHECK:STDOUT: %.loc14_43: init %array_type = converted %.loc14_42.5, %.loc14_42.6
|
||||
|
||||
@@ -197,9 +197,9 @@ fn Foo(n: ()) -> ((), ()) {
|
||||
// CHECK:STDOUT: %.loc15_25.3: type = converted %.loc15_24, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc15_25.4: type = converted %.loc15_25.1, constants.%tuple.type [template = constants.%tuple.type]
|
||||
// CHECK:STDOUT: %n.param: %empty_tuple.type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc15_12.3: type = splice_block %.loc15_12.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc15_12.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc15_12.2: type = converted %.loc15_12.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc15_12.1: type = splice_block %.loc15_12.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc15_12.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc15_12.3: type = converted %.loc15_12.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: %empty_tuple.type = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref %tuple.type = out_param runtime_param1
|
||||
|
||||
@@ -51,9 +51,9 @@ fn C(r#if: ()) -> () {
|
||||
// CHECK:STDOUT: %.loc15_17.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc15_17.2: type = converted %.loc15_17.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %n.param: %empty_tuple.type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc15_10.3: type = splice_block %.loc15_10.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc15_10.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc15_10.2: type = converted %.loc15_10.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc15_10.1: type = splice_block %.loc15_10.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc15_10.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc15_10.3: type = converted %.loc15_10.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: %empty_tuple.type = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref %empty_tuple.type = out_param runtime_param1
|
||||
@@ -68,9 +68,9 @@ fn C(r#if: ()) -> () {
|
||||
// CHECK:STDOUT: %.loc19_19.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc19_19.2: type = converted %.loc19_19.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %n.param: %empty_tuple.type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc19_12.3: type = splice_block %.loc19_12.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc19_12.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc19_12.2: type = converted %.loc19_12.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc19_12.1: type = splice_block %.loc19_12.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc19_12.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc19_12.3: type = converted %.loc19_12.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: %empty_tuple.type = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref %empty_tuple.type = out_param runtime_param1
|
||||
@@ -85,9 +85,9 @@ fn C(r#if: ()) -> () {
|
||||
// CHECK:STDOUT: %.loc23_20.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc23_20.2: type = converted %.loc23_20.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %if.param: %empty_tuple.type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc23_13.3: type = splice_block %.loc23_13.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc23_13.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc23_13.2: type = converted %.loc23_13.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc23_13.1: type = splice_block %.loc23_13.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc23_13.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc23_13.3: type = converted %.loc23_13.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %if: %empty_tuple.type = bind_name r#if, %if.param
|
||||
// CHECK:STDOUT: %return.param: ref %empty_tuple.type = out_param runtime_param1
|
||||
|
||||
@@ -44,9 +44,9 @@ fn Foo(n: ()) -> ((), ()) {
|
||||
// CHECK:STDOUT: %.loc15_25.3: type = converted %.loc15_24, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc15_25.4: type = converted %.loc15_25.1, constants.%tuple.type [template = constants.%tuple.type]
|
||||
// CHECK:STDOUT: %n.param: %empty_tuple.type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc15_12.3: type = splice_block %.loc15_12.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc15_12.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc15_12.2: type = converted %.loc15_12.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc15_12.1: type = splice_block %.loc15_12.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc15_12.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc15_12.3: type = converted %.loc15_12.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: %empty_tuple.type = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref %tuple.type = out_param runtime_param1
|
||||
|
||||
+12
-12
@@ -95,17 +95,17 @@ var d: C(false == false) = True();
|
||||
// CHECK:STDOUT: %.loc4_28.1: type = value_of_initializer %bool.make_type.loc4_28 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_28.2: type = converted %bool.make_type.loc4_28, %.loc4_28.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc4_10.3: type = splice_block %.loc4_10.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc4_10.1: type = splice_block %.loc4_10.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc4_10: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_10.1: type = value_of_initializer %bool.make_type.loc4_10 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_10.2: type = converted %bool.make_type.loc4_10, %.loc4_10.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_10.2: type = value_of_initializer %bool.make_type.loc4_10 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_10.3: type = converted %bool.make_type.loc4_10, %.loc4_10.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: bool = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc4_19.3: type = splice_block %.loc4_19.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc4_19.1: type = splice_block %.loc4_19.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc4_19: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_19.1: type = value_of_initializer %bool.make_type.loc4_19 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_19.2: type = converted %bool.make_type.loc4_19, %.loc4_19.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_19.2: type = value_of_initializer %bool.make_type.loc4_19 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_19.3: type = converted %bool.make_type.loc4_19, %.loc4_19.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
@@ -116,10 +116,10 @@ var d: C(false == false) = True();
|
||||
// CHECK:STDOUT: %B.param_patt: bool = value_param_pattern %B.patt.loc6_9.1, runtime_param<invalid> [symbolic = %B.patt.loc6_9.2 (constants.%B.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %B.param: bool = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc6_13.3: type = splice_block %.loc6_13.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc6_13.1: type = splice_block %.loc6_13.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc6_13.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc6_13.2: type = converted %bool.make_type, %.loc6_13.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc6_13.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc6_13.3: type = converted %bool.make_type, %.loc6_13.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %B.loc6_9.1: bool = bind_symbolic_name B, 0, %B.param [symbolic = %B.loc6_9.2 (constants.%B)]
|
||||
// CHECK:STDOUT: }
|
||||
@@ -262,10 +262,10 @@ var d: C(false == false) = True();
|
||||
// CHECK:STDOUT: %B.param_patt: bool = value_param_pattern %B.patt.loc4_9.1, runtime_param<invalid> [symbolic = %B.patt.loc4_9.2 (constants.%B.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %B.param: bool = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc4_13.3: type = splice_block %.loc4_13.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc4_13.1: type = splice_block %.loc4_13.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_13.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_13.2: type = converted %bool.make_type, %.loc4_13.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_13.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_13.3: type = converted %bool.make_type, %.loc4_13.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %B.loc4_9.1: bool = bind_symbolic_name B, 0, %B.param [symbolic = %B.loc4_9.2 (constants.%B)]
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+12
-12
@@ -95,17 +95,17 @@ var d: C(false != false) = False();
|
||||
// CHECK:STDOUT: %.loc4_29.1: type = value_of_initializer %bool.make_type.loc4_29 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_29.2: type = converted %bool.make_type.loc4_29, %.loc4_29.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc4_11.3: type = splice_block %.loc4_11.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc4_11.1: type = splice_block %.loc4_11.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc4_11: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_11.1: type = value_of_initializer %bool.make_type.loc4_11 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_11.2: type = converted %bool.make_type.loc4_11, %.loc4_11.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_11.2: type = value_of_initializer %bool.make_type.loc4_11 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_11.3: type = converted %bool.make_type.loc4_11, %.loc4_11.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: bool = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc4_20.3: type = splice_block %.loc4_20.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc4_20.1: type = splice_block %.loc4_20.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc4_20: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_20.1: type = value_of_initializer %bool.make_type.loc4_20 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_20.2: type = converted %bool.make_type.loc4_20, %.loc4_20.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_20.2: type = value_of_initializer %bool.make_type.loc4_20 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_20.3: type = converted %bool.make_type.loc4_20, %.loc4_20.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
@@ -116,10 +116,10 @@ var d: C(false != false) = False();
|
||||
// CHECK:STDOUT: %B.param_patt: bool = value_param_pattern %B.patt.loc6_9.1, runtime_param<invalid> [symbolic = %B.patt.loc6_9.2 (constants.%B.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %B.param: bool = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc6_13.3: type = splice_block %.loc6_13.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc6_13.1: type = splice_block %.loc6_13.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc6_13.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc6_13.2: type = converted %bool.make_type, %.loc6_13.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc6_13.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc6_13.3: type = converted %bool.make_type, %.loc6_13.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %B.loc6_9.1: bool = bind_symbolic_name B, 0, %B.param [symbolic = %B.loc6_9.2 (constants.%B)]
|
||||
// CHECK:STDOUT: }
|
||||
@@ -262,10 +262,10 @@ var d: C(false != false) = False();
|
||||
// CHECK:STDOUT: %B.param_patt: bool = value_param_pattern %B.patt.loc4_9.1, runtime_param<invalid> [symbolic = %B.patt.loc4_9.2 (constants.%B.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %B.param: bool = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc4_13.3: type = splice_block %.loc4_13.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc4_13.1: type = splice_block %.loc4_13.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_13.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_13.2: type = converted %bool.make_type, %.loc4_13.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_13.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_13.3: type = converted %bool.make_type, %.loc4_13.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %B.loc4_9.1: bool = bind_symbolic_name B, 0, %B.param [symbolic = %B.loc4_9.2 (constants.%B)]
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+54
-54
@@ -94,19 +94,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc2_27.1: type = value_of_initializer %float.make_type.loc2_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_27.2: type = converted %float.make_type.loc2_27, %.loc2_27.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc2_11.3: type = splice_block %.loc2_11.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_11.1: type = splice_block %.loc2_11.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_11: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_11: init type = call constants.%Float(%int_64.loc2_11) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.1: type = value_of_initializer %float.make_type.loc2_11 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.2: type = converted %float.make_type.loc2_11, %.loc2_11.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.2: type = value_of_initializer %float.make_type.loc2_11 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.3: type = converted %float.make_type.loc2_11, %.loc2_11.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc2_19.3: type = splice_block %.loc2_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_19.1: type = splice_block %.loc2_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_19: init type = call constants.%Float(%int_64.loc2_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.1: type = value_of_initializer %float.make_type.loc2_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.2: type = converted %float.make_type.loc2_19, %.loc2_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.2: type = value_of_initializer %float.make_type.loc2_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.3: type = converted %float.make_type.loc2_19, %.loc2_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param2
|
||||
@@ -125,19 +125,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc4_35.1: type = value_of_initializer %float.make_type.loc4_35 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_35.2: type = converted %float.make_type.loc4_35, %.loc4_35.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc4_19.3: type = splice_block %.loc4_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc4_19.1: type = splice_block %.loc4_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc4_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc4_19: init type = call constants.%Float(%int_64.loc4_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.1: type = value_of_initializer %float.make_type.loc4_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.2: type = converted %float.make_type.loc4_19, %.loc4_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.2: type = value_of_initializer %float.make_type.loc4_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.3: type = converted %float.make_type.loc4_19, %.loc4_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc4_27.3: type = splice_block %.loc4_27.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc4_27.1: type = splice_block %.loc4_27.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc4_27: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc4_27: init type = call constants.%Float(%int_64.loc4_27) [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.1: type = value_of_initializer %float.make_type.loc4_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.2: type = converted %float.make_type.loc4_27, %.loc4_27.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.2: type = value_of_initializer %float.make_type.loc4_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.3: type = converted %float.make_type.loc4_27, %.loc4_27.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param2
|
||||
@@ -226,11 +226,11 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc8_22.1: type = value_of_initializer %float.make_type.loc8_22 [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_22.2: type = converted %float.make_type.loc8_22, %.loc8_22.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc8_14.3: type = splice_block %.loc8_14.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc8_14.1: type = splice_block %.loc8_14.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc8_14: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc8_14: init type = call constants.%Float(%int_64.loc8_14) [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_14.1: type = value_of_initializer %float.make_type.loc8_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_14.2: type = converted %float.make_type.loc8_14, %.loc8_14.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_14.2: type = value_of_initializer %float.make_type.loc8_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_14.3: type = converted %float.make_type.loc8_14, %.loc8_14.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param1
|
||||
@@ -251,27 +251,27 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc13_39.1: type = value_of_initializer %float.make_type.loc13_39 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_39.2: type = converted %float.make_type.loc13_39, %.loc13_39.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc13_15.3: type = splice_block %.loc13_15.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc13_15.1: type = splice_block %.loc13_15.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc13_15: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc13_15: init type = call constants.%Float(%int_64.loc13_15) [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.1: type = value_of_initializer %float.make_type.loc13_15 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.2: type = converted %float.make_type.loc13_15, %.loc13_15.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.2: type = value_of_initializer %float.make_type.loc13_15 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.3: type = converted %float.make_type.loc13_15, %.loc13_15.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc13_23.3: type = splice_block %.loc13_23.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc13_23.1: type = splice_block %.loc13_23.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc13_23: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc13_23: init type = call constants.%Float(%int_64.loc13_23) [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.1: type = value_of_initializer %float.make_type.loc13_23 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.2: type = converted %float.make_type.loc13_23, %.loc13_23.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.2: type = value_of_initializer %float.make_type.loc13_23 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.3: type = converted %float.make_type.loc13_23, %.loc13_23.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %c.param: f64 = value_param runtime_param2
|
||||
// CHECK:STDOUT: %.loc13_31.3: type = splice_block %.loc13_31.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc13_31.1: type = splice_block %.loc13_31.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc13_31: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc13_31: init type = call constants.%Float(%int_64.loc13_31) [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_31.1: type = value_of_initializer %float.make_type.loc13_31 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_31.2: type = converted %float.make_type.loc13_31, %.loc13_31.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_31.2: type = value_of_initializer %float.make_type.loc13_31 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_31.3: type = converted %float.make_type.loc13_31, %.loc13_31.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %c: f64 = bind_name c, %c.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param3
|
||||
@@ -289,19 +289,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc17_37.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc17_37.2: type = converted %bool.make_type, %.loc17_37.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc17_21.3: type = splice_block %.loc17_21.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc17_21.1: type = splice_block %.loc17_21.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc17_21: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc17_21: init type = call constants.%Float(%int_64.loc17_21) [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_21.1: type = value_of_initializer %float.make_type.loc17_21 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_21.2: type = converted %float.make_type.loc17_21, %.loc17_21.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_21.2: type = value_of_initializer %float.make_type.loc17_21 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_21.3: type = converted %float.make_type.loc17_21, %.loc17_21.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc17_29.3: type = splice_block %.loc17_29.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc17_29.1: type = splice_block %.loc17_29.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc17_29: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc17_29: init type = call constants.%Float(%int_64.loc17_29) [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_29.1: type = value_of_initializer %float.make_type.loc17_29 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_29.2: type = converted %float.make_type.loc17_29, %.loc17_29.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_29.2: type = value_of_initializer %float.make_type.loc17_29 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_29.3: type = converted %float.make_type.loc17_29, %.loc17_29.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
@@ -320,19 +320,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc18_33.1: type = value_of_initializer %float.make_type.loc18_33 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_33.2: type = converted %float.make_type.loc18_33, %.loc18_33.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc18_17.3: type = splice_block %.loc18_17.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc18_17.1: type = splice_block %.loc18_17.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc18_17: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc18_17: init type = call constants.%Float(%int_64.loc18_17) [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_17.1: type = value_of_initializer %float.make_type.loc18_17 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_17.2: type = converted %float.make_type.loc18_17, %.loc18_17.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_17.2: type = value_of_initializer %float.make_type.loc18_17 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_17.3: type = converted %float.make_type.loc18_17, %.loc18_17.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc18_25.3: type = splice_block %.loc18_25.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc18_25.1: type = splice_block %.loc18_25.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc18_25: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc18_25: init type = call constants.%Float(%int_64.loc18_25) [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_25.1: type = value_of_initializer %float.make_type.loc18_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_25.2: type = converted %float.make_type.loc18_25, %.loc18_25.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_25.2: type = value_of_initializer %float.make_type.loc18_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_25.3: type = converted %float.make_type.loc18_25, %.loc18_25.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param2
|
||||
@@ -349,11 +349,11 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc20_33.1: type = value_of_initializer %float.make_type.loc20_33 [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_33.2: type = converted %float.make_type.loc20_33, %.loc20_33.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc20_25.3: type = splice_block %.loc20_25.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc20_25.1: type = splice_block %.loc20_25.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc20_25: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc20_25: init type = call constants.%Float(%int_64.loc20_25) [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_25.1: type = value_of_initializer %float.make_type.loc20_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_25.2: type = converted %float.make_type.loc20_25, %.loc20_25.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_25.2: type = value_of_initializer %float.make_type.loc20_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_25.3: type = converted %float.make_type.loc20_25, %.loc20_25.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param1
|
||||
@@ -374,27 +374,27 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc24_50.1: type = value_of_initializer %float.make_type.loc24_50 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_50.2: type = converted %float.make_type.loc24_50, %.loc24_50.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc24_26.3: type = splice_block %.loc24_26.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc24_26.1: type = splice_block %.loc24_26.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc24_26: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc24_26: init type = call constants.%Float(%int_64.loc24_26) [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_26.1: type = value_of_initializer %float.make_type.loc24_26 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_26.2: type = converted %float.make_type.loc24_26, %.loc24_26.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_26.2: type = value_of_initializer %float.make_type.loc24_26 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_26.3: type = converted %float.make_type.loc24_26, %.loc24_26.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc24_34.3: type = splice_block %.loc24_34.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc24_34.1: type = splice_block %.loc24_34.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc24_34: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc24_34: init type = call constants.%Float(%int_64.loc24_34) [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_34.1: type = value_of_initializer %float.make_type.loc24_34 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_34.2: type = converted %float.make_type.loc24_34, %.loc24_34.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_34.2: type = value_of_initializer %float.make_type.loc24_34 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_34.3: type = converted %float.make_type.loc24_34, %.loc24_34.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %c.param: f64 = value_param runtime_param2
|
||||
// CHECK:STDOUT: %.loc24_42.3: type = splice_block %.loc24_42.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc24_42.1: type = splice_block %.loc24_42.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc24_42: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc24_42: init type = call constants.%Float(%int_64.loc24_42) [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_42.1: type = value_of_initializer %float.make_type.loc24_42 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_42.2: type = converted %float.make_type.loc24_42, %.loc24_42.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_42.2: type = value_of_initializer %float.make_type.loc24_42 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_42.3: type = converted %float.make_type.loc24_42, %.loc24_42.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %c: f64 = bind_name c, %c.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param3
|
||||
@@ -412,19 +412,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc28_48.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc28_48.2: type = converted %bool.make_type, %.loc28_48.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc28_32.3: type = splice_block %.loc28_32.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc28_32.1: type = splice_block %.loc28_32.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc28_32: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc28_32: init type = call constants.%Float(%int_64.loc28_32) [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_32.1: type = value_of_initializer %float.make_type.loc28_32 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_32.2: type = converted %float.make_type.loc28_32, %.loc28_32.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_32.2: type = value_of_initializer %float.make_type.loc28_32 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_32.3: type = converted %float.make_type.loc28_32, %.loc28_32.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc28_40.3: type = splice_block %.loc28_40.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc28_40.1: type = splice_block %.loc28_40.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc28_40: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc28_40: init type = call constants.%Float(%int_64.loc28_40) [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_40.1: type = value_of_initializer %float.make_type.loc28_40 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_40.2: type = converted %float.make_type.loc28_40, %.loc28_40.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_40.2: type = value_of_initializer %float.make_type.loc28_40 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_40.3: type = converted %float.make_type.loc28_40, %.loc28_40.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
|
||||
+54
-54
@@ -102,19 +102,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc2_27.1: type = value_of_initializer %float.make_type.loc2_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_27.2: type = converted %float.make_type.loc2_27, %.loc2_27.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc2_11.3: type = splice_block %.loc2_11.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_11.1: type = splice_block %.loc2_11.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_11: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_11: init type = call constants.%Float(%int_64.loc2_11) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.1: type = value_of_initializer %float.make_type.loc2_11 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.2: type = converted %float.make_type.loc2_11, %.loc2_11.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.2: type = value_of_initializer %float.make_type.loc2_11 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.3: type = converted %float.make_type.loc2_11, %.loc2_11.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc2_19.3: type = splice_block %.loc2_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_19.1: type = splice_block %.loc2_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_19: init type = call constants.%Float(%int_64.loc2_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.1: type = value_of_initializer %float.make_type.loc2_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.2: type = converted %float.make_type.loc2_19, %.loc2_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.2: type = value_of_initializer %float.make_type.loc2_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.3: type = converted %float.make_type.loc2_19, %.loc2_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param2
|
||||
@@ -133,19 +133,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc4_35.1: type = value_of_initializer %float.make_type.loc4_35 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_35.2: type = converted %float.make_type.loc4_35, %.loc4_35.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc4_19.3: type = splice_block %.loc4_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc4_19.1: type = splice_block %.loc4_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc4_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc4_19: init type = call constants.%Float(%int_64.loc4_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.1: type = value_of_initializer %float.make_type.loc4_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.2: type = converted %float.make_type.loc4_19, %.loc4_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.2: type = value_of_initializer %float.make_type.loc4_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.3: type = converted %float.make_type.loc4_19, %.loc4_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc4_27.3: type = splice_block %.loc4_27.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc4_27.1: type = splice_block %.loc4_27.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc4_27: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc4_27: init type = call constants.%Float(%int_64.loc4_27) [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.1: type = value_of_initializer %float.make_type.loc4_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.2: type = converted %float.make_type.loc4_27, %.loc4_27.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.2: type = value_of_initializer %float.make_type.loc4_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.3: type = converted %float.make_type.loc4_27, %.loc4_27.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param2
|
||||
@@ -248,11 +248,11 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc8_22.1: type = value_of_initializer %float.make_type.loc8_22 [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_22.2: type = converted %float.make_type.loc8_22, %.loc8_22.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc8_14.3: type = splice_block %.loc8_14.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc8_14.1: type = splice_block %.loc8_14.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc8_14: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc8_14: init type = call constants.%Float(%int_64.loc8_14) [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_14.1: type = value_of_initializer %float.make_type.loc8_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_14.2: type = converted %float.make_type.loc8_14, %.loc8_14.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_14.2: type = value_of_initializer %float.make_type.loc8_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_14.3: type = converted %float.make_type.loc8_14, %.loc8_14.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param1
|
||||
@@ -273,27 +273,27 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc13_39.1: type = value_of_initializer %float.make_type.loc13_39 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_39.2: type = converted %float.make_type.loc13_39, %.loc13_39.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc13_15.3: type = splice_block %.loc13_15.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc13_15.1: type = splice_block %.loc13_15.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc13_15: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc13_15: init type = call constants.%Float(%int_64.loc13_15) [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.1: type = value_of_initializer %float.make_type.loc13_15 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.2: type = converted %float.make_type.loc13_15, %.loc13_15.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.2: type = value_of_initializer %float.make_type.loc13_15 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.3: type = converted %float.make_type.loc13_15, %.loc13_15.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc13_23.3: type = splice_block %.loc13_23.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc13_23.1: type = splice_block %.loc13_23.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc13_23: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc13_23: init type = call constants.%Float(%int_64.loc13_23) [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.1: type = value_of_initializer %float.make_type.loc13_23 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.2: type = converted %float.make_type.loc13_23, %.loc13_23.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.2: type = value_of_initializer %float.make_type.loc13_23 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.3: type = converted %float.make_type.loc13_23, %.loc13_23.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %c.param: f64 = value_param runtime_param2
|
||||
// CHECK:STDOUT: %.loc13_31.3: type = splice_block %.loc13_31.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc13_31.1: type = splice_block %.loc13_31.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc13_31: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc13_31: init type = call constants.%Float(%int_64.loc13_31) [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_31.1: type = value_of_initializer %float.make_type.loc13_31 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_31.2: type = converted %float.make_type.loc13_31, %.loc13_31.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_31.2: type = value_of_initializer %float.make_type.loc13_31 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_31.3: type = converted %float.make_type.loc13_31, %.loc13_31.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %c: f64 = bind_name c, %c.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param3
|
||||
@@ -311,19 +311,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc17_37.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc17_37.2: type = converted %bool.make_type, %.loc17_37.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc17_21.3: type = splice_block %.loc17_21.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc17_21.1: type = splice_block %.loc17_21.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc17_21: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc17_21: init type = call constants.%Float(%int_64.loc17_21) [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_21.1: type = value_of_initializer %float.make_type.loc17_21 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_21.2: type = converted %float.make_type.loc17_21, %.loc17_21.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_21.2: type = value_of_initializer %float.make_type.loc17_21 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_21.3: type = converted %float.make_type.loc17_21, %.loc17_21.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc17_29.3: type = splice_block %.loc17_29.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc17_29.1: type = splice_block %.loc17_29.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc17_29: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc17_29: init type = call constants.%Float(%int_64.loc17_29) [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_29.1: type = value_of_initializer %float.make_type.loc17_29 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_29.2: type = converted %float.make_type.loc17_29, %.loc17_29.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_29.2: type = value_of_initializer %float.make_type.loc17_29 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_29.3: type = converted %float.make_type.loc17_29, %.loc17_29.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
@@ -342,19 +342,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc18_33.1: type = value_of_initializer %float.make_type.loc18_33 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_33.2: type = converted %float.make_type.loc18_33, %.loc18_33.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc18_17.3: type = splice_block %.loc18_17.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc18_17.1: type = splice_block %.loc18_17.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc18_17: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc18_17: init type = call constants.%Float(%int_64.loc18_17) [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_17.1: type = value_of_initializer %float.make_type.loc18_17 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_17.2: type = converted %float.make_type.loc18_17, %.loc18_17.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_17.2: type = value_of_initializer %float.make_type.loc18_17 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_17.3: type = converted %float.make_type.loc18_17, %.loc18_17.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc18_25.3: type = splice_block %.loc18_25.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc18_25.1: type = splice_block %.loc18_25.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc18_25: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc18_25: init type = call constants.%Float(%int_64.loc18_25) [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_25.1: type = value_of_initializer %float.make_type.loc18_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_25.2: type = converted %float.make_type.loc18_25, %.loc18_25.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_25.2: type = value_of_initializer %float.make_type.loc18_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_25.3: type = converted %float.make_type.loc18_25, %.loc18_25.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param2
|
||||
@@ -371,11 +371,11 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc20_33.1: type = value_of_initializer %float.make_type.loc20_33 [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_33.2: type = converted %float.make_type.loc20_33, %.loc20_33.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc20_25.3: type = splice_block %.loc20_25.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc20_25.1: type = splice_block %.loc20_25.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc20_25: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc20_25: init type = call constants.%Float(%int_64.loc20_25) [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_25.1: type = value_of_initializer %float.make_type.loc20_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_25.2: type = converted %float.make_type.loc20_25, %.loc20_25.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_25.2: type = value_of_initializer %float.make_type.loc20_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_25.3: type = converted %float.make_type.loc20_25, %.loc20_25.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param1
|
||||
@@ -396,27 +396,27 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc24_50.1: type = value_of_initializer %float.make_type.loc24_50 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_50.2: type = converted %float.make_type.loc24_50, %.loc24_50.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc24_26.3: type = splice_block %.loc24_26.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc24_26.1: type = splice_block %.loc24_26.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc24_26: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc24_26: init type = call constants.%Float(%int_64.loc24_26) [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_26.1: type = value_of_initializer %float.make_type.loc24_26 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_26.2: type = converted %float.make_type.loc24_26, %.loc24_26.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_26.2: type = value_of_initializer %float.make_type.loc24_26 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_26.3: type = converted %float.make_type.loc24_26, %.loc24_26.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc24_34.3: type = splice_block %.loc24_34.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc24_34.1: type = splice_block %.loc24_34.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc24_34: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc24_34: init type = call constants.%Float(%int_64.loc24_34) [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_34.1: type = value_of_initializer %float.make_type.loc24_34 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_34.2: type = converted %float.make_type.loc24_34, %.loc24_34.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_34.2: type = value_of_initializer %float.make_type.loc24_34 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_34.3: type = converted %float.make_type.loc24_34, %.loc24_34.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %c.param: f64 = value_param runtime_param2
|
||||
// CHECK:STDOUT: %.loc24_42.3: type = splice_block %.loc24_42.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc24_42.1: type = splice_block %.loc24_42.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc24_42: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc24_42: init type = call constants.%Float(%int_64.loc24_42) [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_42.1: type = value_of_initializer %float.make_type.loc24_42 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_42.2: type = converted %float.make_type.loc24_42, %.loc24_42.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_42.2: type = value_of_initializer %float.make_type.loc24_42 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_42.3: type = converted %float.make_type.loc24_42, %.loc24_42.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %c: f64 = bind_name c, %c.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param3
|
||||
@@ -434,19 +434,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc28_48.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc28_48.2: type = converted %bool.make_type, %.loc28_48.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc28_32.3: type = splice_block %.loc28_32.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc28_32.1: type = splice_block %.loc28_32.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc28_32: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc28_32: init type = call constants.%Float(%int_64.loc28_32) [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_32.1: type = value_of_initializer %float.make_type.loc28_32 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_32.2: type = converted %float.make_type.loc28_32, %.loc28_32.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_32.2: type = value_of_initializer %float.make_type.loc28_32 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_32.3: type = converted %float.make_type.loc28_32, %.loc28_32.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc28_40.3: type = splice_block %.loc28_40.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc28_40.1: type = splice_block %.loc28_40.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc28_40: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc28_40: init type = call constants.%Float(%int_64.loc28_40) [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_40.1: type = value_of_initializer %float.make_type.loc28_40 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_40.2: type = converted %float.make_type.loc28_40, %.loc28_40.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_40.2: type = value_of_initializer %float.make_type.loc28_40 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_40.3: type = converted %float.make_type.loc28_40, %.loc28_40.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
|
||||
+18
-18
@@ -88,19 +88,19 @@ fn WrongResult(a: f64, b: f64) -> f64 = "float.eq";
|
||||
// CHECK:STDOUT: %.loc2_26.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc2_26.2: type = converted %bool.make_type, %.loc2_26.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc2_10.3: type = splice_block %.loc2_10.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_10.1: type = splice_block %.loc2_10.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_10: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_10: init type = call constants.%Float(%int_64.loc2_10) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_10.1: type = value_of_initializer %float.make_type.loc2_10 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_10.2: type = converted %float.make_type.loc2_10, %.loc2_10.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_10.2: type = value_of_initializer %float.make_type.loc2_10 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_10.3: type = converted %float.make_type.loc2_10, %.loc2_10.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc2_18.3: type = splice_block %.loc2_18.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_18.1: type = splice_block %.loc2_18.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_18: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_18: init type = call constants.%Float(%int_64.loc2_18) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_18.1: type = value_of_initializer %float.make_type.loc2_18 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_18.2: type = converted %float.make_type.loc2_18, %.loc2_18.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_18.2: type = value_of_initializer %float.make_type.loc2_18 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_18.3: type = converted %float.make_type.loc2_18, %.loc2_18.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
@@ -133,19 +133,19 @@ fn WrongResult(a: f64, b: f64) -> f64 = "float.eq";
|
||||
// CHECK:STDOUT: %.loc12_35.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc12_35.2: type = converted %bool.make_type, %.loc12_35.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc12_19.3: type = splice_block %.loc12_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc12_19.1: type = splice_block %.loc12_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc12_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc12_19: init type = call constants.%Float(%int_64.loc12_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_19.1: type = value_of_initializer %float.make_type.loc12_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_19.2: type = converted %float.make_type.loc12_19, %.loc12_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_19.2: type = value_of_initializer %float.make_type.loc12_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_19.3: type = converted %float.make_type.loc12_19, %.loc12_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc12_27.3: type = splice_block %.loc12_27.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc12_27.1: type = splice_block %.loc12_27.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc12_27: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc12_27: init type = call constants.%Float(%int_64.loc12_27) [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_27.1: type = value_of_initializer %float.make_type.loc12_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_27.2: type = converted %float.make_type.loc12_27, %.loc12_27.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_27.2: type = value_of_initializer %float.make_type.loc12_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_27.3: type = converted %float.make_type.loc12_27, %.loc12_27.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
@@ -262,19 +262,19 @@ fn WrongResult(a: f64, b: f64) -> f64 = "float.eq";
|
||||
// CHECK:STDOUT: %.loc7_35.1: type = value_of_initializer %float.make_type.loc7_35 [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_35.2: type = converted %float.make_type.loc7_35, %.loc7_35.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc7_19.3: type = splice_block %.loc7_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc7_19.1: type = splice_block %.loc7_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc7_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc7_19: init type = call constants.%Float(%int_64.loc7_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_19.1: type = value_of_initializer %float.make_type.loc7_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_19.2: type = converted %float.make_type.loc7_19, %.loc7_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_19.2: type = value_of_initializer %float.make_type.loc7_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_19.3: type = converted %float.make_type.loc7_19, %.loc7_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc7_27.3: type = splice_block %.loc7_27.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc7_27.1: type = splice_block %.loc7_27.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc7_27: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc7_27: init type = call constants.%Float(%int_64.loc7_27) [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_27.1: type = value_of_initializer %float.make_type.loc7_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_27.2: type = converted %float.make_type.loc7_27, %.loc7_27.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_27.2: type = value_of_initializer %float.make_type.loc7_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_27.3: type = converted %float.make_type.loc7_27, %.loc7_27.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param2
|
||||
|
||||
+15
-15
@@ -88,19 +88,19 @@ fn RuntimeCall(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc2_31.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc2_31.2: type = converted %bool.make_type, %.loc2_31.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc2_15.3: type = splice_block %.loc2_15.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_15.1: type = splice_block %.loc2_15.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_15: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_15: init type = call constants.%Float(%int_64.loc2_15) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_15.1: type = value_of_initializer %float.make_type.loc2_15 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_15.2: type = converted %float.make_type.loc2_15, %.loc2_15.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_15.2: type = value_of_initializer %float.make_type.loc2_15 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_15.3: type = converted %float.make_type.loc2_15, %.loc2_15.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc2_23.3: type = splice_block %.loc2_23.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_23.1: type = splice_block %.loc2_23.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_23: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_23: init type = call constants.%Float(%int_64.loc2_23) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_23.1: type = value_of_initializer %float.make_type.loc2_23 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_23.2: type = converted %float.make_type.loc2_23, %.loc2_23.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_23.2: type = value_of_initializer %float.make_type.loc2_23 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_23.3: type = converted %float.make_type.loc2_23, %.loc2_23.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
@@ -117,11 +117,11 @@ fn RuntimeCall(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc3_22.1: type = value_of_initializer %float.make_type.loc3_22 [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_22.2: type = converted %float.make_type.loc3_22, %.loc3_22.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc3_14.3: type = splice_block %.loc3_14.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc3_14.1: type = splice_block %.loc3_14.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc3_14: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc3_14: init type = call constants.%Float(%int_64.loc3_14) [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_14.1: type = value_of_initializer %float.make_type.loc3_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_14.2: type = converted %float.make_type.loc3_14, %.loc3_14.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_14.2: type = value_of_initializer %float.make_type.loc3_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_14.3: type = converted %float.make_type.loc3_14, %.loc3_14.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param1
|
||||
@@ -154,19 +154,19 @@ fn RuntimeCall(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc16_35.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc16_35.2: type = converted %bool.make_type, %.loc16_35.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc16_19.3: type = splice_block %.loc16_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc16_19.1: type = splice_block %.loc16_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc16_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc16_19: init type = call constants.%Float(%int_64.loc16_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_19.1: type = value_of_initializer %float.make_type.loc16_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_19.2: type = converted %float.make_type.loc16_19, %.loc16_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_19.2: type = value_of_initializer %float.make_type.loc16_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_19.3: type = converted %float.make_type.loc16_19, %.loc16_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc16_27.3: type = splice_block %.loc16_27.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc16_27.1: type = splice_block %.loc16_27.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc16_27: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc16_27: init type = call constants.%Float(%int_64.loc16_27) [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_27.1: type = value_of_initializer %float.make_type.loc16_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_27.2: type = converted %float.make_type.loc16_27, %.loc16_27.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_27.2: type = value_of_initializer %float.make_type.loc16_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_27.3: type = converted %float.make_type.loc16_27, %.loc16_27.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
|
||||
+15
-15
@@ -88,19 +88,19 @@ fn RuntimeCall(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc2_33.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc2_33.2: type = converted %bool.make_type, %.loc2_33.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc2_17.3: type = splice_block %.loc2_17.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_17.1: type = splice_block %.loc2_17.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_17: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_17: init type = call constants.%Float(%int_64.loc2_17) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_17.1: type = value_of_initializer %float.make_type.loc2_17 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_17.2: type = converted %float.make_type.loc2_17, %.loc2_17.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_17.2: type = value_of_initializer %float.make_type.loc2_17 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_17.3: type = converted %float.make_type.loc2_17, %.loc2_17.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc2_25.3: type = splice_block %.loc2_25.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_25.1: type = splice_block %.loc2_25.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_25: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_25: init type = call constants.%Float(%int_64.loc2_25) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_25.1: type = value_of_initializer %float.make_type.loc2_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_25.2: type = converted %float.make_type.loc2_25, %.loc2_25.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_25.2: type = value_of_initializer %float.make_type.loc2_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_25.3: type = converted %float.make_type.loc2_25, %.loc2_25.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
@@ -117,11 +117,11 @@ fn RuntimeCall(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc3_22.1: type = value_of_initializer %float.make_type.loc3_22 [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_22.2: type = converted %float.make_type.loc3_22, %.loc3_22.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc3_14.3: type = splice_block %.loc3_14.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc3_14.1: type = splice_block %.loc3_14.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc3_14: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc3_14: init type = call constants.%Float(%int_64.loc3_14) [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_14.1: type = value_of_initializer %float.make_type.loc3_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_14.2: type = converted %float.make_type.loc3_14, %.loc3_14.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_14.2: type = value_of_initializer %float.make_type.loc3_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_14.3: type = converted %float.make_type.loc3_14, %.loc3_14.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param1
|
||||
@@ -154,19 +154,19 @@ fn RuntimeCall(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc16_35.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc16_35.2: type = converted %bool.make_type, %.loc16_35.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc16_19.3: type = splice_block %.loc16_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc16_19.1: type = splice_block %.loc16_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc16_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc16_19: init type = call constants.%Float(%int_64.loc16_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_19.1: type = value_of_initializer %float.make_type.loc16_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_19.2: type = converted %float.make_type.loc16_19, %.loc16_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_19.2: type = value_of_initializer %float.make_type.loc16_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_19.3: type = converted %float.make_type.loc16_19, %.loc16_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc16_27.3: type = splice_block %.loc16_27.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc16_27.1: type = splice_block %.loc16_27.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc16_27: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc16_27: init type = call constants.%Float(%int_64.loc16_27) [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_27.1: type = value_of_initializer %float.make_type.loc16_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_27.2: type = converted %float.make_type.loc16_27, %.loc16_27.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_27.2: type = value_of_initializer %float.make_type.loc16_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_27.3: type = converted %float.make_type.loc16_27, %.loc16_27.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
|
||||
+15
-15
@@ -88,19 +88,19 @@ fn RuntimeCall(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc2_28.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc2_28.2: type = converted %bool.make_type, %.loc2_28.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc2_12.3: type = splice_block %.loc2_12.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_12.1: type = splice_block %.loc2_12.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_12: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_12: init type = call constants.%Float(%int_64.loc2_12) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_12.1: type = value_of_initializer %float.make_type.loc2_12 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_12.2: type = converted %float.make_type.loc2_12, %.loc2_12.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_12.2: type = value_of_initializer %float.make_type.loc2_12 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_12.3: type = converted %float.make_type.loc2_12, %.loc2_12.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc2_20.3: type = splice_block %.loc2_20.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_20.1: type = splice_block %.loc2_20.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_20: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_20: init type = call constants.%Float(%int_64.loc2_20) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_20.1: type = value_of_initializer %float.make_type.loc2_20 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_20.2: type = converted %float.make_type.loc2_20, %.loc2_20.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_20.2: type = value_of_initializer %float.make_type.loc2_20 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_20.3: type = converted %float.make_type.loc2_20, %.loc2_20.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
@@ -117,11 +117,11 @@ fn RuntimeCall(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc3_22.1: type = value_of_initializer %float.make_type.loc3_22 [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_22.2: type = converted %float.make_type.loc3_22, %.loc3_22.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc3_14.3: type = splice_block %.loc3_14.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc3_14.1: type = splice_block %.loc3_14.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc3_14: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc3_14: init type = call constants.%Float(%int_64.loc3_14) [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_14.1: type = value_of_initializer %float.make_type.loc3_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_14.2: type = converted %float.make_type.loc3_14, %.loc3_14.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_14.2: type = value_of_initializer %float.make_type.loc3_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_14.3: type = converted %float.make_type.loc3_14, %.loc3_14.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param1
|
||||
@@ -154,19 +154,19 @@ fn RuntimeCall(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc16_35.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc16_35.2: type = converted %bool.make_type, %.loc16_35.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc16_19.3: type = splice_block %.loc16_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc16_19.1: type = splice_block %.loc16_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc16_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc16_19: init type = call constants.%Float(%int_64.loc16_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_19.1: type = value_of_initializer %float.make_type.loc16_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_19.2: type = converted %float.make_type.loc16_19, %.loc16_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_19.2: type = value_of_initializer %float.make_type.loc16_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_19.3: type = converted %float.make_type.loc16_19, %.loc16_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc16_27.3: type = splice_block %.loc16_27.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc16_27.1: type = splice_block %.loc16_27.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc16_27: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc16_27: init type = call constants.%Float(%int_64.loc16_27) [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_27.1: type = value_of_initializer %float.make_type.loc16_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_27.2: type = converted %float.make_type.loc16_27, %.loc16_27.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_27.2: type = value_of_initializer %float.make_type.loc16_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_27.3: type = converted %float.make_type.loc16_27, %.loc16_27.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
|
||||
+15
-15
@@ -88,19 +88,19 @@ fn RuntimeCall(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc2_30.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc2_30.2: type = converted %bool.make_type, %.loc2_30.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc2_14.3: type = splice_block %.loc2_14.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_14.1: type = splice_block %.loc2_14.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_14: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_14: init type = call constants.%Float(%int_64.loc2_14) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_14.1: type = value_of_initializer %float.make_type.loc2_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_14.2: type = converted %float.make_type.loc2_14, %.loc2_14.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_14.2: type = value_of_initializer %float.make_type.loc2_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_14.3: type = converted %float.make_type.loc2_14, %.loc2_14.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc2_22.3: type = splice_block %.loc2_22.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_22.1: type = splice_block %.loc2_22.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_22: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_22: init type = call constants.%Float(%int_64.loc2_22) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_22.1: type = value_of_initializer %float.make_type.loc2_22 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_22.2: type = converted %float.make_type.loc2_22, %.loc2_22.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_22.2: type = value_of_initializer %float.make_type.loc2_22 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_22.3: type = converted %float.make_type.loc2_22, %.loc2_22.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
@@ -117,11 +117,11 @@ fn RuntimeCall(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc3_22.1: type = value_of_initializer %float.make_type.loc3_22 [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_22.2: type = converted %float.make_type.loc3_22, %.loc3_22.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc3_14.3: type = splice_block %.loc3_14.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc3_14.1: type = splice_block %.loc3_14.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc3_14: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc3_14: init type = call constants.%Float(%int_64.loc3_14) [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_14.1: type = value_of_initializer %float.make_type.loc3_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_14.2: type = converted %float.make_type.loc3_14, %.loc3_14.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_14.2: type = value_of_initializer %float.make_type.loc3_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc3_14.3: type = converted %float.make_type.loc3_14, %.loc3_14.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param1
|
||||
@@ -154,19 +154,19 @@ fn RuntimeCall(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc16_35.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc16_35.2: type = converted %bool.make_type, %.loc16_35.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc16_19.3: type = splice_block %.loc16_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc16_19.1: type = splice_block %.loc16_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc16_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc16_19: init type = call constants.%Float(%int_64.loc16_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_19.1: type = value_of_initializer %float.make_type.loc16_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_19.2: type = converted %float.make_type.loc16_19, %.loc16_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_19.2: type = value_of_initializer %float.make_type.loc16_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_19.3: type = converted %float.make_type.loc16_19, %.loc16_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc16_27.3: type = splice_block %.loc16_27.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc16_27.1: type = splice_block %.loc16_27.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc16_27: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc16_27: init type = call constants.%Float(%int_64.loc16_27) [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_27.1: type = value_of_initializer %float.make_type.loc16_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_27.2: type = converted %float.make_type.loc16_27, %.loc16_27.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_27.2: type = value_of_initializer %float.make_type.loc16_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc16_27.3: type = converted %float.make_type.loc16_27, %.loc16_27.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
|
||||
+54
-54
@@ -94,19 +94,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc2_27.1: type = value_of_initializer %float.make_type.loc2_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_27.2: type = converted %float.make_type.loc2_27, %.loc2_27.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc2_11.3: type = splice_block %.loc2_11.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_11.1: type = splice_block %.loc2_11.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_11: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_11: init type = call constants.%Float(%int_64.loc2_11) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.1: type = value_of_initializer %float.make_type.loc2_11 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.2: type = converted %float.make_type.loc2_11, %.loc2_11.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.2: type = value_of_initializer %float.make_type.loc2_11 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.3: type = converted %float.make_type.loc2_11, %.loc2_11.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc2_19.3: type = splice_block %.loc2_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_19.1: type = splice_block %.loc2_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_19: init type = call constants.%Float(%int_64.loc2_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.1: type = value_of_initializer %float.make_type.loc2_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.2: type = converted %float.make_type.loc2_19, %.loc2_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.2: type = value_of_initializer %float.make_type.loc2_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.3: type = converted %float.make_type.loc2_19, %.loc2_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param2
|
||||
@@ -125,19 +125,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc4_35.1: type = value_of_initializer %float.make_type.loc4_35 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_35.2: type = converted %float.make_type.loc4_35, %.loc4_35.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc4_19.3: type = splice_block %.loc4_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc4_19.1: type = splice_block %.loc4_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc4_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc4_19: init type = call constants.%Float(%int_64.loc4_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.1: type = value_of_initializer %float.make_type.loc4_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.2: type = converted %float.make_type.loc4_19, %.loc4_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.2: type = value_of_initializer %float.make_type.loc4_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.3: type = converted %float.make_type.loc4_19, %.loc4_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc4_27.3: type = splice_block %.loc4_27.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc4_27.1: type = splice_block %.loc4_27.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc4_27: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc4_27: init type = call constants.%Float(%int_64.loc4_27) [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.1: type = value_of_initializer %float.make_type.loc4_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.2: type = converted %float.make_type.loc4_27, %.loc4_27.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.2: type = value_of_initializer %float.make_type.loc4_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.3: type = converted %float.make_type.loc4_27, %.loc4_27.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param2
|
||||
@@ -226,11 +226,11 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc8_22.1: type = value_of_initializer %float.make_type.loc8_22 [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_22.2: type = converted %float.make_type.loc8_22, %.loc8_22.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc8_14.3: type = splice_block %.loc8_14.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc8_14.1: type = splice_block %.loc8_14.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc8_14: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc8_14: init type = call constants.%Float(%int_64.loc8_14) [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_14.1: type = value_of_initializer %float.make_type.loc8_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_14.2: type = converted %float.make_type.loc8_14, %.loc8_14.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_14.2: type = value_of_initializer %float.make_type.loc8_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_14.3: type = converted %float.make_type.loc8_14, %.loc8_14.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param1
|
||||
@@ -251,27 +251,27 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc13_39.1: type = value_of_initializer %float.make_type.loc13_39 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_39.2: type = converted %float.make_type.loc13_39, %.loc13_39.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc13_15.3: type = splice_block %.loc13_15.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc13_15.1: type = splice_block %.loc13_15.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc13_15: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc13_15: init type = call constants.%Float(%int_64.loc13_15) [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.1: type = value_of_initializer %float.make_type.loc13_15 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.2: type = converted %float.make_type.loc13_15, %.loc13_15.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.2: type = value_of_initializer %float.make_type.loc13_15 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.3: type = converted %float.make_type.loc13_15, %.loc13_15.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc13_23.3: type = splice_block %.loc13_23.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc13_23.1: type = splice_block %.loc13_23.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc13_23: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc13_23: init type = call constants.%Float(%int_64.loc13_23) [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.1: type = value_of_initializer %float.make_type.loc13_23 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.2: type = converted %float.make_type.loc13_23, %.loc13_23.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.2: type = value_of_initializer %float.make_type.loc13_23 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.3: type = converted %float.make_type.loc13_23, %.loc13_23.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %c.param: f64 = value_param runtime_param2
|
||||
// CHECK:STDOUT: %.loc13_31.3: type = splice_block %.loc13_31.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc13_31.1: type = splice_block %.loc13_31.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc13_31: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc13_31: init type = call constants.%Float(%int_64.loc13_31) [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_31.1: type = value_of_initializer %float.make_type.loc13_31 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_31.2: type = converted %float.make_type.loc13_31, %.loc13_31.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_31.2: type = value_of_initializer %float.make_type.loc13_31 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_31.3: type = converted %float.make_type.loc13_31, %.loc13_31.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %c: f64 = bind_name c, %c.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param3
|
||||
@@ -289,19 +289,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc17_37.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc17_37.2: type = converted %bool.make_type, %.loc17_37.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc17_21.3: type = splice_block %.loc17_21.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc17_21.1: type = splice_block %.loc17_21.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc17_21: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc17_21: init type = call constants.%Float(%int_64.loc17_21) [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_21.1: type = value_of_initializer %float.make_type.loc17_21 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_21.2: type = converted %float.make_type.loc17_21, %.loc17_21.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_21.2: type = value_of_initializer %float.make_type.loc17_21 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_21.3: type = converted %float.make_type.loc17_21, %.loc17_21.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc17_29.3: type = splice_block %.loc17_29.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc17_29.1: type = splice_block %.loc17_29.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc17_29: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc17_29: init type = call constants.%Float(%int_64.loc17_29) [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_29.1: type = value_of_initializer %float.make_type.loc17_29 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_29.2: type = converted %float.make_type.loc17_29, %.loc17_29.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_29.2: type = value_of_initializer %float.make_type.loc17_29 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_29.3: type = converted %float.make_type.loc17_29, %.loc17_29.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
@@ -320,19 +320,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc18_33.1: type = value_of_initializer %float.make_type.loc18_33 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_33.2: type = converted %float.make_type.loc18_33, %.loc18_33.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc18_17.3: type = splice_block %.loc18_17.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc18_17.1: type = splice_block %.loc18_17.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc18_17: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc18_17: init type = call constants.%Float(%int_64.loc18_17) [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_17.1: type = value_of_initializer %float.make_type.loc18_17 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_17.2: type = converted %float.make_type.loc18_17, %.loc18_17.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_17.2: type = value_of_initializer %float.make_type.loc18_17 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_17.3: type = converted %float.make_type.loc18_17, %.loc18_17.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc18_25.3: type = splice_block %.loc18_25.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc18_25.1: type = splice_block %.loc18_25.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc18_25: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc18_25: init type = call constants.%Float(%int_64.loc18_25) [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_25.1: type = value_of_initializer %float.make_type.loc18_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_25.2: type = converted %float.make_type.loc18_25, %.loc18_25.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_25.2: type = value_of_initializer %float.make_type.loc18_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_25.3: type = converted %float.make_type.loc18_25, %.loc18_25.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param2
|
||||
@@ -349,11 +349,11 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc20_33.1: type = value_of_initializer %float.make_type.loc20_33 [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_33.2: type = converted %float.make_type.loc20_33, %.loc20_33.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc20_25.3: type = splice_block %.loc20_25.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc20_25.1: type = splice_block %.loc20_25.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc20_25: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc20_25: init type = call constants.%Float(%int_64.loc20_25) [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_25.1: type = value_of_initializer %float.make_type.loc20_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_25.2: type = converted %float.make_type.loc20_25, %.loc20_25.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_25.2: type = value_of_initializer %float.make_type.loc20_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_25.3: type = converted %float.make_type.loc20_25, %.loc20_25.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param1
|
||||
@@ -374,27 +374,27 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc24_50.1: type = value_of_initializer %float.make_type.loc24_50 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_50.2: type = converted %float.make_type.loc24_50, %.loc24_50.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc24_26.3: type = splice_block %.loc24_26.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc24_26.1: type = splice_block %.loc24_26.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc24_26: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc24_26: init type = call constants.%Float(%int_64.loc24_26) [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_26.1: type = value_of_initializer %float.make_type.loc24_26 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_26.2: type = converted %float.make_type.loc24_26, %.loc24_26.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_26.2: type = value_of_initializer %float.make_type.loc24_26 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_26.3: type = converted %float.make_type.loc24_26, %.loc24_26.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc24_34.3: type = splice_block %.loc24_34.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc24_34.1: type = splice_block %.loc24_34.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc24_34: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc24_34: init type = call constants.%Float(%int_64.loc24_34) [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_34.1: type = value_of_initializer %float.make_type.loc24_34 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_34.2: type = converted %float.make_type.loc24_34, %.loc24_34.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_34.2: type = value_of_initializer %float.make_type.loc24_34 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_34.3: type = converted %float.make_type.loc24_34, %.loc24_34.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %c.param: f64 = value_param runtime_param2
|
||||
// CHECK:STDOUT: %.loc24_42.3: type = splice_block %.loc24_42.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc24_42.1: type = splice_block %.loc24_42.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc24_42: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc24_42: init type = call constants.%Float(%int_64.loc24_42) [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_42.1: type = value_of_initializer %float.make_type.loc24_42 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_42.2: type = converted %float.make_type.loc24_42, %.loc24_42.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_42.2: type = value_of_initializer %float.make_type.loc24_42 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_42.3: type = converted %float.make_type.loc24_42, %.loc24_42.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %c: f64 = bind_name c, %c.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param3
|
||||
@@ -412,19 +412,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc28_48.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc28_48.2: type = converted %bool.make_type, %.loc28_48.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc28_32.3: type = splice_block %.loc28_32.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc28_32.1: type = splice_block %.loc28_32.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc28_32: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc28_32: init type = call constants.%Float(%int_64.loc28_32) [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_32.1: type = value_of_initializer %float.make_type.loc28_32 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_32.2: type = converted %float.make_type.loc28_32, %.loc28_32.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_32.2: type = value_of_initializer %float.make_type.loc28_32 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_32.3: type = converted %float.make_type.loc28_32, %.loc28_32.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc28_40.3: type = splice_block %.loc28_40.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc28_40.1: type = splice_block %.loc28_40.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc28_40: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc28_40: init type = call constants.%Float(%int_64.loc28_40) [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_40.1: type = value_of_initializer %float.make_type.loc28_40 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_40.2: type = converted %float.make_type.loc28_40, %.loc28_40.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_40.2: type = value_of_initializer %float.make_type.loc28_40 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_40.3: type = converted %float.make_type.loc28_40, %.loc28_40.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
|
||||
+39
-39
@@ -112,11 +112,11 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc2_22.1: type = value_of_initializer %float.make_type.loc2_22 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_22.2: type = converted %float.make_type.loc2_22, %.loc2_22.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc2_14.3: type = splice_block %.loc2_14.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_14.1: type = splice_block %.loc2_14.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_14: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_14: init type = call constants.%Float(%int_64.loc2_14) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_14.1: type = value_of_initializer %float.make_type.loc2_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_14.2: type = converted %float.make_type.loc2_14, %.loc2_14.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_14.2: type = value_of_initializer %float.make_type.loc2_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_14.3: type = converted %float.make_type.loc2_14, %.loc2_14.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param1
|
||||
@@ -135,19 +135,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc4_35.1: type = value_of_initializer %float.make_type.loc4_35 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_35.2: type = converted %float.make_type.loc4_35, %.loc4_35.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc4_19.3: type = splice_block %.loc4_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc4_19.1: type = splice_block %.loc4_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc4_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc4_19: init type = call constants.%Float(%int_64.loc4_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.1: type = value_of_initializer %float.make_type.loc4_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.2: type = converted %float.make_type.loc4_19, %.loc4_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.2: type = value_of_initializer %float.make_type.loc4_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.3: type = converted %float.make_type.loc4_19, %.loc4_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc4_27.3: type = splice_block %.loc4_27.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc4_27.1: type = splice_block %.loc4_27.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc4_27: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc4_27: init type = call constants.%Float(%int_64.loc4_27) [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.1: type = value_of_initializer %float.make_type.loc4_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.2: type = converted %float.make_type.loc4_27, %.loc4_27.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.2: type = value_of_initializer %float.make_type.loc4_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.3: type = converted %float.make_type.loc4_27, %.loc4_27.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param2
|
||||
@@ -247,19 +247,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc13_31.1: type = value_of_initializer %float.make_type.loc13_31 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_31.2: type = converted %float.make_type.loc13_31, %.loc13_31.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc13_15.3: type = splice_block %.loc13_15.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc13_15.1: type = splice_block %.loc13_15.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc13_15: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc13_15: init type = call constants.%Float(%int_64.loc13_15) [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.1: type = value_of_initializer %float.make_type.loc13_15 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.2: type = converted %float.make_type.loc13_15, %.loc13_15.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.2: type = value_of_initializer %float.make_type.loc13_15 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.3: type = converted %float.make_type.loc13_15, %.loc13_15.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc13_23.3: type = splice_block %.loc13_23.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc13_23.1: type = splice_block %.loc13_23.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc13_23: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc13_23: init type = call constants.%Float(%int_64.loc13_23) [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.1: type = value_of_initializer %float.make_type.loc13_23 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.2: type = converted %float.make_type.loc13_23, %.loc13_23.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.2: type = value_of_initializer %float.make_type.loc13_23 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.3: type = converted %float.make_type.loc13_23, %.loc13_23.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param2
|
||||
@@ -275,11 +275,11 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc18_29.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc18_29.2: type = converted %bool.make_type, %.loc18_29.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc18_21.3: type = splice_block %.loc18_21.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc18_21.1: type = splice_block %.loc18_21.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type: init type = call constants.%Float(%int_64) [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_21.1: type = value_of_initializer %float.make_type [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_21.2: type = converted %float.make_type, %.loc18_21.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_21.2: type = value_of_initializer %float.make_type [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_21.3: type = converted %float.make_type, %.loc18_21.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param1
|
||||
@@ -296,11 +296,11 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc19_25.1: type = value_of_initializer %float.make_type.loc19_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc19_25.2: type = converted %float.make_type.loc19_25, %.loc19_25.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc19_17.3: type = splice_block %.loc19_17.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc19_17.1: type = splice_block %.loc19_17.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc19_17: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc19_17: init type = call constants.%Float(%int_64.loc19_17) [template = f64]
|
||||
// CHECK:STDOUT: %.loc19_17.1: type = value_of_initializer %float.make_type.loc19_17 [template = f64]
|
||||
// CHECK:STDOUT: %.loc19_17.2: type = converted %float.make_type.loc19_17, %.loc19_17.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc19_17.2: type = value_of_initializer %float.make_type.loc19_17 [template = f64]
|
||||
// CHECK:STDOUT: %.loc19_17.3: type = converted %float.make_type.loc19_17, %.loc19_17.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param1
|
||||
@@ -317,11 +317,11 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc21_33.1: type = value_of_initializer %float.make_type.loc21_33 [template = f64]
|
||||
// CHECK:STDOUT: %.loc21_33.2: type = converted %float.make_type.loc21_33, %.loc21_33.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc21_25.3: type = splice_block %.loc21_25.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc21_25.1: type = splice_block %.loc21_25.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc21_25: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc21_25: init type = call constants.%Float(%int_64.loc21_25) [template = f64]
|
||||
// CHECK:STDOUT: %.loc21_25.1: type = value_of_initializer %float.make_type.loc21_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc21_25.2: type = converted %float.make_type.loc21_25, %.loc21_25.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc21_25.2: type = value_of_initializer %float.make_type.loc21_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc21_25.3: type = converted %float.make_type.loc21_25, %.loc21_25.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param1
|
||||
@@ -342,27 +342,27 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc32_50.1: type = value_of_initializer %float.make_type.loc32_50 [template = f64]
|
||||
// CHECK:STDOUT: %.loc32_50.2: type = converted %float.make_type.loc32_50, %.loc32_50.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc32_26.3: type = splice_block %.loc32_26.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc32_26.1: type = splice_block %.loc32_26.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc32_26: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc32_26: init type = call constants.%Float(%int_64.loc32_26) [template = f64]
|
||||
// CHECK:STDOUT: %.loc32_26.1: type = value_of_initializer %float.make_type.loc32_26 [template = f64]
|
||||
// CHECK:STDOUT: %.loc32_26.2: type = converted %float.make_type.loc32_26, %.loc32_26.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc32_26.2: type = value_of_initializer %float.make_type.loc32_26 [template = f64]
|
||||
// CHECK:STDOUT: %.loc32_26.3: type = converted %float.make_type.loc32_26, %.loc32_26.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc32_34.3: type = splice_block %.loc32_34.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc32_34.1: type = splice_block %.loc32_34.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc32_34: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc32_34: init type = call constants.%Float(%int_64.loc32_34) [template = f64]
|
||||
// CHECK:STDOUT: %.loc32_34.1: type = value_of_initializer %float.make_type.loc32_34 [template = f64]
|
||||
// CHECK:STDOUT: %.loc32_34.2: type = converted %float.make_type.loc32_34, %.loc32_34.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc32_34.2: type = value_of_initializer %float.make_type.loc32_34 [template = f64]
|
||||
// CHECK:STDOUT: %.loc32_34.3: type = converted %float.make_type.loc32_34, %.loc32_34.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %c.param: f64 = value_param runtime_param2
|
||||
// CHECK:STDOUT: %.loc32_42.3: type = splice_block %.loc32_42.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc32_42.1: type = splice_block %.loc32_42.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc32_42: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc32_42: init type = call constants.%Float(%int_64.loc32_42) [template = f64]
|
||||
// CHECK:STDOUT: %.loc32_42.1: type = value_of_initializer %float.make_type.loc32_42 [template = f64]
|
||||
// CHECK:STDOUT: %.loc32_42.2: type = converted %float.make_type.loc32_42, %.loc32_42.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc32_42.2: type = value_of_initializer %float.make_type.loc32_42 [template = f64]
|
||||
// CHECK:STDOUT: %.loc32_42.3: type = converted %float.make_type.loc32_42, %.loc32_42.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %c: f64 = bind_name c, %c.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param3
|
||||
@@ -380,19 +380,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc43_48.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc43_48.2: type = converted %bool.make_type, %.loc43_48.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc43_32.3: type = splice_block %.loc43_32.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc43_32.1: type = splice_block %.loc43_32.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc43_32: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc43_32: init type = call constants.%Float(%int_64.loc43_32) [template = f64]
|
||||
// CHECK:STDOUT: %.loc43_32.1: type = value_of_initializer %float.make_type.loc43_32 [template = f64]
|
||||
// CHECK:STDOUT: %.loc43_32.2: type = converted %float.make_type.loc43_32, %.loc43_32.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc43_32.2: type = value_of_initializer %float.make_type.loc43_32 [template = f64]
|
||||
// CHECK:STDOUT: %.loc43_32.3: type = converted %float.make_type.loc43_32, %.loc43_32.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc43_40.3: type = splice_block %.loc43_40.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc43_40.1: type = splice_block %.loc43_40.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc43_40: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc43_40: init type = call constants.%Float(%int_64.loc43_40) [template = f64]
|
||||
// CHECK:STDOUT: %.loc43_40.1: type = value_of_initializer %float.make_type.loc43_40 [template = f64]
|
||||
// CHECK:STDOUT: %.loc43_40.2: type = converted %float.make_type.loc43_40, %.loc43_40.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc43_40.2: type = value_of_initializer %float.make_type.loc43_40 [template = f64]
|
||||
// CHECK:STDOUT: %.loc43_40.3: type = converted %float.make_type.loc43_40, %.loc43_40.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
|
||||
+18
-18
@@ -88,19 +88,19 @@ fn WrongResult(a: f64, b: f64) -> f64 = "float.neq";
|
||||
// CHECK:STDOUT: %.loc2_27.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc2_27.2: type = converted %bool.make_type, %.loc2_27.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc2_11.3: type = splice_block %.loc2_11.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_11.1: type = splice_block %.loc2_11.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_11: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_11: init type = call constants.%Float(%int_64.loc2_11) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.1: type = value_of_initializer %float.make_type.loc2_11 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.2: type = converted %float.make_type.loc2_11, %.loc2_11.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.2: type = value_of_initializer %float.make_type.loc2_11 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.3: type = converted %float.make_type.loc2_11, %.loc2_11.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc2_19.3: type = splice_block %.loc2_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_19.1: type = splice_block %.loc2_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_19: init type = call constants.%Float(%int_64.loc2_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.1: type = value_of_initializer %float.make_type.loc2_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.2: type = converted %float.make_type.loc2_19, %.loc2_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.2: type = value_of_initializer %float.make_type.loc2_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.3: type = converted %float.make_type.loc2_19, %.loc2_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
@@ -133,19 +133,19 @@ fn WrongResult(a: f64, b: f64) -> f64 = "float.neq";
|
||||
// CHECK:STDOUT: %.loc12_35.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc12_35.2: type = converted %bool.make_type, %.loc12_35.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc12_19.3: type = splice_block %.loc12_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc12_19.1: type = splice_block %.loc12_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc12_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc12_19: init type = call constants.%Float(%int_64.loc12_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_19.1: type = value_of_initializer %float.make_type.loc12_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_19.2: type = converted %float.make_type.loc12_19, %.loc12_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_19.2: type = value_of_initializer %float.make_type.loc12_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_19.3: type = converted %float.make_type.loc12_19, %.loc12_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc12_27.3: type = splice_block %.loc12_27.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc12_27.1: type = splice_block %.loc12_27.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc12_27: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc12_27: init type = call constants.%Float(%int_64.loc12_27) [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_27.1: type = value_of_initializer %float.make_type.loc12_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_27.2: type = converted %float.make_type.loc12_27, %.loc12_27.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_27.2: type = value_of_initializer %float.make_type.loc12_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_27.3: type = converted %float.make_type.loc12_27, %.loc12_27.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
@@ -262,19 +262,19 @@ fn WrongResult(a: f64, b: f64) -> f64 = "float.neq";
|
||||
// CHECK:STDOUT: %.loc7_35.1: type = value_of_initializer %float.make_type.loc7_35 [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_35.2: type = converted %float.make_type.loc7_35, %.loc7_35.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc7_19.3: type = splice_block %.loc7_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc7_19.1: type = splice_block %.loc7_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc7_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc7_19: init type = call constants.%Float(%int_64.loc7_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_19.1: type = value_of_initializer %float.make_type.loc7_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_19.2: type = converted %float.make_type.loc7_19, %.loc7_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_19.2: type = value_of_initializer %float.make_type.loc7_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_19.3: type = converted %float.make_type.loc7_19, %.loc7_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc7_27.3: type = splice_block %.loc7_27.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc7_27.1: type = splice_block %.loc7_27.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc7_27: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc7_27: init type = call constants.%Float(%int_64.loc7_27) [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_27.1: type = value_of_initializer %float.make_type.loc7_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_27.2: type = converted %float.make_type.loc7_27, %.loc7_27.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_27.2: type = value_of_initializer %float.make_type.loc7_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc7_27.3: type = converted %float.make_type.loc7_27, %.loc7_27.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param2
|
||||
|
||||
+54
-54
@@ -94,19 +94,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc2_27.1: type = value_of_initializer %float.make_type.loc2_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_27.2: type = converted %float.make_type.loc2_27, %.loc2_27.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc2_11.3: type = splice_block %.loc2_11.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_11.1: type = splice_block %.loc2_11.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_11: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_11: init type = call constants.%Float(%int_64.loc2_11) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.1: type = value_of_initializer %float.make_type.loc2_11 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.2: type = converted %float.make_type.loc2_11, %.loc2_11.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.2: type = value_of_initializer %float.make_type.loc2_11 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_11.3: type = converted %float.make_type.loc2_11, %.loc2_11.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc2_19.3: type = splice_block %.loc2_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc2_19.1: type = splice_block %.loc2_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc2_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc2_19: init type = call constants.%Float(%int_64.loc2_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.1: type = value_of_initializer %float.make_type.loc2_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.2: type = converted %float.make_type.loc2_19, %.loc2_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.2: type = value_of_initializer %float.make_type.loc2_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc2_19.3: type = converted %float.make_type.loc2_19, %.loc2_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param2
|
||||
@@ -125,19 +125,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc4_35.1: type = value_of_initializer %float.make_type.loc4_35 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_35.2: type = converted %float.make_type.loc4_35, %.loc4_35.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc4_19.3: type = splice_block %.loc4_19.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc4_19.1: type = splice_block %.loc4_19.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc4_19: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc4_19: init type = call constants.%Float(%int_64.loc4_19) [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.1: type = value_of_initializer %float.make_type.loc4_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.2: type = converted %float.make_type.loc4_19, %.loc4_19.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.2: type = value_of_initializer %float.make_type.loc4_19 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_19.3: type = converted %float.make_type.loc4_19, %.loc4_19.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc4_27.3: type = splice_block %.loc4_27.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc4_27.1: type = splice_block %.loc4_27.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc4_27: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc4_27: init type = call constants.%Float(%int_64.loc4_27) [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.1: type = value_of_initializer %float.make_type.loc4_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.2: type = converted %float.make_type.loc4_27, %.loc4_27.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.2: type = value_of_initializer %float.make_type.loc4_27 [template = f64]
|
||||
// CHECK:STDOUT: %.loc4_27.3: type = converted %float.make_type.loc4_27, %.loc4_27.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param2
|
||||
@@ -226,11 +226,11 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc8_22.1: type = value_of_initializer %float.make_type.loc8_22 [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_22.2: type = converted %float.make_type.loc8_22, %.loc8_22.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc8_14.3: type = splice_block %.loc8_14.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc8_14.1: type = splice_block %.loc8_14.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc8_14: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc8_14: init type = call constants.%Float(%int_64.loc8_14) [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_14.1: type = value_of_initializer %float.make_type.loc8_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_14.2: type = converted %float.make_type.loc8_14, %.loc8_14.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_14.2: type = value_of_initializer %float.make_type.loc8_14 [template = f64]
|
||||
// CHECK:STDOUT: %.loc8_14.3: type = converted %float.make_type.loc8_14, %.loc8_14.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param1
|
||||
@@ -251,27 +251,27 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc13_39.1: type = value_of_initializer %float.make_type.loc13_39 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_39.2: type = converted %float.make_type.loc13_39, %.loc13_39.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc13_15.3: type = splice_block %.loc13_15.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc13_15.1: type = splice_block %.loc13_15.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc13_15: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc13_15: init type = call constants.%Float(%int_64.loc13_15) [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.1: type = value_of_initializer %float.make_type.loc13_15 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.2: type = converted %float.make_type.loc13_15, %.loc13_15.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.2: type = value_of_initializer %float.make_type.loc13_15 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_15.3: type = converted %float.make_type.loc13_15, %.loc13_15.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc13_23.3: type = splice_block %.loc13_23.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc13_23.1: type = splice_block %.loc13_23.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc13_23: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc13_23: init type = call constants.%Float(%int_64.loc13_23) [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.1: type = value_of_initializer %float.make_type.loc13_23 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.2: type = converted %float.make_type.loc13_23, %.loc13_23.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.2: type = value_of_initializer %float.make_type.loc13_23 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_23.3: type = converted %float.make_type.loc13_23, %.loc13_23.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %c.param: f64 = value_param runtime_param2
|
||||
// CHECK:STDOUT: %.loc13_31.3: type = splice_block %.loc13_31.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc13_31.1: type = splice_block %.loc13_31.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc13_31: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc13_31: init type = call constants.%Float(%int_64.loc13_31) [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_31.1: type = value_of_initializer %float.make_type.loc13_31 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_31.2: type = converted %float.make_type.loc13_31, %.loc13_31.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_31.2: type = value_of_initializer %float.make_type.loc13_31 [template = f64]
|
||||
// CHECK:STDOUT: %.loc13_31.3: type = converted %float.make_type.loc13_31, %.loc13_31.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %c: f64 = bind_name c, %c.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param3
|
||||
@@ -289,19 +289,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc17_37.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc17_37.2: type = converted %bool.make_type, %.loc17_37.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc17_21.3: type = splice_block %.loc17_21.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc17_21.1: type = splice_block %.loc17_21.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc17_21: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc17_21: init type = call constants.%Float(%int_64.loc17_21) [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_21.1: type = value_of_initializer %float.make_type.loc17_21 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_21.2: type = converted %float.make_type.loc17_21, %.loc17_21.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_21.2: type = value_of_initializer %float.make_type.loc17_21 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_21.3: type = converted %float.make_type.loc17_21, %.loc17_21.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc17_29.3: type = splice_block %.loc17_29.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc17_29.1: type = splice_block %.loc17_29.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc17_29: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc17_29: init type = call constants.%Float(%int_64.loc17_29) [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_29.1: type = value_of_initializer %float.make_type.loc17_29 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_29.2: type = converted %float.make_type.loc17_29, %.loc17_29.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_29.2: type = value_of_initializer %float.make_type.loc17_29 [template = f64]
|
||||
// CHECK:STDOUT: %.loc17_29.3: type = converted %float.make_type.loc17_29, %.loc17_29.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
@@ -320,19 +320,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc18_33.1: type = value_of_initializer %float.make_type.loc18_33 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_33.2: type = converted %float.make_type.loc18_33, %.loc18_33.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc18_17.3: type = splice_block %.loc18_17.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc18_17.1: type = splice_block %.loc18_17.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc18_17: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc18_17: init type = call constants.%Float(%int_64.loc18_17) [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_17.1: type = value_of_initializer %float.make_type.loc18_17 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_17.2: type = converted %float.make_type.loc18_17, %.loc18_17.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_17.2: type = value_of_initializer %float.make_type.loc18_17 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_17.3: type = converted %float.make_type.loc18_17, %.loc18_17.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc18_25.3: type = splice_block %.loc18_25.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc18_25.1: type = splice_block %.loc18_25.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc18_25: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc18_25: init type = call constants.%Float(%int_64.loc18_25) [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_25.1: type = value_of_initializer %float.make_type.loc18_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_25.2: type = converted %float.make_type.loc18_25, %.loc18_25.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_25.2: type = value_of_initializer %float.make_type.loc18_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc18_25.3: type = converted %float.make_type.loc18_25, %.loc18_25.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param2
|
||||
@@ -349,11 +349,11 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc20_33.1: type = value_of_initializer %float.make_type.loc20_33 [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_33.2: type = converted %float.make_type.loc20_33, %.loc20_33.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc20_25.3: type = splice_block %.loc20_25.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc20_25.1: type = splice_block %.loc20_25.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc20_25: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc20_25: init type = call constants.%Float(%int_64.loc20_25) [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_25.1: type = value_of_initializer %float.make_type.loc20_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_25.2: type = converted %float.make_type.loc20_25, %.loc20_25.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_25.2: type = value_of_initializer %float.make_type.loc20_25 [template = f64]
|
||||
// CHECK:STDOUT: %.loc20_25.3: type = converted %float.make_type.loc20_25, %.loc20_25.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param1
|
||||
@@ -374,27 +374,27 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc24_50.1: type = value_of_initializer %float.make_type.loc24_50 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_50.2: type = converted %float.make_type.loc24_50, %.loc24_50.1 [template = f64]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc24_26.3: type = splice_block %.loc24_26.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc24_26.1: type = splice_block %.loc24_26.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc24_26: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc24_26: init type = call constants.%Float(%int_64.loc24_26) [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_26.1: type = value_of_initializer %float.make_type.loc24_26 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_26.2: type = converted %float.make_type.loc24_26, %.loc24_26.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_26.2: type = value_of_initializer %float.make_type.loc24_26 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_26.3: type = converted %float.make_type.loc24_26, %.loc24_26.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc24_34.3: type = splice_block %.loc24_34.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc24_34.1: type = splice_block %.loc24_34.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc24_34: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc24_34: init type = call constants.%Float(%int_64.loc24_34) [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_34.1: type = value_of_initializer %float.make_type.loc24_34 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_34.2: type = converted %float.make_type.loc24_34, %.loc24_34.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_34.2: type = value_of_initializer %float.make_type.loc24_34 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_34.3: type = converted %float.make_type.loc24_34, %.loc24_34.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %c.param: f64 = value_param runtime_param2
|
||||
// CHECK:STDOUT: %.loc24_42.3: type = splice_block %.loc24_42.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc24_42.1: type = splice_block %.loc24_42.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc24_42: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc24_42: init type = call constants.%Float(%int_64.loc24_42) [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_42.1: type = value_of_initializer %float.make_type.loc24_42 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_42.2: type = converted %float.make_type.loc24_42, %.loc24_42.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_42.2: type = value_of_initializer %float.make_type.loc24_42 [template = f64]
|
||||
// CHECK:STDOUT: %.loc24_42.3: type = converted %float.make_type.loc24_42, %.loc24_42.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %c: f64 = bind_name c, %c.param
|
||||
// CHECK:STDOUT: %return.param: ref f64 = out_param runtime_param3
|
||||
@@ -412,19 +412,19 @@ fn RuntimeCallBadReturnType(a: f64, b: f64) -> bool {
|
||||
// CHECK:STDOUT: %.loc28_48.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc28_48.2: type = converted %bool.make_type, %.loc28_48.1 [template = bool]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc28_32.3: type = splice_block %.loc28_32.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc28_32.1: type = splice_block %.loc28_32.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc28_32: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc28_32: init type = call constants.%Float(%int_64.loc28_32) [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_32.1: type = value_of_initializer %float.make_type.loc28_32 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_32.2: type = converted %float.make_type.loc28_32, %.loc28_32.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_32.2: type = value_of_initializer %float.make_type.loc28_32 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_32.3: type = converted %float.make_type.loc28_32, %.loc28_32.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: f64 = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc28_40.3: type = splice_block %.loc28_40.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc28_40.1: type = splice_block %.loc28_40.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64.loc28_40: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type.loc28_40: init type = call constants.%Float(%int_64.loc28_40) [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_40.1: type = value_of_initializer %float.make_type.loc28_40 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_40.2: type = converted %float.make_type.loc28_40, %.loc28_40.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_40.2: type = value_of_initializer %float.make_type.loc28_40 [template = f64]
|
||||
// CHECK:STDOUT: %.loc28_40.3: type = converted %float.make_type.loc28_40, %.loc28_40.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: f64 = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
|
||||
@@ -492,11 +492,11 @@ let convert_not_constant_widen: i64 = Int32ToInt64(not_constant);
|
||||
// CHECK:STDOUT: %.loc14_58.1: type = value_of_initializer %int_literal.make_type.loc14_58 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc14_58.2: type = converted %int_literal.make_type.loc14_58, %.loc14_58.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %a.param: Core.IntLiteral = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc14_41.3: type = splice_block %.loc14_41.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc14_41.1: type = splice_block %.loc14_41.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %IntLiteral.ref.loc14_30: %IntLiteral.type = name_ref IntLiteral, file.%IntLiteral.decl [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type.loc14_41: init type = call %IntLiteral.ref.loc14_30() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc14_41.1: type = value_of_initializer %int_literal.make_type.loc14_41 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc14_41.2: type = converted %int_literal.make_type.loc14_41, %.loc14_41.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc14_41.2: type = value_of_initializer %int_literal.make_type.loc14_41 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc14_41.3: type = converted %int_literal.make_type.loc14_41, %.loc14_41.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: Core.IntLiteral = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref Core.IntLiteral = out_param runtime_param1
|
||||
@@ -579,11 +579,11 @@ let convert_not_constant_widen: i64 = Int32ToInt64(not_constant);
|
||||
// CHECK:STDOUT: %int_16: Core.IntLiteral = int_value 16 [template = constants.%int_16]
|
||||
// CHECK:STDOUT: %i16: type = class_type @Int, @Int(constants.%int_16) [template = constants.%i16]
|
||||
// CHECK:STDOUT: %a.param: Core.IntLiteral = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc22_36.3: type = splice_block %.loc22_36.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc22_36.1: type = splice_block %.loc22_36.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, file.%IntLiteral.decl [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc22_36.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc22_36.2: type = converted %int_literal.make_type, %.loc22_36.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc22_36.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc22_36.3: type = converted %int_literal.make_type, %.loc22_36.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: Core.IntLiteral = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref %i16 = out_param runtime_param1
|
||||
@@ -598,11 +598,11 @@ let convert_not_constant_widen: i64 = Int32ToInt64(not_constant);
|
||||
// CHECK:STDOUT: %int_16: Core.IntLiteral = int_value 16 [template = constants.%int_16]
|
||||
// CHECK:STDOUT: %u16: type = class_type @UInt, @UInt(constants.%int_16) [template = constants.%u16]
|
||||
// CHECK:STDOUT: %a.param: Core.IntLiteral = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc23_37.3: type = splice_block %.loc23_37.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc23_37.1: type = splice_block %.loc23_37.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, file.%IntLiteral.decl [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc23_37.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc23_37.2: type = converted %int_literal.make_type, %.loc23_37.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc23_37.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc23_37.3: type = converted %int_literal.make_type, %.loc23_37.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: Core.IntLiteral = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref %u16 = out_param runtime_param1
|
||||
|
||||
+24
-24
@@ -126,11 +126,11 @@ var m: Int(1000000000);
|
||||
// CHECK:STDOUT: %return.param_patt: type = out_param_pattern %return.patt, runtime_param1
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %n.param: Core.IntLiteral = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc5_22.3: type = splice_block %.loc5_22.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc5_22.1: type = splice_block %.loc5_22.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, file.%IntLiteral.decl [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc5_22.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc5_22.2: type = converted %int_literal.make_type, %.loc5_22.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc5_22.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc5_22.3: type = converted %int_literal.make_type, %.loc5_22.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: Core.IntLiteral = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref type = out_param runtime_param1
|
||||
@@ -197,12 +197,12 @@ var m: Int(1000000000);
|
||||
// CHECK:STDOUT: %.loc6_27.1: type = value_of_initializer %int.make_type_signed.loc6_27 [template = constants.%i64.builtin]
|
||||
// CHECK:STDOUT: %.loc6_27.2: type = converted %int.make_type_signed.loc6_27, %.loc6_27.1 [template = constants.%i64.builtin]
|
||||
// CHECK:STDOUT: %n.param: %i64.builtin = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc6_15.3: type = splice_block %.loc6_15.2 [template = constants.%i64.builtin] {
|
||||
// CHECK:STDOUT: %.loc6_15.1: type = splice_block %.loc6_15.3 [template = constants.%i64.builtin] {
|
||||
// CHECK:STDOUT: %Int.ref.loc6_9: %Int.type = name_ref Int, imports.%import_ref.2 [template = constants.%Int]
|
||||
// CHECK:STDOUT: %int_64.loc6_13: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %int.make_type_signed.loc6_15: init type = call %Int.ref.loc6_9(%int_64.loc6_13) [template = constants.%i64.builtin]
|
||||
// CHECK:STDOUT: %.loc6_15.1: type = value_of_initializer %int.make_type_signed.loc6_15 [template = constants.%i64.builtin]
|
||||
// CHECK:STDOUT: %.loc6_15.2: type = converted %int.make_type_signed.loc6_15, %.loc6_15.1 [template = constants.%i64.builtin]
|
||||
// CHECK:STDOUT: %.loc6_15.2: type = value_of_initializer %int.make_type_signed.loc6_15 [template = constants.%i64.builtin]
|
||||
// CHECK:STDOUT: %.loc6_15.3: type = converted %int.make_type_signed.loc6_15, %.loc6_15.2 [template = constants.%i64.builtin]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: %i64.builtin = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref %i64.builtin = out_param runtime_param1
|
||||
@@ -220,12 +220,12 @@ var m: Int(1000000000);
|
||||
// CHECK:STDOUT: %.loc10_27.1: type = value_of_initializer %int.make_type_signed.loc10_27 [template = constants.%i13.builtin]
|
||||
// CHECK:STDOUT: %.loc10_27.2: type = converted %int.make_type_signed.loc10_27, %.loc10_27.1 [template = constants.%i13.builtin]
|
||||
// CHECK:STDOUT: %n.param: %i13.builtin = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc10_15.3: type = splice_block %.loc10_15.2 [template = constants.%i13.builtin] {
|
||||
// CHECK:STDOUT: %.loc10_15.1: type = splice_block %.loc10_15.3 [template = constants.%i13.builtin] {
|
||||
// CHECK:STDOUT: %Int.ref.loc10_9: %Int.type = name_ref Int, imports.%import_ref.2 [template = constants.%Int]
|
||||
// CHECK:STDOUT: %int_13.loc10_13: Core.IntLiteral = int_value 13 [template = constants.%int_13]
|
||||
// CHECK:STDOUT: %int.make_type_signed.loc10_15: init type = call %Int.ref.loc10_9(%int_13.loc10_13) [template = constants.%i13.builtin]
|
||||
// CHECK:STDOUT: %.loc10_15.1: type = value_of_initializer %int.make_type_signed.loc10_15 [template = constants.%i13.builtin]
|
||||
// CHECK:STDOUT: %.loc10_15.2: type = converted %int.make_type_signed.loc10_15, %.loc10_15.1 [template = constants.%i13.builtin]
|
||||
// CHECK:STDOUT: %.loc10_15.2: type = value_of_initializer %int.make_type_signed.loc10_15 [template = constants.%i13.builtin]
|
||||
// CHECK:STDOUT: %.loc10_15.3: type = converted %int.make_type_signed.loc10_15, %.loc10_15.2 [template = constants.%i13.builtin]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: %i13.builtin = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref %i13.builtin = out_param runtime_param1
|
||||
@@ -245,20 +245,20 @@ var m: Int(1000000000);
|
||||
// CHECK:STDOUT: %.loc14_50.1: type = value_of_initializer %int.make_type_signed.loc14_50 [symbolic = %iN.builtin (constants.%iN.builtin)]
|
||||
// CHECK:STDOUT: %.loc14_50.2: type = converted %int.make_type_signed.loc14_50, %.loc14_50.1 [symbolic = %iN.builtin (constants.%iN.builtin)]
|
||||
// CHECK:STDOUT: %N.param: Core.IntLiteral = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc14_28.3: type = splice_block %.loc14_28.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc14_28.1: type = splice_block %.loc14_28.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, imports.%import_ref.1 [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc14_28.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc14_28.2: type = converted %int_literal.make_type, %.loc14_28.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc14_28.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc14_28.3: type = converted %int_literal.make_type, %.loc14_28.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %N.loc14_13.1: Core.IntLiteral = bind_symbolic_name N, 0, %N.param [symbolic = %N.loc14_13.2 (constants.%N)]
|
||||
// CHECK:STDOUT: %x.param: @Symbolic.%iN.builtin (%iN.builtin) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc14_39.3: type = splice_block %.loc14_39.2 [symbolic = %iN.builtin (constants.%iN.builtin)] {
|
||||
// CHECK:STDOUT: %.loc14_39.1: type = splice_block %.loc14_39.3 [symbolic = %iN.builtin (constants.%iN.builtin)] {
|
||||
// CHECK:STDOUT: %Int.ref.loc14_34: %Int.type = name_ref Int, imports.%import_ref.2 [template = constants.%Int]
|
||||
// CHECK:STDOUT: %N.ref.loc14_38: Core.IntLiteral = name_ref N, %N.loc14_13.1 [symbolic = %N.loc14_13.2 (constants.%N)]
|
||||
// CHECK:STDOUT: %int.make_type_signed.loc14_39: init type = call %Int.ref.loc14_34(%N.ref.loc14_38) [symbolic = %iN.builtin (constants.%iN.builtin)]
|
||||
// CHECK:STDOUT: %.loc14_39.1: type = value_of_initializer %int.make_type_signed.loc14_39 [symbolic = %iN.builtin (constants.%iN.builtin)]
|
||||
// CHECK:STDOUT: %.loc14_39.2: type = converted %int.make_type_signed.loc14_39, %.loc14_39.1 [symbolic = %iN.builtin (constants.%iN.builtin)]
|
||||
// CHECK:STDOUT: %.loc14_39.2: type = value_of_initializer %int.make_type_signed.loc14_39 [symbolic = %iN.builtin (constants.%iN.builtin)]
|
||||
// CHECK:STDOUT: %.loc14_39.3: type = converted %int.make_type_signed.loc14_39, %.loc14_39.2 [symbolic = %iN.builtin (constants.%iN.builtin)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: @Symbolic.%iN.builtin (%iN.builtin) = bind_name x, %x.param
|
||||
// CHECK:STDOUT: %return.param: ref @Symbolic.%iN.builtin (%iN.builtin) = out_param runtime_param1
|
||||
@@ -372,12 +372,12 @@ var m: Int(1000000000);
|
||||
// CHECK:STDOUT: %.loc7_30.1: type = value_of_initializer %int.make_type_signed.loc7_30 [template = constants.%i64.builtin]
|
||||
// CHECK:STDOUT: %.loc7_30.2: type = converted %int.make_type_signed.loc7_30, %.loc7_30.1 [template = constants.%i64.builtin]
|
||||
// CHECK:STDOUT: %n.param: %i64.builtin = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc7_18.3: type = splice_block %.loc7_18.2 [template = constants.%i64.builtin] {
|
||||
// CHECK:STDOUT: %.loc7_18.1: type = splice_block %.loc7_18.3 [template = constants.%i64.builtin] {
|
||||
// CHECK:STDOUT: %Int.ref.loc7_12: %Int.type = name_ref Int, imports.%import_ref.2 [template = constants.%Int]
|
||||
// CHECK:STDOUT: %int_64.loc7_16: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %int.make_type_signed.loc7_18: init type = call %Int.ref.loc7_12(%int_64.loc7_16) [template = constants.%i64.builtin]
|
||||
// CHECK:STDOUT: %.loc7_18.1: type = value_of_initializer %int.make_type_signed.loc7_18 [template = constants.%i64.builtin]
|
||||
// CHECK:STDOUT: %.loc7_18.2: type = converted %int.make_type_signed.loc7_18, %.loc7_18.1 [template = constants.%i64.builtin]
|
||||
// CHECK:STDOUT: %.loc7_18.2: type = value_of_initializer %int.make_type_signed.loc7_18 [template = constants.%i64.builtin]
|
||||
// CHECK:STDOUT: %.loc7_18.3: type = converted %int.make_type_signed.loc7_18, %.loc7_18.2 [template = constants.%i64.builtin]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: %i64.builtin = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref %i64.builtin = out_param runtime_param1
|
||||
@@ -395,12 +395,12 @@ var m: Int(1000000000);
|
||||
// CHECK:STDOUT: %.loc11_30.1: type = value_of_initializer %int.make_type_signed.loc11_30 [template = constants.%i13.builtin]
|
||||
// CHECK:STDOUT: %.loc11_30.2: type = converted %int.make_type_signed.loc11_30, %.loc11_30.1 [template = constants.%i13.builtin]
|
||||
// CHECK:STDOUT: %n.param: %i13.builtin = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc11_18.3: type = splice_block %.loc11_18.2 [template = constants.%i13.builtin] {
|
||||
// CHECK:STDOUT: %.loc11_18.1: type = splice_block %.loc11_18.3 [template = constants.%i13.builtin] {
|
||||
// CHECK:STDOUT: %Int.ref.loc11_12: %Int.type = name_ref Int, imports.%import_ref.2 [template = constants.%Int]
|
||||
// CHECK:STDOUT: %int_13.loc11_16: Core.IntLiteral = int_value 13 [template = constants.%int_13]
|
||||
// CHECK:STDOUT: %int.make_type_signed.loc11_18: init type = call %Int.ref.loc11_12(%int_13.loc11_16) [template = constants.%i13.builtin]
|
||||
// CHECK:STDOUT: %.loc11_18.1: type = value_of_initializer %int.make_type_signed.loc11_18 [template = constants.%i13.builtin]
|
||||
// CHECK:STDOUT: %.loc11_18.2: type = converted %int.make_type_signed.loc11_18, %.loc11_18.1 [template = constants.%i13.builtin]
|
||||
// CHECK:STDOUT: %.loc11_18.2: type = value_of_initializer %int.make_type_signed.loc11_18 [template = constants.%i13.builtin]
|
||||
// CHECK:STDOUT: %.loc11_18.3: type = converted %int.make_type_signed.loc11_18, %.loc11_18.2 [template = constants.%i13.builtin]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: %i13.builtin = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref %i13.builtin = out_param runtime_param1
|
||||
@@ -418,12 +418,12 @@ var m: Int(1000000000);
|
||||
// CHECK:STDOUT: %.loc15_37.1: type = value_of_initializer %int.make_type_signed.loc15_37 [template = constants.%i24.builtin]
|
||||
// CHECK:STDOUT: %.loc15_37.2: type = converted %int.make_type_signed.loc15_37, %.loc15_37.1 [template = constants.%i24.builtin]
|
||||
// CHECK:STDOUT: %n.param: %i24.builtin = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc15_25.3: type = splice_block %.loc15_25.2 [template = constants.%i24.builtin] {
|
||||
// CHECK:STDOUT: %.loc15_25.1: type = splice_block %.loc15_25.3 [template = constants.%i24.builtin] {
|
||||
// CHECK:STDOUT: %Int.ref.loc15_19: %Int.type = name_ref Int, imports.%import_ref.2 [template = constants.%Int]
|
||||
// CHECK:STDOUT: %int_24.loc15_23: Core.IntLiteral = int_value 24 [template = constants.%int_24]
|
||||
// CHECK:STDOUT: %int.make_type_signed.loc15_25: init type = call %Int.ref.loc15_19(%int_24.loc15_23) [template = constants.%i24.builtin]
|
||||
// CHECK:STDOUT: %.loc15_25.1: type = value_of_initializer %int.make_type_signed.loc15_25 [template = constants.%i24.builtin]
|
||||
// CHECK:STDOUT: %.loc15_25.2: type = converted %int.make_type_signed.loc15_25, %.loc15_25.1 [template = constants.%i24.builtin]
|
||||
// CHECK:STDOUT: %.loc15_25.2: type = value_of_initializer %int.make_type_signed.loc15_25 [template = constants.%i24.builtin]
|
||||
// CHECK:STDOUT: %.loc15_25.3: type = converted %int.make_type_signed.loc15_25, %.loc15_25.2 [template = constants.%i24.builtin]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: %i24.builtin = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref %i24.builtin = out_param runtime_param1
|
||||
|
||||
+15
-15
@@ -107,11 +107,11 @@ var m: UInt(1000000000);
|
||||
// CHECK:STDOUT: %return.param_patt: type = out_param_pattern %return.patt, runtime_param1
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %n.param: Core.IntLiteral = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc5_23.3: type = splice_block %.loc5_23.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc5_23.1: type = splice_block %.loc5_23.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, file.%IntLiteral.decl [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc5_23.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc5_23.2: type = converted %int_literal.make_type, %.loc5_23.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc5_23.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc5_23.3: type = converted %int_literal.make_type, %.loc5_23.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: Core.IntLiteral = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref type = out_param runtime_param1
|
||||
@@ -178,12 +178,12 @@ var m: UInt(1000000000);
|
||||
// CHECK:STDOUT: %.loc6_29.1: type = value_of_initializer %int.make_type_unsigned.loc6_29 [template = constants.%u64.builtin]
|
||||
// CHECK:STDOUT: %.loc6_29.2: type = converted %int.make_type_unsigned.loc6_29, %.loc6_29.1 [template = constants.%u64.builtin]
|
||||
// CHECK:STDOUT: %n.param: %u64.builtin = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc6_16.3: type = splice_block %.loc6_16.2 [template = constants.%u64.builtin] {
|
||||
// CHECK:STDOUT: %.loc6_16.1: type = splice_block %.loc6_16.3 [template = constants.%u64.builtin] {
|
||||
// CHECK:STDOUT: %UInt.ref.loc6_9: %UInt.type = name_ref UInt, imports.%import_ref.2 [template = constants.%UInt]
|
||||
// CHECK:STDOUT: %int_64.loc6_14: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %int.make_type_unsigned.loc6_16: init type = call %UInt.ref.loc6_9(%int_64.loc6_14) [template = constants.%u64.builtin]
|
||||
// CHECK:STDOUT: %.loc6_16.1: type = value_of_initializer %int.make_type_unsigned.loc6_16 [template = constants.%u64.builtin]
|
||||
// CHECK:STDOUT: %.loc6_16.2: type = converted %int.make_type_unsigned.loc6_16, %.loc6_16.1 [template = constants.%u64.builtin]
|
||||
// CHECK:STDOUT: %.loc6_16.2: type = value_of_initializer %int.make_type_unsigned.loc6_16 [template = constants.%u64.builtin]
|
||||
// CHECK:STDOUT: %.loc6_16.3: type = converted %int.make_type_unsigned.loc6_16, %.loc6_16.2 [template = constants.%u64.builtin]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: %u64.builtin = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref %u64.builtin = out_param runtime_param1
|
||||
@@ -201,12 +201,12 @@ var m: UInt(1000000000);
|
||||
// CHECK:STDOUT: %.loc10_29.1: type = value_of_initializer %int.make_type_unsigned.loc10_29 [template = constants.%u13.builtin]
|
||||
// CHECK:STDOUT: %.loc10_29.2: type = converted %int.make_type_unsigned.loc10_29, %.loc10_29.1 [template = constants.%u13.builtin]
|
||||
// CHECK:STDOUT: %n.param: %u13.builtin = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc10_16.3: type = splice_block %.loc10_16.2 [template = constants.%u13.builtin] {
|
||||
// CHECK:STDOUT: %.loc10_16.1: type = splice_block %.loc10_16.3 [template = constants.%u13.builtin] {
|
||||
// CHECK:STDOUT: %UInt.ref.loc10_9: %UInt.type = name_ref UInt, imports.%import_ref.2 [template = constants.%UInt]
|
||||
// CHECK:STDOUT: %int_13.loc10_14: Core.IntLiteral = int_value 13 [template = constants.%int_13]
|
||||
// CHECK:STDOUT: %int.make_type_unsigned.loc10_16: init type = call %UInt.ref.loc10_9(%int_13.loc10_14) [template = constants.%u13.builtin]
|
||||
// CHECK:STDOUT: %.loc10_16.1: type = value_of_initializer %int.make_type_unsigned.loc10_16 [template = constants.%u13.builtin]
|
||||
// CHECK:STDOUT: %.loc10_16.2: type = converted %int.make_type_unsigned.loc10_16, %.loc10_16.1 [template = constants.%u13.builtin]
|
||||
// CHECK:STDOUT: %.loc10_16.2: type = value_of_initializer %int.make_type_unsigned.loc10_16 [template = constants.%u13.builtin]
|
||||
// CHECK:STDOUT: %.loc10_16.3: type = converted %int.make_type_unsigned.loc10_16, %.loc10_16.2 [template = constants.%u13.builtin]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: %u13.builtin = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref %u13.builtin = out_param runtime_param1
|
||||
@@ -226,20 +226,20 @@ var m: UInt(1000000000);
|
||||
// CHECK:STDOUT: %.loc14_52.1: type = value_of_initializer %int.make_type_unsigned.loc14_52 [symbolic = %uN.builtin (constants.%uN.builtin)]
|
||||
// CHECK:STDOUT: %.loc14_52.2: type = converted %int.make_type_unsigned.loc14_52, %.loc14_52.1 [symbolic = %uN.builtin (constants.%uN.builtin)]
|
||||
// CHECK:STDOUT: %N.param: Core.IntLiteral = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc14_28.3: type = splice_block %.loc14_28.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc14_28.1: type = splice_block %.loc14_28.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, imports.%import_ref.1 [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc14_28.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc14_28.2: type = converted %int_literal.make_type, %.loc14_28.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc14_28.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc14_28.3: type = converted %int_literal.make_type, %.loc14_28.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %N.loc14_13.1: Core.IntLiteral = bind_symbolic_name N, 0, %N.param [symbolic = %N.loc14_13.2 (constants.%N)]
|
||||
// CHECK:STDOUT: %x.param: @Symbolic.%uN.builtin (%uN.builtin) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc14_40.3: type = splice_block %.loc14_40.2 [symbolic = %uN.builtin (constants.%uN.builtin)] {
|
||||
// CHECK:STDOUT: %.loc14_40.1: type = splice_block %.loc14_40.3 [symbolic = %uN.builtin (constants.%uN.builtin)] {
|
||||
// CHECK:STDOUT: %UInt.ref.loc14_34: %UInt.type = name_ref UInt, imports.%import_ref.2 [template = constants.%UInt]
|
||||
// CHECK:STDOUT: %N.ref.loc14_39: Core.IntLiteral = name_ref N, %N.loc14_13.1 [symbolic = %N.loc14_13.2 (constants.%N)]
|
||||
// CHECK:STDOUT: %int.make_type_unsigned.loc14_40: init type = call %UInt.ref.loc14_34(%N.ref.loc14_39) [symbolic = %uN.builtin (constants.%uN.builtin)]
|
||||
// CHECK:STDOUT: %.loc14_40.1: type = value_of_initializer %int.make_type_unsigned.loc14_40 [symbolic = %uN.builtin (constants.%uN.builtin)]
|
||||
// CHECK:STDOUT: %.loc14_40.2: type = converted %int.make_type_unsigned.loc14_40, %.loc14_40.1 [symbolic = %uN.builtin (constants.%uN.builtin)]
|
||||
// CHECK:STDOUT: %.loc14_40.2: type = value_of_initializer %int.make_type_unsigned.loc14_40 [symbolic = %uN.builtin (constants.%uN.builtin)]
|
||||
// CHECK:STDOUT: %.loc14_40.3: type = converted %int.make_type_unsigned.loc14_40, %.loc14_40.2 [symbolic = %uN.builtin (constants.%uN.builtin)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: @Symbolic.%uN.builtin (%uN.builtin) = bind_name x, %x.param
|
||||
// CHECK:STDOUT: %return.param: ref @Symbolic.%uN.builtin (%uN.builtin) = out_param runtime_param1
|
||||
|
||||
@@ -158,12 +158,12 @@ fn H(a: AdaptNoncopyableIndirect) -> AdaptNoncopyableIndirect {
|
||||
// CHECK:STDOUT: %.loc15_59.1: %tuple.type.1 = tuple_literal (%AdaptCopyable.ref.loc15_41, %i32.loc15_56)
|
||||
// CHECK:STDOUT: %.loc15_59.2: type = converted %.loc15_59.1, constants.%tuple.type.2 [template = constants.%tuple.type.2]
|
||||
// CHECK:STDOUT: %c.param: %tuple.type.2 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc15_34.3: type = splice_block %.loc15_34.2 [template = constants.%tuple.type.2] {
|
||||
// CHECK:STDOUT: %.loc15_34.1: type = splice_block %.loc15_34.3 [template = constants.%tuple.type.2] {
|
||||
// CHECK:STDOUT: %AdaptCopyable.ref.loc15_16: type = name_ref AdaptCopyable, file.%AdaptCopyable.decl [template = constants.%AdaptCopyable]
|
||||
// CHECK:STDOUT: %int_32.loc15_31: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32.loc15_31: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %.loc15_34.1: %tuple.type.1 = tuple_literal (%AdaptCopyable.ref.loc15_16, %i32.loc15_31)
|
||||
// CHECK:STDOUT: %.loc15_34.2: type = converted %.loc15_34.1, constants.%tuple.type.2 [template = constants.%tuple.type.2]
|
||||
// CHECK:STDOUT: %.loc15_34.2: %tuple.type.1 = tuple_literal (%AdaptCopyable.ref.loc15_16, %i32.loc15_31)
|
||||
// CHECK:STDOUT: %.loc15_34.3: type = converted %.loc15_34.2, constants.%tuple.type.2 [template = constants.%tuple.type.2]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %c: %tuple.type.2 = bind_name c, %c.param
|
||||
// CHECK:STDOUT: %return.param: ref %tuple.type.2 = out_param runtime_param1
|
||||
|
||||
@@ -590,12 +590,12 @@ fn F(a: IntAdapter) -> i32 {
|
||||
// CHECK:STDOUT: %return.param_patt: type = out_param_pattern %return.patt, runtime_param1
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %N.param: Core.IntLiteral = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc4_31.3: type = splice_block %.loc4_31.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc4_31.1: type = splice_block %.loc4_31.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %Core.ref: <namespace> = name_ref Core, imports.%Core [template = imports.%Core]
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, imports.%import_ref.1 [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc4_31.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc4_31.2: type = converted %int_literal.make_type, %.loc4_31.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc4_31.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc4_31.3: type = converted %int_literal.make_type, %.loc4_31.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %N: Core.IntLiteral = bind_name N, %N.param
|
||||
// CHECK:STDOUT: %return.param: ref type = out_param runtime_param1
|
||||
|
||||
@@ -117,9 +117,9 @@ fn Class(N:! i32).F[self: Self](n: T) {}
|
||||
// CHECK:STDOUT: %n.param_patt: @F.%T (%T) = value_param_pattern %n.patt, runtime_param1
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %self.param: @F.%Class (%Class) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc13_14.2: type = splice_block %Self.ref [symbolic = %Class (constants.%Class)] {
|
||||
// CHECK:STDOUT: %.loc13_14.1: type = specific_constant constants.%Class, @Class(constants.%T) [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: %Self.ref: type = name_ref Self, %.loc13_14.1 [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: %.loc13_14.1: type = splice_block %Self.ref [symbolic = %Class (constants.%Class)] {
|
||||
// CHECK:STDOUT: %.loc13_14.2: type = specific_constant constants.%Class, @Class(constants.%T) [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: %Self.ref: type = name_ref Self, %.loc13_14.2 [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @F.%Class (%Class) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %n.param: @F.%T (%T) = value_param runtime_param1
|
||||
|
||||
+3
-3
@@ -121,9 +121,9 @@ class Declaration(T:! type);
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %T.ref: type = name_ref T, @Class.%T.loc11_13.1 [symbolic = %T (constants.%T)]
|
||||
// CHECK:STDOUT: %self.param: @GetValue.%Class (%Class) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc17_21.2: type = splice_block %Self.ref [symbolic = %Class (constants.%Class)] {
|
||||
// CHECK:STDOUT: %.loc17_21.1: type = specific_constant constants.%Class, @Class(constants.%T) [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: %Self.ref: type = name_ref Self, %.loc17_21.1 [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: %.loc17_21.1: type = splice_block %Self.ref [symbolic = %Class (constants.%Class)] {
|
||||
// CHECK:STDOUT: %.loc17_21.2: type = specific_constant constants.%Class, @Class(constants.%T) [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: %Self.ref: type = name_ref Self, %.loc17_21.2 [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @GetValue.%Class (%Class) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %return.param: ref @GetValue.%T (%T) = out_param runtime_param1
|
||||
|
||||
@@ -103,12 +103,12 @@ fn F(a: A(0)*) {
|
||||
// CHECK:STDOUT: %return.param_patt: type = out_param_pattern %return.patt, runtime_param1
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %N.param: Core.IntLiteral = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc2_27.3: type = splice_block %.loc2_27.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc2_27.1: type = splice_block %.loc2_27.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %Core.ref: <namespace> = name_ref Core, imports.%Core [template = imports.%Core]
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, imports.%import_ref.1 [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc2_27.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc2_27.2: type = converted %int_literal.make_type, %.loc2_27.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc2_27.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc2_27.3: type = converted %int_literal.make_type, %.loc2_27.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %N: Core.IntLiteral = bind_name N, %N.param
|
||||
// CHECK:STDOUT: %return.param: ref type = out_param runtime_param1
|
||||
|
||||
@@ -202,9 +202,9 @@ fn StaticMemberFunctionCall(T:! type) -> Class(T) {
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %T.ref: type = name_ref T, @Class.%T.loc2_13.1 [symbolic = %T (constants.%T)]
|
||||
// CHECK:STDOUT: %self.param: @Get.%Class (%Class.1) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc5_16.2: type = splice_block %Self.ref [symbolic = %Class (constants.%Class.1)] {
|
||||
// CHECK:STDOUT: %.loc5_16.1: type = specific_constant constants.%Class.1, @Class(constants.%T) [symbolic = %Class (constants.%Class.1)]
|
||||
// CHECK:STDOUT: %Self.ref: type = name_ref Self, %.loc5_16.1 [symbolic = %Class (constants.%Class.1)]
|
||||
// CHECK:STDOUT: %.loc5_16.1: type = splice_block %Self.ref [symbolic = %Class (constants.%Class.1)] {
|
||||
// CHECK:STDOUT: %.loc5_16.2: type = specific_constant constants.%Class.1, @Class(constants.%T) [symbolic = %Class (constants.%Class.1)]
|
||||
// CHECK:STDOUT: %Self.ref: type = name_ref Self, %.loc5_16.2 [symbolic = %Class (constants.%Class.1)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @Get.%Class (%Class.1) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %return.param: ref @Get.%T (%T) = out_param runtime_param1
|
||||
|
||||
@@ -116,9 +116,9 @@ class C(T:! type) {
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %T.ref: type = name_ref T, @Class.%T.loc4_13.1 [symbolic = %T (constants.%T)]
|
||||
// CHECK:STDOUT: %self.param: @G.%Class (%Class) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc9_14.2: type = splice_block %Self.ref [symbolic = %Class (constants.%Class)] {
|
||||
// CHECK:STDOUT: %.loc9_14.1: type = specific_constant constants.%Class, @Class(constants.%T) [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: %Self.ref: type = name_ref Self, %.loc9_14.1 [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: %.loc9_14.1: type = splice_block %Self.ref [symbolic = %Class (constants.%Class)] {
|
||||
// CHECK:STDOUT: %.loc9_14.2: type = specific_constant constants.%Class, @Class(constants.%T) [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: %Self.ref: type = name_ref Self, %.loc9_14.2 [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @G.%Class (%Class) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %return.param: ref @G.%T (%T) = out_param runtime_param1
|
||||
|
||||
@@ -169,9 +169,9 @@ fn Generic(T:! ()).WrongType() {}
|
||||
// CHECK:STDOUT: %T.loc14: type = bind_symbolic_name T, 0, %T.param [symbolic = constants.%T]
|
||||
// CHECK:STDOUT: %T.ref.loc14: type = name_ref T, %T.loc14 [symbolic = constants.%T]
|
||||
// CHECK:STDOUT: %self.param.loc14: %Class = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc14_28.2: type = splice_block %Self.ref.loc14 [symbolic = constants.%Class] {
|
||||
// CHECK:STDOUT: %.loc14_28.1: type = specific_constant constants.%Class, @Class(constants.%T) [symbolic = constants.%Class]
|
||||
// CHECK:STDOUT: %Self.ref.loc14: type = name_ref Self, %.loc14_28.1 [symbolic = constants.%Class]
|
||||
// CHECK:STDOUT: %.loc14_28.1: type = splice_block %Self.ref.loc14 [symbolic = constants.%Class] {
|
||||
// CHECK:STDOUT: %.loc14_28.2: type = specific_constant constants.%Class, @Class(constants.%T) [symbolic = constants.%Class]
|
||||
// CHECK:STDOUT: %Self.ref.loc14: type = name_ref Self, %.loc14_28.2 [symbolic = constants.%Class]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self.loc14: %Class = bind_name self, %self.param.loc14
|
||||
// CHECK:STDOUT: %return.param.loc14: ref %T = out_param runtime_param1
|
||||
@@ -216,9 +216,9 @@ fn Generic(T:! ()).WrongType() {}
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %T.ref.loc6: type = name_ref T, @Class.%T.loc4_13.1 [symbolic = %T.loc6 (constants.%T)]
|
||||
// CHECK:STDOUT: %self.param.loc6: @G.%Class (%Class) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc6_14.2: type = splice_block %Self.ref.loc6 [symbolic = %Class (constants.%Class)] {
|
||||
// CHECK:STDOUT: %.loc6_14.1: type = specific_constant constants.%Class, @Class(constants.%T) [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: %Self.ref.loc6: type = name_ref Self, %.loc6_14.1 [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: %.loc6_14.1: type = splice_block %Self.ref.loc6 [symbolic = %Class (constants.%Class)] {
|
||||
// CHECK:STDOUT: %.loc6_14.2: type = specific_constant constants.%Class, @Class(constants.%T) [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: %Self.ref.loc6: type = name_ref Self, %.loc6_14.2 [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self.loc6: @G.%Class (%Class) = bind_name self, %self.param.loc6
|
||||
// CHECK:STDOUT: %return.param.loc6: ref @G.%T.loc6 (%T) = out_param runtime_param1
|
||||
@@ -350,9 +350,9 @@ fn Generic(T:! ()).WrongType() {}
|
||||
// CHECK:STDOUT: %T.ref.loc10_22: type = name_ref T, %T.loc10 [symbolic = constants.%T]
|
||||
// CHECK:STDOUT: %N.loc10: %T = bind_symbolic_name N, 1, %N.param [symbolic = constants.%N]
|
||||
// CHECK:STDOUT: %self.param.loc10: %B = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc10_33.2: type = splice_block %Self.ref.loc10 [symbolic = constants.%B] {
|
||||
// CHECK:STDOUT: %.loc10_33.1: type = specific_constant constants.%B, @B(constants.%T, constants.%N) [symbolic = constants.%B]
|
||||
// CHECK:STDOUT: %Self.ref.loc10: type = name_ref Self, %.loc10_33.1 [symbolic = constants.%B]
|
||||
// CHECK:STDOUT: %.loc10_33.1: type = splice_block %Self.ref.loc10 [symbolic = constants.%B] {
|
||||
// CHECK:STDOUT: %.loc10_33.2: type = specific_constant constants.%B, @B(constants.%T, constants.%N) [symbolic = constants.%B]
|
||||
// CHECK:STDOUT: %Self.ref.loc10: type = name_ref Self, %.loc10_33.2 [symbolic = constants.%B]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self.loc10: %B = bind_name self, %self.param.loc10
|
||||
// CHECK:STDOUT: %a.param.loc10: %T = value_param runtime_param1
|
||||
@@ -404,9 +404,9 @@ fn Generic(T:! ()).WrongType() {}
|
||||
// CHECK:STDOUT: %a.param_patt: %T = value_param_pattern %a.patt, runtime_param1
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %self.param.loc6: @F.%B (%B) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc6_16.2: type = splice_block %Self.ref.loc6 [symbolic = %B (constants.%B)] {
|
||||
// CHECK:STDOUT: %.loc6_16.1: type = specific_constant constants.%B, @B(constants.%T, constants.%N) [symbolic = %B (constants.%B)]
|
||||
// CHECK:STDOUT: %Self.ref.loc6: type = name_ref Self, %.loc6_16.1 [symbolic = %B (constants.%B)]
|
||||
// CHECK:STDOUT: %.loc6_16.1: type = splice_block %Self.ref.loc6 [symbolic = %B (constants.%B)] {
|
||||
// CHECK:STDOUT: %.loc6_16.2: type = specific_constant constants.%B, @B(constants.%T, constants.%N) [symbolic = %B (constants.%B)]
|
||||
// CHECK:STDOUT: %Self.ref.loc6: type = name_ref Self, %.loc6_16.2 [symbolic = %B (constants.%B)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self.loc6: @F.%B (%B) = bind_name self, %self.param.loc6
|
||||
// CHECK:STDOUT: %a.param.loc6: @F.%T.loc6 (%T) = value_param runtime_param1
|
||||
@@ -749,9 +749,9 @@ fn Generic(T:! ()).WrongType() {}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %.decl: %.type = fn_decl @.1 [template = constants.%.1] {} {
|
||||
// CHECK:STDOUT: %T.param: %empty_tuple.type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc14_17.3: type = splice_block %.loc14_17.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc14_17.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc14_17.2: type = converted %.loc14_17.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc14_17.1: type = splice_block %.loc14_17.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc14_17.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc14_17.3: type = converted %.loc14_17.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %T.loc14_12.1: %empty_tuple.type = bind_symbolic_name T, 0, %T.param [symbolic = %T.loc14_12.2 (constants.%T.2)]
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+6
-6
@@ -61,9 +61,9 @@ fn Class(T:! type).F[self: Self](n: T) {}
|
||||
// CHECK:STDOUT: %T.param: type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %T.loc16: type = bind_symbolic_name T, 0, %T.param [symbolic = constants.%T]
|
||||
// CHECK:STDOUT: %self.param.loc16: %Class = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc16_28.2: type = splice_block %Self.ref.loc16 [symbolic = constants.%Class] {
|
||||
// CHECK:STDOUT: %.loc16_28.1: type = specific_constant constants.%Class, @Class(constants.%T) [symbolic = constants.%Class]
|
||||
// CHECK:STDOUT: %Self.ref.loc16: type = name_ref Self, %.loc16_28.1 [symbolic = constants.%Class]
|
||||
// CHECK:STDOUT: %.loc16_28.1: type = splice_block %Self.ref.loc16 [symbolic = constants.%Class] {
|
||||
// CHECK:STDOUT: %.loc16_28.2: type = specific_constant constants.%Class, @Class(constants.%T) [symbolic = constants.%Class]
|
||||
// CHECK:STDOUT: %Self.ref.loc16: type = name_ref Self, %.loc16_28.2 [symbolic = constants.%Class]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self.loc16: %Class = bind_name self, %self.param.loc16
|
||||
// CHECK:STDOUT: %n.param.loc16: %T = value_param runtime_param1
|
||||
@@ -94,9 +94,9 @@ fn Class(T:! type).F[self: Self](n: T) {}
|
||||
// CHECK:STDOUT: %n.param_patt: %T = value_param_pattern %n.patt, runtime_param1
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %self.param.loc13: @F.%Class (%Class) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc13_14.2: type = splice_block %Self.ref.loc13 [symbolic = %Class (constants.%Class)] {
|
||||
// CHECK:STDOUT: %.loc13_14.1: type = specific_constant constants.%Class, @Class(constants.%T) [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: %Self.ref.loc13: type = name_ref Self, %.loc13_14.1 [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: %.loc13_14.1: type = splice_block %Self.ref.loc13 [symbolic = %Class (constants.%Class)] {
|
||||
// CHECK:STDOUT: %.loc13_14.2: type = specific_constant constants.%Class, @Class(constants.%T) [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: %Self.ref.loc13: type = name_ref Self, %.loc13_14.2 [symbolic = %Class (constants.%Class)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self.loc13: @F.%Class (%Class) = bind_name self, %self.param.loc13
|
||||
// CHECK:STDOUT: %n.param.loc13: @F.%T.loc13 (%T) = value_param runtime_param1
|
||||
|
||||
+6
-6
@@ -54,10 +54,10 @@ fn Class.F[self: Self](b: bool) {}
|
||||
// CHECK:STDOUT: %Self.ref.loc17: type = name_ref Self, constants.%Class [template = constants.%Class]
|
||||
// CHECK:STDOUT: %self.loc17: %Class = bind_name self, %self.param.loc17
|
||||
// CHECK:STDOUT: %b.param.loc17: bool = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc17_27.3: type = splice_block %.loc17_27.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc17_27.1: type = splice_block %.loc17_27.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc17: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc17_27.1: type = value_of_initializer %bool.make_type.loc17 [template = bool]
|
||||
// CHECK:STDOUT: %.loc17_27.2: type = converted %bool.make_type.loc17, %.loc17_27.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc17_27.2: type = value_of_initializer %bool.make_type.loc17 [template = bool]
|
||||
// CHECK:STDOUT: %.loc17_27.3: type = converted %bool.make_type.loc17, %.loc17_27.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b.loc17: bool = bind_name b, %b.param.loc17
|
||||
// CHECK:STDOUT: }
|
||||
@@ -74,10 +74,10 @@ fn Class.F[self: Self](b: bool) {}
|
||||
// CHECK:STDOUT: %Self.ref.loc14: type = name_ref Self, constants.%Class [template = constants.%Class]
|
||||
// CHECK:STDOUT: %self.loc14: %Class = bind_name self, %self.param.loc14
|
||||
// CHECK:STDOUT: %b.param.loc14: bool = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc14_23.3: type = splice_block %.loc14_23.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc14_23.1: type = splice_block %.loc14_23.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc14: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc14_23.1: type = value_of_initializer %bool.make_type.loc14 [template = bool]
|
||||
// CHECK:STDOUT: %.loc14_23.2: type = converted %bool.make_type.loc14, %.loc14_23.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc14_23.2: type = value_of_initializer %bool.make_type.loc14 [template = bool]
|
||||
// CHECK:STDOUT: %.loc14_23.3: type = converted %bool.make_type.loc14, %.loc14_23.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b.loc14: bool = bind_name b, %b.param.loc14
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+12
-12
@@ -90,15 +90,15 @@ class D(b:! C(1_000)) {}
|
||||
// CHECK:STDOUT: %b.param_patt: %C.2 = value_param_pattern %b.patt.loc6, runtime_param<invalid> [symbolic = constants.%b.patt]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %b.param.loc5: %C.2 = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc5_20.3: type = splice_block %C.loc5 [template = constants.%C.2] {
|
||||
// CHECK:STDOUT: %.loc5_20.1: type = splice_block %C.loc5 [template = constants.%C.2] {
|
||||
// CHECK:STDOUT: %C.ref.loc5: %C.type = name_ref C, file.%C.decl [template = constants.%C.generic]
|
||||
// CHECK:STDOUT: %int_1000.loc5: Core.IntLiteral = int_value 1000 [template = constants.%int_1000.1]
|
||||
// CHECK:STDOUT: %impl.elem0.loc5: %Convert.type.2 = interface_witness_access constants.%interface.19, element0 [template = constants.%Convert.10]
|
||||
// CHECK:STDOUT: %Convert.bound.loc5: <bound method> = bound_method %int_1000.loc5, %impl.elem0.loc5 [template = constants.%Convert.bound]
|
||||
// CHECK:STDOUT: %Convert.specific_fn.loc5: <specific function> = specific_function %Convert.bound.loc5, @Convert.2(constants.%int_32) [template = constants.%Convert.specific_fn]
|
||||
// CHECK:STDOUT: %int.convert_checked.loc5: init %i32 = call %Convert.specific_fn.loc5(%int_1000.loc5) [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %.loc5_20.1: %i32 = value_of_initializer %int.convert_checked.loc5 [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %.loc5_20.2: %i32 = converted %int_1000.loc5, %.loc5_20.1 [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %.loc5_20.2: %i32 = value_of_initializer %int.convert_checked.loc5 [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %.loc5_20.3: %i32 = converted %int_1000.loc5, %.loc5_20.2 [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %C.loc5: type = class_type @C, @C(constants.%int_1000.2) [template = constants.%C.2]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b.loc5_9.1: %C.2 = bind_symbolic_name b, 0, %b.param.loc5 [symbolic = %b.loc5_9.2 (constants.%b)]
|
||||
@@ -108,15 +108,15 @@ class D(b:! C(1_000)) {}
|
||||
// CHECK:STDOUT: %b.param_patt: %C.2 = value_param_pattern %b.patt.loc6, runtime_param<invalid> [symbolic = constants.%b.patt]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %b.param.loc6: %C.2 = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc6_20.3: type = splice_block %C.loc6 [template = constants.%C.2] {
|
||||
// CHECK:STDOUT: %.loc6_20.1: type = splice_block %C.loc6 [template = constants.%C.2] {
|
||||
// CHECK:STDOUT: %C.ref.loc6: %C.type = name_ref C, file.%C.decl [template = constants.%C.generic]
|
||||
// CHECK:STDOUT: %int_1000.loc6: Core.IntLiteral = int_value 1000 [template = constants.%int_1000.1]
|
||||
// CHECK:STDOUT: %impl.elem0.loc6: %Convert.type.2 = interface_witness_access constants.%interface.19, element0 [template = constants.%Convert.10]
|
||||
// CHECK:STDOUT: %Convert.bound.loc6: <bound method> = bound_method %int_1000.loc6, %impl.elem0.loc6 [template = constants.%Convert.bound]
|
||||
// CHECK:STDOUT: %Convert.specific_fn.loc6: <specific function> = specific_function %Convert.bound.loc6, @Convert.2(constants.%int_32) [template = constants.%Convert.specific_fn]
|
||||
// CHECK:STDOUT: %int.convert_checked.loc6: init %i32 = call %Convert.specific_fn.loc6(%int_1000.loc6) [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %.loc6_20.1: %i32 = value_of_initializer %int.convert_checked.loc6 [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %.loc6_20.2: %i32 = converted %int_1000.loc6, %.loc6_20.1 [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %.loc6_20.2: %i32 = value_of_initializer %int.convert_checked.loc6 [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %.loc6_20.3: %i32 = converted %int_1000.loc6, %.loc6_20.2 [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %C.loc6: type = class_type @C, @C(constants.%int_1000.2) [template = constants.%C.2]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b.loc6: %C.2 = bind_symbolic_name b, 0, %b.param.loc6 [symbolic = constants.%b]
|
||||
@@ -230,15 +230,15 @@ class D(b:! C(1_000)) {}
|
||||
// CHECK:STDOUT: %b.param_patt: %C.2 = value_param_pattern %b.patt.loc5_9.1, runtime_param<invalid> [symbolic = %b.patt.loc5_9.2 (constants.%b.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %b.param: %C.2 = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc5_19.3: type = splice_block %C [template = constants.%C.2] {
|
||||
// CHECK:STDOUT: %.loc5_19.1: type = splice_block %C [template = constants.%C.2] {
|
||||
// CHECK:STDOUT: %C.ref: %C.type = name_ref C, file.%C.decl [template = constants.%C.generic]
|
||||
// CHECK:STDOUT: %int_1000: Core.IntLiteral = int_value 1000 [template = constants.%int_1000.1]
|
||||
// CHECK:STDOUT: %impl.elem0: %Convert.type.2 = interface_witness_access constants.%interface.19, element0 [template = constants.%Convert.10]
|
||||
// CHECK:STDOUT: %Convert.bound: <bound method> = bound_method %int_1000, %impl.elem0 [template = constants.%Convert.bound]
|
||||
// CHECK:STDOUT: %Convert.specific_fn: <specific function> = specific_function %Convert.bound, @Convert.2(constants.%int_32) [template = constants.%Convert.specific_fn]
|
||||
// CHECK:STDOUT: %int.convert_checked: init %i32 = call %Convert.specific_fn(%int_1000) [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %.loc5_19.1: %i32 = value_of_initializer %int.convert_checked [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %.loc5_19.2: %i32 = converted %int_1000, %.loc5_19.1 [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %.loc5_19.2: %i32 = value_of_initializer %int.convert_checked [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %.loc5_19.3: %i32 = converted %int_1000, %.loc5_19.2 [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %C: type = class_type @C, @C(constants.%int_1000.2) [template = constants.%C.2]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b.loc5_9.1: %C.2 = bind_symbolic_name b, 0, %b.param [symbolic = %b.loc5_9.2 (constants.%b)]
|
||||
@@ -248,15 +248,15 @@ class D(b:! C(1_000)) {}
|
||||
// CHECK:STDOUT: %b.param_patt: %C.2 = value_param_pattern %b.patt.loc12_9.1, runtime_param<invalid> [symbolic = %b.patt.loc12_9.2 (constants.%b.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %b.param: %C.2 = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc12_20.3: type = splice_block %C [template = constants.%C.2] {
|
||||
// CHECK:STDOUT: %.loc12_20.1: type = splice_block %C [template = constants.%C.2] {
|
||||
// CHECK:STDOUT: %C.ref: %C.type = name_ref C, file.%C.decl [template = constants.%C.generic]
|
||||
// CHECK:STDOUT: %int_1000: Core.IntLiteral = int_value 1000 [template = constants.%int_1000.1]
|
||||
// CHECK:STDOUT: %impl.elem0: %Convert.type.2 = interface_witness_access constants.%interface.19, element0 [template = constants.%Convert.10]
|
||||
// CHECK:STDOUT: %Convert.bound: <bound method> = bound_method %int_1000, %impl.elem0 [template = constants.%Convert.bound]
|
||||
// CHECK:STDOUT: %Convert.specific_fn: <specific function> = specific_function %Convert.bound, @Convert.2(constants.%int_32) [template = constants.%Convert.specific_fn]
|
||||
// CHECK:STDOUT: %int.convert_checked: init %i32 = call %Convert.specific_fn(%int_1000) [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %.loc12_20.1: %i32 = value_of_initializer %int.convert_checked [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %.loc12_20.2: %i32 = converted %int_1000, %.loc12_20.1 [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %.loc12_20.2: %i32 = value_of_initializer %int.convert_checked [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %.loc12_20.3: %i32 = converted %int_1000, %.loc12_20.2 [template = constants.%int_1000.2]
|
||||
// CHECK:STDOUT: %C: type = class_type @C, @C(constants.%int_1000.2) [template = constants.%C.2]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b.loc12_9.1: %C.2 = bind_symbolic_name b, 0, %b.param [symbolic = %b.loc12_9.2 (constants.%b)]
|
||||
|
||||
+9
-9
@@ -90,12 +90,12 @@ fn G(a: f64) -> Core.IntLiteral() {
|
||||
// CHECK:STDOUT: %.loc4_64.1: type = value_of_initializer %int_literal.make_type.loc4_64 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc4_64.2: type = converted %int_literal.make_type.loc4_64, %.loc4_64.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %N.param: Core.IntLiteral = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc4_26.3: type = splice_block %.loc4_26.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc4_26.1: type = splice_block %.loc4_26.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %Core.ref.loc4_10: <namespace> = name_ref Core, imports.%Core [template = imports.%Core]
|
||||
// CHECK:STDOUT: %IntLiteral.ref.loc4_14: %IntLiteral.type = name_ref IntLiteral, imports.%import_ref.1 [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type.loc4_26: init type = call %IntLiteral.ref.loc4_14() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc4_26.1: type = value_of_initializer %int_literal.make_type.loc4_26 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc4_26.2: type = converted %int_literal.make_type.loc4_26, %.loc4_26.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc4_26.2: type = value_of_initializer %int_literal.make_type.loc4_26 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc4_26.3: type = converted %int_literal.make_type.loc4_26, %.loc4_26.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %N.loc4_6.1: Core.IntLiteral = bind_symbolic_name N, 0, %N.param [symbolic = %N.loc4_6.2 (constants.%N)]
|
||||
// CHECK:STDOUT: %n.param: @F.%Int.loc4_42.2 (%Int) = value_param runtime_param0
|
||||
@@ -220,12 +220,12 @@ fn G(a: f64) -> Core.IntLiteral() {
|
||||
// CHECK:STDOUT: %.loc8_66.1: type = value_of_initializer %int_literal.make_type.loc8_66 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc8_66.2: type = converted %int_literal.make_type.loc8_66, %.loc8_66.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %N.param: Core.IntLiteral = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc8_26.3: type = splice_block %.loc8_26.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc8_26.1: type = splice_block %.loc8_26.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %Core.ref.loc8_10: <namespace> = name_ref Core, imports.%Core [template = imports.%Core]
|
||||
// CHECK:STDOUT: %IntLiteral.ref.loc8_14: %IntLiteral.type = name_ref IntLiteral, imports.%import_ref.1 [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type.loc8_26: init type = call %IntLiteral.ref.loc8_14() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc8_26.1: type = value_of_initializer %int_literal.make_type.loc8_26 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc8_26.2: type = converted %int_literal.make_type.loc8_26, %.loc8_26.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc8_26.2: type = value_of_initializer %int_literal.make_type.loc8_26 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc8_26.3: type = converted %int_literal.make_type.loc8_26, %.loc8_26.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %N.loc8_6.1: Core.IntLiteral = bind_symbolic_name N, 0, %N.param [symbolic = %N.loc8_6.2 (constants.%N)]
|
||||
// CHECK:STDOUT: %n.param: <error> = value_param runtime_param0
|
||||
@@ -253,11 +253,11 @@ fn G(a: f64) -> Core.IntLiteral() {
|
||||
// CHECK:STDOUT: %.loc12_33.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc12_33.2: type = converted %int_literal.make_type, %.loc12_33.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %a.param: f64 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc12_9.3: type = splice_block %.loc12_9.2 [template = f64] {
|
||||
// CHECK:STDOUT: %.loc12_9.1: type = splice_block %.loc12_9.3 [template = f64] {
|
||||
// CHECK:STDOUT: %int_64: Core.IntLiteral = int_value 64 [template = constants.%int_64]
|
||||
// CHECK:STDOUT: %float.make_type: init type = call constants.%Float(%int_64) [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_9.1: type = value_of_initializer %float.make_type [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_9.2: type = converted %float.make_type, %.loc12_9.1 [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_9.2: type = value_of_initializer %float.make_type [template = f64]
|
||||
// CHECK:STDOUT: %.loc12_9.3: type = converted %float.make_type, %.loc12_9.2 [template = f64]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: f64 = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref Core.IntLiteral = out_param runtime_param1
|
||||
|
||||
+19
-19
@@ -111,11 +111,11 @@ fn G(pair: (C, D)) -> D {
|
||||
// CHECK:STDOUT: %U.param: type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %U.loc7_16.1: type = bind_symbolic_name U, 1, %U.param [symbolic = %U.loc7_16.2 (constants.%U)]
|
||||
// CHECK:STDOUT: %pair.param: @F.%tuple.type (%tuple.type.2) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc7_37.3: type = splice_block %.loc7_37.2 [symbolic = %tuple.type (constants.%tuple.type.2)] {
|
||||
// CHECK:STDOUT: %.loc7_37.1: type = splice_block %.loc7_37.3 [symbolic = %tuple.type (constants.%tuple.type.2)] {
|
||||
// CHECK:STDOUT: %T.ref: type = name_ref T, %T.loc7_6.1 [symbolic = %T.loc7_6.2 (constants.%T)]
|
||||
// CHECK:STDOUT: %U.ref.loc7_36: type = name_ref U, %U.loc7_16.1 [symbolic = %U.loc7_16.2 (constants.%U)]
|
||||
// CHECK:STDOUT: %.loc7_37.1: %tuple.type.1 = tuple_literal (%T.ref, %U.ref.loc7_36)
|
||||
// CHECK:STDOUT: %.loc7_37.2: type = converted %.loc7_37.1, constants.%tuple.type.2 [symbolic = %tuple.type (constants.%tuple.type.2)]
|
||||
// CHECK:STDOUT: %.loc7_37.2: %tuple.type.1 = tuple_literal (%T.ref, %U.ref.loc7_36)
|
||||
// CHECK:STDOUT: %.loc7_37.3: type = converted %.loc7_37.2, constants.%tuple.type.2 [symbolic = %tuple.type (constants.%tuple.type.2)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %pair: @F.%tuple.type (%tuple.type.2) = bind_name pair, %pair.param
|
||||
// CHECK:STDOUT: %return.param: ref @F.%U.loc7_16.2 (%U) = out_param runtime_param1
|
||||
@@ -129,11 +129,11 @@ fn G(pair: (C, D)) -> D {
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %D.ref.loc9_23: type = name_ref D, file.%D.decl [template = constants.%D]
|
||||
// CHECK:STDOUT: %pair.param: %tuple.type.3 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc9_17.3: type = splice_block %.loc9_17.2 [template = constants.%tuple.type.3] {
|
||||
// CHECK:STDOUT: %.loc9_17.1: type = splice_block %.loc9_17.3 [template = constants.%tuple.type.3] {
|
||||
// CHECK:STDOUT: %C.ref: type = name_ref C, file.%C.decl [template = constants.%C]
|
||||
// CHECK:STDOUT: %D.ref.loc9_16: type = name_ref D, file.%D.decl [template = constants.%D]
|
||||
// CHECK:STDOUT: %.loc9_17.1: %tuple.type.1 = tuple_literal (%C.ref, %D.ref.loc9_16)
|
||||
// CHECK:STDOUT: %.loc9_17.2: type = converted %.loc9_17.1, constants.%tuple.type.3 [template = constants.%tuple.type.3]
|
||||
// CHECK:STDOUT: %.loc9_17.2: %tuple.type.1 = tuple_literal (%C.ref, %D.ref.loc9_16)
|
||||
// CHECK:STDOUT: %.loc9_17.3: type = converted %.loc9_17.2, constants.%tuple.type.3 [template = constants.%tuple.type.3]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %pair: %tuple.type.3 = bind_name pair, %pair.param
|
||||
// CHECK:STDOUT: %return.param: ref %D = out_param runtime_param1
|
||||
@@ -284,13 +284,13 @@ fn G(pair: (C, D)) -> D {
|
||||
// CHECK:STDOUT: %Pair.param_patt: %tuple.type.2 = value_param_pattern %Pair.patt.loc4_15.1, runtime_param<invalid> [symbolic = %Pair.patt.loc4_15.2 (constants.%Pair.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %Pair.param: %tuple.type.2 = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc4_31.3: type = splice_block %.loc4_31.2 [template = constants.%tuple.type.2] {
|
||||
// CHECK:STDOUT: %.loc4_31.1: type = splice_block %.loc4_31.3 [template = constants.%tuple.type.2] {
|
||||
// CHECK:STDOUT: %int_32.loc4_23: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32.loc4_23: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %int_32.loc4_28: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32.loc4_28: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %.loc4_31.1: %tuple.type.1 = tuple_literal (%i32.loc4_23, %i32.loc4_28)
|
||||
// CHECK:STDOUT: %.loc4_31.2: type = converted %.loc4_31.1, constants.%tuple.type.2 [template = constants.%tuple.type.2]
|
||||
// CHECK:STDOUT: %.loc4_31.2: %tuple.type.1 = tuple_literal (%i32.loc4_23, %i32.loc4_28)
|
||||
// CHECK:STDOUT: %.loc4_31.3: type = converted %.loc4_31.2, constants.%tuple.type.2 [template = constants.%tuple.type.2]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %Pair.loc4_15.1: %tuple.type.2 = bind_symbolic_name Pair, 0, %Pair.param [symbolic = %Pair.loc4_15.2 (constants.%Pair)]
|
||||
// CHECK:STDOUT: }
|
||||
@@ -319,13 +319,13 @@ fn G(pair: (C, D)) -> D {
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %B.loc6_15.1: %i32 = bind_symbolic_name B, 1, %B.param [symbolic = %B.loc6_15.2 (constants.%B)]
|
||||
// CHECK:STDOUT: %h.param: @F.%HasPair.loc6_41.2 (%HasPair.2) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc6_41.2: type = splice_block %HasPair.loc6_41.1 [symbolic = %HasPair.loc6_41.2 (constants.%HasPair.2)] {
|
||||
// CHECK:STDOUT: %.loc6_41.1: type = splice_block %HasPair.loc6_41.1 [symbolic = %HasPair.loc6_41.2 (constants.%HasPair.2)] {
|
||||
// CHECK:STDOUT: %HasPair.ref: %HasPair.type = name_ref HasPair, file.%HasPair.decl [template = constants.%HasPair.generic]
|
||||
// CHECK:STDOUT: %A.ref: %i32 = name_ref A, %A.loc6_6.1 [symbolic = %A.loc6_6.2 (constants.%A)]
|
||||
// CHECK:STDOUT: %B.ref.loc6_39: %i32 = name_ref B, %B.loc6_15.1 [symbolic = %B.loc6_15.2 (constants.%B)]
|
||||
// CHECK:STDOUT: %.loc6_40: %tuple.type.2 = tuple_literal (%A.ref, %B.ref.loc6_39)
|
||||
// CHECK:STDOUT: %tuple.loc6_40.1: %tuple.type.2 = tuple_value (%A.ref, %B.ref.loc6_39) [symbolic = %tuple.loc6_40.2 (constants.%tuple.1)]
|
||||
// CHECK:STDOUT: %.loc6_41.1: %tuple.type.2 = converted %.loc6_40, %tuple.loc6_40.1 [symbolic = %tuple.loc6_40.2 (constants.%tuple.1)]
|
||||
// CHECK:STDOUT: %.loc6_41.2: %tuple.type.2 = converted %.loc6_40, %tuple.loc6_40.1 [symbolic = %tuple.loc6_40.2 (constants.%tuple.1)]
|
||||
// CHECK:STDOUT: %HasPair.loc6_41.1: type = class_type @HasPair, @HasPair(constants.%tuple.1) [symbolic = %HasPair.loc6_41.2 (constants.%HasPair.2)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %h: @F.%HasPair.loc6_41.2 (%HasPair.2) = bind_name h, %h.param
|
||||
@@ -341,7 +341,7 @@ fn G(pair: (C, D)) -> D {
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %h.param: %HasPair.3 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc8_23.2: type = splice_block %HasPair [template = constants.%HasPair.3] {
|
||||
// CHECK:STDOUT: %.loc8_23.1: type = splice_block %HasPair [template = constants.%HasPair.3] {
|
||||
// CHECK:STDOUT: %HasPair.ref: %HasPair.type = name_ref HasPair, file.%HasPair.decl [template = constants.%HasPair.generic]
|
||||
// CHECK:STDOUT: %int_1: Core.IntLiteral = int_value 1 [template = constants.%int_1.1]
|
||||
// CHECK:STDOUT: %int_2: Core.IntLiteral = int_value 2 [template = constants.%int_2.1]
|
||||
@@ -359,7 +359,7 @@ fn G(pair: (C, D)) -> D {
|
||||
// CHECK:STDOUT: %.loc8_22.4: %i32 = value_of_initializer %int.convert_checked.loc8_22.2 [template = constants.%int_2.2]
|
||||
// CHECK:STDOUT: %.loc8_22.5: %i32 = converted %int_2, %.loc8_22.4 [template = constants.%int_2.2]
|
||||
// CHECK:STDOUT: %tuple: %tuple.type.2 = tuple_value (%.loc8_22.3, %.loc8_22.5) [template = constants.%tuple.2]
|
||||
// CHECK:STDOUT: %.loc8_23.1: %tuple.type.2 = converted %.loc8_22.1, %tuple [template = constants.%tuple.2]
|
||||
// CHECK:STDOUT: %.loc8_23.2: %tuple.type.2 = converted %.loc8_22.1, %tuple [template = constants.%tuple.2]
|
||||
// CHECK:STDOUT: %HasPair: type = class_type @HasPair, @HasPair(constants.%tuple.2) [template = constants.%HasPair.3]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %h: %HasPair.3 = bind_name h, %h.param
|
||||
@@ -502,11 +502,11 @@ fn G(pair: (C, D)) -> D {
|
||||
// CHECK:STDOUT: %T.param: type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %T.loc7_6.1: type = bind_symbolic_name T, 0, %T.param [symbolic = %T.loc7_6.2 (constants.%T)]
|
||||
// CHECK:STDOUT: %pair.param: @F.%tuple.type (%tuple.type.2) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc7_27.3: type = splice_block %.loc7_27.2 [symbolic = %tuple.type (constants.%tuple.type.2)] {
|
||||
// CHECK:STDOUT: %.loc7_27.1: type = splice_block %.loc7_27.3 [symbolic = %tuple.type (constants.%tuple.type.2)] {
|
||||
// CHECK:STDOUT: %T.ref.loc7_23: type = name_ref T, %T.loc7_6.1 [symbolic = %T.loc7_6.2 (constants.%T)]
|
||||
// CHECK:STDOUT: %T.ref.loc7_26: type = name_ref T, %T.loc7_6.1 [symbolic = %T.loc7_6.2 (constants.%T)]
|
||||
// CHECK:STDOUT: %.loc7_27.1: %tuple.type.1 = tuple_literal (%T.ref.loc7_23, %T.ref.loc7_26)
|
||||
// CHECK:STDOUT: %.loc7_27.2: type = converted %.loc7_27.1, constants.%tuple.type.2 [symbolic = %tuple.type (constants.%tuple.type.2)]
|
||||
// CHECK:STDOUT: %.loc7_27.2: %tuple.type.1 = tuple_literal (%T.ref.loc7_23, %T.ref.loc7_26)
|
||||
// CHECK:STDOUT: %.loc7_27.3: type = converted %.loc7_27.2, constants.%tuple.type.2 [symbolic = %tuple.type (constants.%tuple.type.2)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %pair: @F.%tuple.type (%tuple.type.2) = bind_name pair, %pair.param
|
||||
// CHECK:STDOUT: %return.param: ref @F.%T.loc7_6.2 (%T) = out_param runtime_param1
|
||||
@@ -520,11 +520,11 @@ fn G(pair: (C, D)) -> D {
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %D.ref.loc9_23: type = name_ref D, file.%D.decl [template = constants.%D]
|
||||
// CHECK:STDOUT: %pair.param: %tuple.type.3 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc9_17.3: type = splice_block %.loc9_17.2 [template = constants.%tuple.type.3] {
|
||||
// CHECK:STDOUT: %.loc9_17.1: type = splice_block %.loc9_17.3 [template = constants.%tuple.type.3] {
|
||||
// CHECK:STDOUT: %C.ref: type = name_ref C, file.%C.decl [template = constants.%C]
|
||||
// CHECK:STDOUT: %D.ref.loc9_16: type = name_ref D, file.%D.decl [template = constants.%D]
|
||||
// CHECK:STDOUT: %.loc9_17.1: %tuple.type.1 = tuple_literal (%C.ref, %D.ref.loc9_16)
|
||||
// CHECK:STDOUT: %.loc9_17.2: type = converted %.loc9_17.1, constants.%tuple.type.3 [template = constants.%tuple.type.3]
|
||||
// CHECK:STDOUT: %.loc9_17.2: %tuple.type.1 = tuple_literal (%C.ref, %D.ref.loc9_16)
|
||||
// CHECK:STDOUT: %.loc9_17.3: type = converted %.loc9_17.2, constants.%tuple.type.3 [template = constants.%tuple.type.3]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %pair: %tuple.type.3 = bind_name pair, %pair.param
|
||||
// CHECK:STDOUT: %return.param: ref %D = out_param runtime_param1
|
||||
|
||||
+4
-4
@@ -79,17 +79,17 @@ var arr: [i32; (1 as i32).(I.F)(2)];
|
||||
// CHECK:STDOUT: %Self.as_type.loc12_36: type = facet_access_type %Self.ref.loc12_36 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc12_36: type = converted %Self.ref.loc12_36, %Self.as_type.loc12_36 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %self.param: @F.1.%Self.as_type.loc12_14.1 (%Self.as_type.1) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc12_14.2: type = splice_block %.loc12_14.1 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)] {
|
||||
// CHECK:STDOUT: %.loc12_14.1: type = splice_block %.loc12_14.2 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)] {
|
||||
// CHECK:STDOUT: %Self.ref.loc12_14: %I.type = name_ref Self, @I.%Self [symbolic = %Self (constants.%Self.1)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc12_14.2: type = facet_access_type %Self.ref.loc12_14 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc12_14.1: type = converted %Self.ref.loc12_14, %Self.as_type.loc12_14.2 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc12_14.2: type = converted %Self.ref.loc12_14, %Self.as_type.loc12_14.2 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @F.1.%Self.as_type.loc12_14.1 (%Self.as_type.1) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %other.param: @F.1.%Self.as_type.loc12_14.1 (%Self.as_type.1) = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc12_27.2: type = splice_block %.loc12_27.1 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)] {
|
||||
// CHECK:STDOUT: %.loc12_27.1: type = splice_block %.loc12_27.2 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)] {
|
||||
// CHECK:STDOUT: %Self.ref.loc12_27: %I.type = name_ref Self, @I.%Self [symbolic = %Self (constants.%Self.1)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc12_27: type = facet_access_type %Self.ref.loc12_27 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc12_27.1: type = converted %Self.ref.loc12_27, %Self.as_type.loc12_27 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc12_27.2: type = converted %Self.ref.loc12_27, %Self.as_type.loc12_27 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %other: @F.1.%Self.as_type.loc12_14.1 (%Self.as_type.1) = bind_name other, %other.param
|
||||
// CHECK:STDOUT: %return.param: ref @F.1.%Self.as_type.loc12_14.1 (%Self.as_type.1) = out_param runtime_param2
|
||||
|
||||
+15
-15
@@ -140,11 +140,11 @@ var arr: [i32; (1 as i32) + (2 as i32)] = (3, 4, (3 as i32) + (4 as i32));
|
||||
// CHECK:STDOUT: %return.param_patt: type = out_param_pattern %return.patt, runtime_param1
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %N.param: Core.IntLiteral = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc5_22.3: type = splice_block %.loc5_22.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc5_22.1: type = splice_block %.loc5_22.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, file.%IntLiteral.decl [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc5_22.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc5_22.2: type = converted %int_literal.make_type, %.loc5_22.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc5_22.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc5_22.3: type = converted %int_literal.make_type, %.loc5_22.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %N: Core.IntLiteral = bind_name N, %N.param
|
||||
// CHECK:STDOUT: %return.param: ref type = out_param runtime_param1
|
||||
@@ -224,17 +224,17 @@ var arr: [i32; (1 as i32) + (2 as i32)] = (3, 4, (3 as i32) + (4 as i32));
|
||||
// CHECK:STDOUT: %Self.as_type.loc8_37: type = facet_access_type %Self.ref.loc8_37 [symbolic = %Self.as_type.loc8_15.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc8_37: type = converted %Self.ref.loc8_37, %Self.as_type.loc8_37 [symbolic = %Self.as_type.loc8_15.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %self.param: @Op.1.%Self.as_type.loc8_15.1 (%Self.as_type.1) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc8_15.2: type = splice_block %.loc8_15.1 [symbolic = %Self.as_type.loc8_15.1 (constants.%Self.as_type.1)] {
|
||||
// CHECK:STDOUT: %.loc8_15.1: type = splice_block %.loc8_15.2 [symbolic = %Self.as_type.loc8_15.1 (constants.%Self.as_type.1)] {
|
||||
// CHECK:STDOUT: %Self.ref.loc8_15: %Add.type = name_ref Self, @Add.%Self [symbolic = %Self (constants.%Self.1)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc8_15.2: type = facet_access_type %Self.ref.loc8_15 [symbolic = %Self.as_type.loc8_15.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc8_15.1: type = converted %Self.ref.loc8_15, %Self.as_type.loc8_15.2 [symbolic = %Self.as_type.loc8_15.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc8_15.2: type = converted %Self.ref.loc8_15, %Self.as_type.loc8_15.2 [symbolic = %Self.as_type.loc8_15.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @Op.1.%Self.as_type.loc8_15.1 (%Self.as_type.1) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %other.param: @Op.1.%Self.as_type.loc8_15.1 (%Self.as_type.1) = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc8_28.2: type = splice_block %.loc8_28.1 [symbolic = %Self.as_type.loc8_15.1 (constants.%Self.as_type.1)] {
|
||||
// CHECK:STDOUT: %.loc8_28.1: type = splice_block %.loc8_28.2 [symbolic = %Self.as_type.loc8_15.1 (constants.%Self.as_type.1)] {
|
||||
// CHECK:STDOUT: %Self.ref.loc8_28: %Add.type = name_ref Self, @Add.%Self [symbolic = %Self (constants.%Self.1)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc8_28: type = facet_access_type %Self.ref.loc8_28 [symbolic = %Self.as_type.loc8_15.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc8_28.1: type = converted %Self.ref.loc8_28, %Self.as_type.loc8_28 [symbolic = %Self.as_type.loc8_15.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc8_28.2: type = converted %Self.ref.loc8_28, %Self.as_type.loc8_28 [symbolic = %Self.as_type.loc8_15.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %other: @Op.1.%Self.as_type.loc8_15.1 (%Self.as_type.1) = bind_name other, %other.param
|
||||
// CHECK:STDOUT: %return.param: ref @Op.1.%Self.as_type.loc8_15.1 (%Self.as_type.1) = out_param runtime_param2
|
||||
@@ -270,11 +270,11 @@ var arr: [i32; (1 as i32) + (2 as i32)] = (3, 4, (3 as i32) + (4 as i32));
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %T.ref: type = name_ref T, @As.%T.loc11_14.1 [symbolic = %T (constants.%T)]
|
||||
// CHECK:STDOUT: %self.param: @Convert.1.%Self.as_type.loc12_20.1 (%Self.as_type.2) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc12_20.3: type = splice_block %.loc12_20.2 [symbolic = %Self.as_type.loc12_20.1 (constants.%Self.as_type.2)] {
|
||||
// CHECK:STDOUT: %.loc12_20.1: @Convert.1.%As.type (%As.type.2) = specific_constant @As.%Self.1, @As(constants.%T) [symbolic = %Self (constants.%Self.2)]
|
||||
// CHECK:STDOUT: %Self.ref: @Convert.1.%As.type (%As.type.2) = name_ref Self, %.loc12_20.1 [symbolic = %Self (constants.%Self.2)]
|
||||
// CHECK:STDOUT: %.loc12_20.1: type = splice_block %.loc12_20.3 [symbolic = %Self.as_type.loc12_20.1 (constants.%Self.as_type.2)] {
|
||||
// CHECK:STDOUT: %.loc12_20.2: @Convert.1.%As.type (%As.type.2) = specific_constant @As.%Self.1, @As(constants.%T) [symbolic = %Self (constants.%Self.2)]
|
||||
// CHECK:STDOUT: %Self.ref: @Convert.1.%As.type (%As.type.2) = name_ref Self, %.loc12_20.2 [symbolic = %Self (constants.%Self.2)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc12_20.2: type = facet_access_type %Self.ref [symbolic = %Self.as_type.loc12_20.1 (constants.%Self.as_type.2)]
|
||||
// CHECK:STDOUT: %.loc12_20.2: type = converted %Self.ref, %Self.as_type.loc12_20.2 [symbolic = %Self.as_type.loc12_20.1 (constants.%Self.as_type.2)]
|
||||
// CHECK:STDOUT: %.loc12_20.3: type = converted %Self.ref, %Self.as_type.loc12_20.2 [symbolic = %Self.as_type.loc12_20.1 (constants.%Self.as_type.2)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @Convert.1.%Self.as_type.loc12_20.1 (%Self.as_type.2) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %return.param: ref @Convert.1.%T (%T) = out_param runtime_param1
|
||||
@@ -311,11 +311,11 @@ var arr: [i32; (1 as i32) + (2 as i32)] = (3, 4, (3 as i32) + (4 as i32));
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %T.ref: type = name_ref T, @ImplicitAs.%T.loc15_22.1 [symbolic = %T (constants.%T)]
|
||||
// CHECK:STDOUT: %self.param: @Convert.2.%Self.as_type.loc16_20.1 (%Self.as_type.3) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc16_20.3: type = splice_block %.loc16_20.2 [symbolic = %Self.as_type.loc16_20.1 (constants.%Self.as_type.3)] {
|
||||
// CHECK:STDOUT: %.loc16_20.1: @Convert.2.%ImplicitAs.type (%ImplicitAs.type.2) = specific_constant @ImplicitAs.%Self.1, @ImplicitAs(constants.%T) [symbolic = %Self (constants.%Self.3)]
|
||||
// CHECK:STDOUT: %Self.ref: @Convert.2.%ImplicitAs.type (%ImplicitAs.type.2) = name_ref Self, %.loc16_20.1 [symbolic = %Self (constants.%Self.3)]
|
||||
// CHECK:STDOUT: %.loc16_20.1: type = splice_block %.loc16_20.3 [symbolic = %Self.as_type.loc16_20.1 (constants.%Self.as_type.3)] {
|
||||
// CHECK:STDOUT: %.loc16_20.2: @Convert.2.%ImplicitAs.type (%ImplicitAs.type.2) = specific_constant @ImplicitAs.%Self.1, @ImplicitAs(constants.%T) [symbolic = %Self (constants.%Self.3)]
|
||||
// CHECK:STDOUT: %Self.ref: @Convert.2.%ImplicitAs.type (%ImplicitAs.type.2) = name_ref Self, %.loc16_20.2 [symbolic = %Self (constants.%Self.3)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc16_20.2: type = facet_access_type %Self.ref [symbolic = %Self.as_type.loc16_20.1 (constants.%Self.as_type.3)]
|
||||
// CHECK:STDOUT: %.loc16_20.2: type = converted %Self.ref, %Self.as_type.loc16_20.2 [symbolic = %Self.as_type.loc16_20.1 (constants.%Self.as_type.3)]
|
||||
// CHECK:STDOUT: %.loc16_20.3: type = converted %Self.ref, %Self.as_type.loc16_20.2 [symbolic = %Self.as_type.loc16_20.1 (constants.%Self.as_type.3)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @Convert.2.%Self.as_type.loc16_20.1 (%Self.as_type.3) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %return.param: ref @Convert.2.%T (%T) = out_param runtime_param1
|
||||
|
||||
@@ -66,11 +66,11 @@ var arr: [i32; Core.AsIntLiteral(Core.TestAdd(Core.AsI32(1), Core.AsI32(2)))] =
|
||||
// CHECK:STDOUT: %return.param_patt: type = out_param_pattern %return.patt, runtime_param1
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %N.param: Core.IntLiteral = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc6_22.3: type = splice_block %.loc6_22.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc6_22.1: type = splice_block %.loc6_22.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, file.%IntLiteral.decl [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc6_22.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc6_22.2: type = converted %int_literal.make_type, %.loc6_22.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc6_22.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc6_22.3: type = converted %int_literal.make_type, %.loc6_22.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %N: Core.IntLiteral = bind_name N, %N.param
|
||||
// CHECK:STDOUT: %return.param: ref type = out_param runtime_param1
|
||||
@@ -87,11 +87,11 @@ var arr: [i32; Core.AsIntLiteral(Core.TestAdd(Core.AsI32(1), Core.AsI32(2)))] =
|
||||
// CHECK:STDOUT: %.loc8_30.1: type = value_of_initializer %int.make_type_signed [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc8_30.2: type = converted %int.make_type_signed, %.loc8_30.1 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %a.param: Core.IntLiteral = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc8_24.3: type = splice_block %.loc8_24.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc8_24.1: type = splice_block %.loc8_24.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, file.%IntLiteral.decl [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc8_24.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc8_24.2: type = converted %int_literal.make_type, %.loc8_24.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc8_24.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc8_24.3: type = converted %int_literal.make_type, %.loc8_24.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: Core.IntLiteral = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref %i32.builtin = out_param runtime_param1
|
||||
@@ -108,11 +108,11 @@ var arr: [i32; Core.AsIntLiteral(Core.TestAdd(Core.AsI32(1), Core.AsI32(2)))] =
|
||||
// CHECK:STDOUT: %.loc9_39.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc9_39.2: type = converted %int_literal.make_type, %.loc9_39.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %a.param: %i32.builtin = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc9_20.3: type = splice_block %.loc9_20.2 [template = constants.%i32.builtin] {
|
||||
// CHECK:STDOUT: %.loc9_20.1: type = splice_block %.loc9_20.3 [template = constants.%i32.builtin] {
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %int.make_type_signed: init type = call constants.%Int(%int_32) [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc9_20.1: type = value_of_initializer %int.make_type_signed [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc9_20.2: type = converted %int.make_type_signed, %.loc9_20.1 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc9_20.2: type = value_of_initializer %int.make_type_signed [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc9_20.3: type = converted %int.make_type_signed, %.loc9_20.2 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: %i32.builtin = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref Core.IntLiteral = out_param runtime_param1
|
||||
@@ -131,19 +131,19 @@ var arr: [i32; Core.AsIntLiteral(Core.TestAdd(Core.AsI32(1), Core.AsI32(2)))] =
|
||||
// CHECK:STDOUT: %.loc11_31.1: type = value_of_initializer %int.make_type_signed.loc11_31 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc11_31.2: type = converted %int.make_type_signed.loc11_31, %.loc11_31.1 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %a.param: %i32.builtin = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc11_15.3: type = splice_block %.loc11_15.2 [template = constants.%i32.builtin] {
|
||||
// CHECK:STDOUT: %.loc11_15.1: type = splice_block %.loc11_15.3 [template = constants.%i32.builtin] {
|
||||
// CHECK:STDOUT: %int_32.loc11_15: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %int.make_type_signed.loc11_15: init type = call constants.%Int(%int_32.loc11_15) [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc11_15.1: type = value_of_initializer %int.make_type_signed.loc11_15 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc11_15.2: type = converted %int.make_type_signed.loc11_15, %.loc11_15.1 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc11_15.2: type = value_of_initializer %int.make_type_signed.loc11_15 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc11_15.3: type = converted %int.make_type_signed.loc11_15, %.loc11_15.2 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: %i32.builtin = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: %i32.builtin = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc11_23.3: type = splice_block %.loc11_23.2 [template = constants.%i32.builtin] {
|
||||
// CHECK:STDOUT: %.loc11_23.1: type = splice_block %.loc11_23.3 [template = constants.%i32.builtin] {
|
||||
// CHECK:STDOUT: %int_32.loc11_23: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %int.make_type_signed.loc11_23: init type = call constants.%Int(%int_32.loc11_23) [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc11_23.1: type = value_of_initializer %int.make_type_signed.loc11_23 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc11_23.2: type = converted %int.make_type_signed.loc11_23, %.loc11_23.1 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc11_23.2: type = value_of_initializer %int.make_type_signed.loc11_23 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc11_23.3: type = converted %int.make_type_signed.loc11_23, %.loc11_23.2 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: %i32.builtin = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref %i32.builtin = out_param runtime_param2
|
||||
|
||||
@@ -41,9 +41,9 @@ fn Main() {
|
||||
// CHECK:STDOUT: %.loc11_20.1: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc11_20.2: type = converted %.loc11_20.1, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: %a.param: %empty_struct_type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc11_13.3: type = splice_block %.loc11_13.2 [template = constants.%empty_struct_type] {
|
||||
// CHECK:STDOUT: %.loc11_13.1: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc11_13.2: type = converted %.loc11_13.1, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: %.loc11_13.1: type = splice_block %.loc11_13.3 [template = constants.%empty_struct_type] {
|
||||
// CHECK:STDOUT: %.loc11_13.2: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc11_13.3: type = converted %.loc11_13.2, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: %empty_struct_type = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref %empty_struct_type = out_param runtime_param1
|
||||
|
||||
@@ -41,9 +41,9 @@ fn Main() {
|
||||
// CHECK:STDOUT: %.loc11_20.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc11_20.2: type = converted %.loc11_20.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %a.param: %empty_tuple.type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc11_13.3: type = splice_block %.loc11_13.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc11_13.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc11_13.2: type = converted %.loc11_13.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc11_13.1: type = splice_block %.loc11_13.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc11_13.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc11_13.3: type = converted %.loc11_13.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: %empty_tuple.type = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %return.param: ref %empty_tuple.type = out_param runtime_param1
|
||||
|
||||
+3
-3
@@ -38,9 +38,9 @@ fn Run() {
|
||||
// CHECK:STDOUT: %self.param_patt: %empty_tuple.type = value_param_pattern %self.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %self.param: %empty_tuple.type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc14_13.3: type = splice_block %.loc14_13.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc14_13.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc14_13.2: type = converted %.loc14_13.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc14_13.1: type = splice_block %.loc14_13.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc14_13.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc14_13.3: type = converted %.loc14_13.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: %empty_tuple.type = bind_name self, %self.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+12
-12
@@ -321,11 +321,11 @@ import library "extern_api";
|
||||
// CHECK:STDOUT: %i32.loc6_25: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %struct_type.c: type = struct_type {.c: %i32} [template = constants.%struct_type.c]
|
||||
// CHECK:STDOUT: %c.param: %tuple.type.2 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc6_14.3: type = splice_block %.loc6_14.2 [template = constants.%tuple.type.2] {
|
||||
// CHECK:STDOUT: %.loc6_14.1: type = splice_block %.loc6_14.3 [template = constants.%tuple.type.2] {
|
||||
// CHECK:STDOUT: %int_32.loc6_10: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32.loc6_10: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %.loc6_14.1: %tuple.type.1 = tuple_literal (%i32.loc6_10)
|
||||
// CHECK:STDOUT: %.loc6_14.2: type = converted %.loc6_14.1, constants.%tuple.type.2 [template = constants.%tuple.type.2]
|
||||
// CHECK:STDOUT: %.loc6_14.2: %tuple.type.1 = tuple_literal (%i32.loc6_10)
|
||||
// CHECK:STDOUT: %.loc6_14.3: type = converted %.loc6_14.2, constants.%tuple.type.2 [template = constants.%tuple.type.2]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %c: %tuple.type.2 = bind_name c, %c.param
|
||||
// CHECK:STDOUT: %return.param: ref %struct_type.c = out_param runtime_param1
|
||||
@@ -414,11 +414,11 @@ import library "extern_api";
|
||||
// CHECK:STDOUT: %i32.loc6_60: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %struct_type.c: type = struct_type {.c: %i32} [template = constants.%struct_type.c]
|
||||
// CHECK:STDOUT: %c.param: %tuple.type.2 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc6_49.3: type = splice_block %.loc6_49.2 [template = constants.%tuple.type.2] {
|
||||
// CHECK:STDOUT: %.loc6_49.1: type = splice_block %.loc6_49.3 [template = constants.%tuple.type.2] {
|
||||
// CHECK:STDOUT: %int_32.loc6_45: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32.loc6_45: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %.loc6_49.1: %tuple.type.1 = tuple_literal (%i32.loc6_45)
|
||||
// CHECK:STDOUT: %.loc6_49.2: type = converted %.loc6_49.1, constants.%tuple.type.2 [template = constants.%tuple.type.2]
|
||||
// CHECK:STDOUT: %.loc6_49.2: %tuple.type.1 = tuple_literal (%i32.loc6_45)
|
||||
// CHECK:STDOUT: %.loc6_49.3: type = converted %.loc6_49.2, constants.%tuple.type.2 [template = constants.%tuple.type.2]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %c: %tuple.type.2 = bind_name c, %c.param
|
||||
// CHECK:STDOUT: %return.param: ref %struct_type.c = out_param runtime_param1
|
||||
@@ -643,11 +643,11 @@ import library "extern_api";
|
||||
// CHECK:STDOUT: %i32.loc32_32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %struct_type.c: type = struct_type {.c: %i32} [template = constants.%struct_type.c]
|
||||
// CHECK:STDOUT: %c.param: %tuple.type.2 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc32_21.3: type = splice_block %.loc32_21.2 [template = constants.%tuple.type.2] {
|
||||
// CHECK:STDOUT: %.loc32_21.1: type = splice_block %.loc32_21.3 [template = constants.%tuple.type.2] {
|
||||
// CHECK:STDOUT: %int_32.loc32_17: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32.loc32_17: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %.loc32_21.1: %tuple.type.1 = tuple_literal (%i32.loc32_17)
|
||||
// CHECK:STDOUT: %.loc32_21.2: type = converted %.loc32_21.1, constants.%tuple.type.2 [template = constants.%tuple.type.2]
|
||||
// CHECK:STDOUT: %.loc32_21.2: %tuple.type.1 = tuple_literal (%i32.loc32_17)
|
||||
// CHECK:STDOUT: %.loc32_21.3: type = converted %.loc32_21.2, constants.%tuple.type.2 [template = constants.%tuple.type.2]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %c: %tuple.type.2 = bind_name c, %c.param
|
||||
// CHECK:STDOUT: %return.param: ref %struct_type.c = out_param runtime_param1
|
||||
@@ -793,11 +793,11 @@ import library "extern_api";
|
||||
// CHECK:STDOUT: %i32.loc8_32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %struct_type.c: type = struct_type {.c: %i32} [template = constants.%struct_type.c]
|
||||
// CHECK:STDOUT: %c.param: %tuple.type.2 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc8_21.3: type = splice_block %.loc8_21.2 [template = constants.%tuple.type.2] {
|
||||
// CHECK:STDOUT: %.loc8_21.1: type = splice_block %.loc8_21.3 [template = constants.%tuple.type.2] {
|
||||
// CHECK:STDOUT: %int_32.loc8_17: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32.loc8_17: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %.loc8_21.1: %tuple.type.1 = tuple_literal (%i32.loc8_17)
|
||||
// CHECK:STDOUT: %.loc8_21.2: type = converted %.loc8_21.1, constants.%tuple.type.2 [template = constants.%tuple.type.2]
|
||||
// CHECK:STDOUT: %.loc8_21.2: %tuple.type.1 = tuple_literal (%i32.loc8_17)
|
||||
// CHECK:STDOUT: %.loc8_21.3: type = converted %.loc8_21.2, constants.%tuple.type.2 [template = constants.%tuple.type.2]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %c: %tuple.type.2 = bind_name c, %c.param
|
||||
// CHECK:STDOUT: %return.param: ref %struct_type.c = out_param runtime_param1
|
||||
|
||||
+9
-9
@@ -90,9 +90,9 @@ fn E() {}
|
||||
// CHECK:STDOUT: %x.param_patt: %empty_tuple.type = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param.loc21: %empty_tuple.type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc21_10.3: type = splice_block %.loc21_10.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc21_10.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc21_10.2: type = converted %.loc21_10.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc21_10.1: type = splice_block %.loc21_10.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc21_10.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc21_10.3: type = converted %.loc21_10.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x.loc21: %empty_tuple.type = bind_name x, %x.param.loc21
|
||||
// CHECK:STDOUT: }
|
||||
@@ -101,9 +101,9 @@ fn E() {}
|
||||
// CHECK:STDOUT: %x.param_patt: %empty_tuple.type = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param.loc29: %empty_tuple.type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc29_10.3: type = splice_block %.loc29_10.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc29_10.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc29_10.2: type = converted %.loc29_10.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc29_10.1: type = splice_block %.loc29_10.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc29_10.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc29_10.3: type = converted %.loc29_10.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x.loc29: %empty_tuple.type = bind_name x, %x.param.loc29
|
||||
// CHECK:STDOUT: }
|
||||
@@ -113,9 +113,9 @@ fn E() {}
|
||||
// CHECK:STDOUT: %x.param_patt: %empty_tuple.type = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param: %empty_tuple.type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc39_10.3: type = splice_block %.loc39_10.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc39_10.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc39_10.2: type = converted %.loc39_10.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc39_10.1: type = splice_block %.loc39_10.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc39_10.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc39_10.3: type = converted %.loc39_10.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: %empty_tuple.type = bind_name x, %x.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
@@ -173,11 +173,11 @@ fn D() {}
|
||||
// CHECK:STDOUT: %i32.loc6_25: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %struct_type.c: type = struct_type {.c: %i32} [template = constants.%struct_type.c]
|
||||
// CHECK:STDOUT: %c.param: %tuple.type.2 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc6_14.3: type = splice_block %.loc6_14.2 [template = constants.%tuple.type.2] {
|
||||
// CHECK:STDOUT: %.loc6_14.1: type = splice_block %.loc6_14.3 [template = constants.%tuple.type.2] {
|
||||
// CHECK:STDOUT: %int_32.loc6_10: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32.loc6_10: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %.loc6_14.1: %tuple.type.1 = tuple_literal (%i32.loc6_10)
|
||||
// CHECK:STDOUT: %.loc6_14.2: type = converted %.loc6_14.1, constants.%tuple.type.2 [template = constants.%tuple.type.2]
|
||||
// CHECK:STDOUT: %.loc6_14.2: %tuple.type.1 = tuple_literal (%i32.loc6_10)
|
||||
// CHECK:STDOUT: %.loc6_14.3: type = converted %.loc6_14.2, constants.%tuple.type.2 [template = constants.%tuple.type.2]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %c: %tuple.type.2 = bind_name c, %c.param
|
||||
// CHECK:STDOUT: %return.param: ref %struct_type.c = out_param runtime_param1
|
||||
|
||||
+9
-9
@@ -112,9 +112,9 @@ fn K() -> {} { return {}; }
|
||||
// CHECK:STDOUT: %x.param_patt: %empty_tuple.type = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param: %empty_tuple.type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc19_10.3: type = splice_block %.loc19_10.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc19_10.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc19_10.2: type = converted %.loc19_10.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc19_10.1: type = splice_block %.loc19_10.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc19_10.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc19_10.3: type = converted %.loc19_10.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: %empty_tuple.type = bind_name x, %x.param
|
||||
// CHECK:STDOUT: }
|
||||
@@ -123,9 +123,9 @@ fn K() -> {} { return {}; }
|
||||
// CHECK:STDOUT: %x.param_patt: %empty_tuple.type = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param: %empty_tuple.type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc21_10.3: type = splice_block %.loc21_10.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc21_10.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc21_10.2: type = converted %.loc21_10.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc21_10.1: type = splice_block %.loc21_10.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc21_10.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc21_10.3: type = converted %.loc21_10.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: %empty_tuple.type = bind_name x, %x.param
|
||||
// CHECK:STDOUT: }
|
||||
@@ -135,9 +135,9 @@ fn K() -> {} { return {}; }
|
||||
// CHECK:STDOUT: %x.param_patt: %empty_tuple.type = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param: %empty_tuple.type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc31_10.3: type = splice_block %.loc31_10.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc31_10.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc31_10.2: type = converted %.loc31_10.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc31_10.1: type = splice_block %.loc31_10.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc31_10.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc31_10.3: type = converted %.loc31_10.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: %empty_tuple.type = bind_name x, %x.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+3
-3
@@ -820,12 +820,12 @@ fn CallImplicitNotDeducible() {
|
||||
// CHECK:STDOUT: %T.param: type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %T.loc4_15.1: type = bind_symbolic_name T, 0, %T.param [symbolic = %T.loc4_15.2 (constants.%T)]
|
||||
// CHECK:STDOUT: %x.param: @TupleParam.%tuple.type (%tuple.type.2) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc4_35.3: type = splice_block %.loc4_35.2 [symbolic = %tuple.type (constants.%tuple.type.2)] {
|
||||
// CHECK:STDOUT: %.loc4_35.1: type = splice_block %.loc4_35.3 [symbolic = %tuple.type (constants.%tuple.type.2)] {
|
||||
// CHECK:STDOUT: %T.ref: type = name_ref T, %T.loc4_15.1 [symbolic = %T.loc4_15.2 (constants.%T)]
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %.loc4_35.1: %tuple.type.1 = tuple_literal (%T.ref, %i32)
|
||||
// CHECK:STDOUT: %.loc4_35.2: type = converted %.loc4_35.1, constants.%tuple.type.2 [symbolic = %tuple.type (constants.%tuple.type.2)]
|
||||
// CHECK:STDOUT: %.loc4_35.2: %tuple.type.1 = tuple_literal (%T.ref, %i32)
|
||||
// CHECK:STDOUT: %.loc4_35.3: type = converted %.loc4_35.2, constants.%tuple.type.2 [symbolic = %tuple.type (constants.%tuple.type.2)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: @TupleParam.%tuple.type (%tuple.type.2) = bind_name x, %x.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
@@ -75,12 +75,12 @@ fn CallNegative() {
|
||||
// CHECK:STDOUT: %N.param_patt: Core.IntLiteral = value_param_pattern %N.patt.loc4_19.1, runtime_param<invalid> [symbolic = %N.patt.loc4_19.2 (constants.%N.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %N.param: Core.IntLiteral = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc4_39.3: type = splice_block %.loc4_39.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc4_39.1: type = splice_block %.loc4_39.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %Core.ref: <namespace> = name_ref Core, imports.%Core [template = imports.%Core]
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, imports.%import_ref.1 [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc4_39.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc4_39.2: type = converted %int_literal.make_type, %.loc4_39.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc4_39.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc4_39.3: type = converted %int_literal.make_type, %.loc4_39.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %N.loc4_19.1: Core.IntLiteral = bind_symbolic_name N, 0, %N.param [symbolic = %N.loc4_19.2 (constants.%N)]
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+3
-3
@@ -62,10 +62,10 @@ fn If(b: bool) {
|
||||
// CHECK:STDOUT: %b.param_patt: bool = value_param_pattern %b.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc15_10.3: type = splice_block %.loc15_10.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc15_10.1: type = splice_block %.loc15_10.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc15_10.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc15_10.2: type = converted %bool.make_type, %.loc15_10.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc15_10.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc15_10.3: type = converted %bool.make_type, %.loc15_10.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
@@ -93,10 +93,10 @@ fn If3(b: bool) -> i32 {
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc11_11.3: type = splice_block %.loc11_11.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc11_11.1: type = splice_block %.loc11_11.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_11.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_11.2: type = converted %bool.make_type, %.loc11_11.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_11.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_11.3: type = converted %bool.make_type, %.loc11_11.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref %i32 = out_param runtime_param1
|
||||
@@ -111,10 +111,10 @@ fn If3(b: bool) -> i32 {
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc22_11.3: type = splice_block %.loc22_11.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc22_11.1: type = splice_block %.loc22_11.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc22_11.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc22_11.2: type = converted %bool.make_type, %.loc22_11.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc22_11.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc22_11.3: type = converted %bool.make_type, %.loc22_11.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref %i32 = out_param runtime_param1
|
||||
@@ -129,10 +129,10 @@ fn If3(b: bool) -> i32 {
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc33_11.3: type = splice_block %.loc33_11.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc33_11.1: type = splice_block %.loc33_11.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc33_11.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc33_11.2: type = converted %bool.make_type, %.loc33_11.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc33_11.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc33_11.3: type = converted %bool.make_type, %.loc33_11.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref %i32 = out_param runtime_param1
|
||||
|
||||
+3
-3
@@ -63,10 +63,10 @@ fn VarScope(b: bool) -> i32 {
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc11_16.3: type = splice_block %.loc11_16.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc11_16.1: type = splice_block %.loc11_16.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_16.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_16.2: type = converted %bool.make_type, %.loc11_16.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_16.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_16.3: type = converted %bool.make_type, %.loc11_16.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref %i32 = out_param runtime_param1
|
||||
|
||||
+3
-3
@@ -55,10 +55,10 @@ fn If(b: bool) {
|
||||
// CHECK:STDOUT: %b.param_patt: bool = value_param_pattern %b.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc14_10.3: type = splice_block %.loc14_10.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc14_10.1: type = splice_block %.loc14_10.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc14_10.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc14_10.2: type = converted %bool.make_type, %.loc14_10.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc14_10.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc14_10.3: type = converted %bool.make_type, %.loc14_10.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
@@ -65,10 +65,10 @@ fn If(b: bool) -> i32 {
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc11_10.3: type = splice_block %.loc11_10.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc11_10.1: type = splice_block %.loc11_10.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_10.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_10.2: type = converted %bool.make_type, %.loc11_10.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_10.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_10.3: type = converted %bool.make_type, %.loc11_10.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref %i32 = out_param runtime_param1
|
||||
|
||||
+3
-3
@@ -65,10 +65,10 @@ fn F(b: bool, n: i32, m: i32) -> i32 {
|
||||
// CHECK:STDOUT: %int_32.loc11_34: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32.loc11_34: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc11_9.3: type = splice_block %.loc11_9.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc11_9.1: type = splice_block %.loc11_9.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_9.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_9.2: type = converted %bool.make_type, %.loc11_9.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_9.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_9.3: type = converted %bool.make_type, %.loc11_9.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %n.param: %i32 = value_param runtime_param1
|
||||
|
||||
+3
-3
@@ -87,10 +87,10 @@ fn F(b: bool) -> i32 {
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc14_9.3: type = splice_block %.loc14_9.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc14_9.1: type = splice_block %.loc14_9.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc14_9.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc14_9.2: type = converted %bool.make_type, %.loc14_9.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc14_9.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc14_9.3: type = converted %bool.make_type, %.loc14_9.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref %i32 = out_param runtime_param1
|
||||
|
||||
@@ -69,10 +69,10 @@ fn ChosenBranchIsNonConstant(t: type) {
|
||||
// CHECK:STDOUT: %b.param_patt: bool = value_param_pattern %b.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc4_30.3: type = splice_block %.loc4_30.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc4_30.1: type = splice_block %.loc4_30.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_30.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_30.2: type = converted %bool.make_type, %.loc4_30.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_30.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_30.3: type = converted %bool.make_type, %.loc4_30.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+9
-9
@@ -72,24 +72,24 @@ fn F(a: bool, b: bool, c: bool) -> i32 {
|
||||
// CHECK:STDOUT: %int_32.loc11: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32.loc11: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %a.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc11_9.3: type = splice_block %.loc11_9.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc11_9.1: type = splice_block %.loc11_9.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc11_9: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_9.1: type = value_of_initializer %bool.make_type.loc11_9 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_9.2: type = converted %bool.make_type.loc11_9, %.loc11_9.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_9.2: type = value_of_initializer %bool.make_type.loc11_9 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_9.3: type = converted %bool.make_type.loc11_9, %.loc11_9.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: bool = bind_name a, %a.param
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc11_18.3: type = splice_block %.loc11_18.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc11_18.1: type = splice_block %.loc11_18.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc11_18: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_18.1: type = value_of_initializer %bool.make_type.loc11_18 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_18.2: type = converted %bool.make_type.loc11_18, %.loc11_18.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_18.2: type = value_of_initializer %bool.make_type.loc11_18 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_18.3: type = converted %bool.make_type.loc11_18, %.loc11_18.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %c.param: bool = value_param runtime_param2
|
||||
// CHECK:STDOUT: %.loc11_27.3: type = splice_block %.loc11_27.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc11_27.1: type = splice_block %.loc11_27.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc11_27: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_27.1: type = value_of_initializer %bool.make_type.loc11_27 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_27.2: type = converted %bool.make_type.loc11_27, %.loc11_27.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_27.2: type = value_of_initializer %bool.make_type.loc11_27 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_27.3: type = converted %bool.make_type.loc11_27, %.loc11_27.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %c: bool = bind_name c, %c.param
|
||||
// CHECK:STDOUT: %return.param: ref %i32 = out_param runtime_param3
|
||||
|
||||
+3
-3
@@ -80,10 +80,10 @@ fn F(cond: bool) {
|
||||
// CHECK:STDOUT: %cond.param_patt: bool = value_param_pattern %cond.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %cond.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc13_12.3: type = splice_block %.loc13_12.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc13_12.1: type = splice_block %.loc13_12.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc13_12.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc13_12.2: type = converted %bool.make_type, %.loc13_12.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc13_12.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc13_12.3: type = converted %bool.make_type, %.loc13_12.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %cond: bool = bind_name cond, %cond.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+2
-2
@@ -149,10 +149,10 @@ fn InstanceCallIndirect(p: i32*) {
|
||||
// CHECK:STDOUT: %self.param_patt: @G.1.%Self.as_type.loc13_14.1 (%Self.as_type.1) = value_param_pattern %self.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %self.param: @G.1.%Self.as_type.loc13_14.1 (%Self.as_type.1) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc13_14.2: type = splice_block %.loc13_14.1 [symbolic = %Self.as_type.loc13_14.1 (constants.%Self.as_type.1)] {
|
||||
// CHECK:STDOUT: %.loc13_14.1: type = splice_block %.loc13_14.2 [symbolic = %Self.as_type.loc13_14.1 (constants.%Self.as_type.1)] {
|
||||
// CHECK:STDOUT: %Self.ref: %Simple.type = name_ref Self, @Simple.%Self [symbolic = %Self (constants.%Self.1)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc13_14.2: type = facet_access_type %Self.ref [symbolic = %Self.as_type.loc13_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc13_14.1: type = converted %Self.ref, %Self.as_type.loc13_14.2 [symbolic = %Self.as_type.loc13_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc13_14.2: type = converted %Self.ref, %Self.as_type.loc13_14.2 [symbolic = %Self.as_type.loc13_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @G.1.%Self.as_type.loc13_14.1 (%Self.as_type.1) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
@@ -366,11 +366,11 @@ class X(U:! type) {
|
||||
// CHECK:STDOUT: %t.param_patt: @F.1.%T (%T) = value_param_pattern %t.patt, runtime_param1
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %self.param: @F.1.%Self.as_type.loc5_14.1 (%Self.as_type) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc5_14.3: type = splice_block %.loc5_14.2 [symbolic = %Self.as_type.loc5_14.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc5_14.1: @F.1.%I.type (%I.type.2) = specific_constant @I.%Self.1, @I(constants.%T) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.ref: @F.1.%I.type (%I.type.2) = name_ref Self, %.loc5_14.1 [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %.loc5_14.1: type = splice_block %.loc5_14.3 [symbolic = %Self.as_type.loc5_14.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc5_14.2: @F.1.%I.type (%I.type.2) = specific_constant @I.%Self.1, @I(constants.%T) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.ref: @F.1.%I.type (%I.type.2) = name_ref Self, %.loc5_14.2 [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc5_14.2: type = facet_access_type %Self.ref [symbolic = %Self.as_type.loc5_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_14.2: type = converted %Self.ref, %Self.as_type.loc5_14.2 [symbolic = %Self.as_type.loc5_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_14.3: type = converted %Self.ref, %Self.as_type.loc5_14.2 [symbolic = %Self.as_type.loc5_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @F.1.%Self.as_type.loc5_14.1 (%Self.as_type) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %t.param: @F.1.%T (%T) = value_param runtime_param1
|
||||
@@ -405,9 +405,9 @@ class X(U:! type) {
|
||||
// CHECK:STDOUT: %t.param_patt: @F.2.%U (%U) = value_param_pattern %t.patt, runtime_param1
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %self.param: @F.2.%X (%X) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc10_16.2: type = splice_block %Self.ref [symbolic = %X (constants.%X)] {
|
||||
// CHECK:STDOUT: %.loc10_16.1: type = specific_constant constants.%X, @X(constants.%U) [symbolic = %X (constants.%X)]
|
||||
// CHECK:STDOUT: %Self.ref: type = name_ref Self, %.loc10_16.1 [symbolic = %X (constants.%X)]
|
||||
// CHECK:STDOUT: %.loc10_16.1: type = splice_block %Self.ref [symbolic = %X (constants.%X)] {
|
||||
// CHECK:STDOUT: %.loc10_16.2: type = specific_constant constants.%X, @X(constants.%U) [symbolic = %X (constants.%X)]
|
||||
// CHECK:STDOUT: %Self.ref: type = name_ref Self, %.loc10_16.2 [symbolic = %X (constants.%X)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @F.2.%X (%X) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %t.param: @F.2.%U (%U) = value_param runtime_param1
|
||||
|
||||
+2
-2
@@ -83,10 +83,10 @@ fn InstanceCall(n: i32) {
|
||||
// CHECK:STDOUT: %self.param_patt: @G.1.%Self.as_type.loc12_14.1 (%Self.as_type.1) = value_param_pattern %self.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %self.param: @G.1.%Self.as_type.loc12_14.1 (%Self.as_type.1) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc12_14.2: type = splice_block %.loc12_14.1 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)] {
|
||||
// CHECK:STDOUT: %.loc12_14.1: type = splice_block %.loc12_14.2 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)] {
|
||||
// CHECK:STDOUT: %Self.ref: %Simple.type = name_ref Self, @Simple.%Self [symbolic = %Self (constants.%Self.1)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc12_14.2: type = facet_access_type %Self.ref [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc12_14.1: type = converted %Self.ref, %Self.as_type.loc12_14.2 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc12_14.2: type = converted %Self.ref, %Self.as_type.loc12_14.2 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @G.1.%Self.as_type.loc12_14.1 (%Self.as_type.1) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+48
-48
@@ -392,17 +392,17 @@ class SelfNestedBadReturnType {
|
||||
// CHECK:STDOUT: %.loc93_44.1: type = value_of_initializer %bool.make_type.loc93_44 [template = bool]
|
||||
// CHECK:STDOUT: %.loc93_44.2: type = converted %bool.make_type.loc93_44, %.loc93_44.1 [template = bool]
|
||||
// CHECK:STDOUT: %self.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc93_26.3: type = splice_block %.loc93_26.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc93_26.1: type = splice_block %.loc93_26.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc93_26: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc93_26.1: type = value_of_initializer %bool.make_type.loc93_26 [template = bool]
|
||||
// CHECK:STDOUT: %.loc93_26.2: type = converted %bool.make_type.loc93_26, %.loc93_26.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc93_26.2: type = value_of_initializer %bool.make_type.loc93_26 [template = bool]
|
||||
// CHECK:STDOUT: %.loc93_26.3: type = converted %bool.make_type.loc93_26, %.loc93_26.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: bool = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc93_35.3: type = splice_block %.loc93_35.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc93_35.1: type = splice_block %.loc93_35.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc93_35: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc93_35.1: type = value_of_initializer %bool.make_type.loc93_35 [template = bool]
|
||||
// CHECK:STDOUT: %.loc93_35.2: type = converted %bool.make_type.loc93_35, %.loc93_35.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc93_35.2: type = value_of_initializer %bool.make_type.loc93_35 [template = bool]
|
||||
// CHECK:STDOUT: %.loc93_35.3: type = converted %bool.make_type.loc93_35, %.loc93_35.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
@@ -430,7 +430,7 @@ class SelfNestedBadReturnType {
|
||||
// CHECK:STDOUT: %.loc188_45: type = converted %Self.ref.loc188_45, %Self.as_type.loc188_45 [symbolic = %Self.as_type.loc188_16.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %array_type.loc188_52.2: type = array_type %int_4, %Self.as_type [symbolic = %array_type.loc188_52.1 (constants.%array_type.1)]
|
||||
// CHECK:STDOUT: %x.param: @F.13.%tuple.type (%tuple.type.2) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc188_38.3: type = splice_block %.loc188_38.2 [symbolic = %tuple.type (constants.%tuple.type.2)] {
|
||||
// CHECK:STDOUT: %.loc188_38.1: type = splice_block %.loc188_38.3 [symbolic = %tuple.type (constants.%tuple.type.2)] {
|
||||
// CHECK:STDOUT: %Self.ref.loc188_12: %SelfNested.type = name_ref Self, @SelfNested.%Self [symbolic = %Self (constants.%Self.3)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc188_16.2: type = facet_access_type %Self.ref.loc188_12 [symbolic = %Self.as_type.loc188_16.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc188_16: type = converted %Self.ref.loc188_12, %Self.as_type.loc188_16.2 [symbolic = %Self.as_type.loc188_16.1 (constants.%Self.as_type)]
|
||||
@@ -441,8 +441,8 @@ class SelfNestedBadReturnType {
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %struct_type.x.y.loc188_37.2: type = struct_type {.x: %Self.as_type, .y: %i32} [symbolic = %struct_type.x.y.loc188_37.1 (constants.%struct_type.x.y.1)]
|
||||
// CHECK:STDOUT: %.loc188_38.1: %tuple.type.1 = tuple_literal (%ptr.loc188_16.2, %struct_type.x.y.loc188_37.2)
|
||||
// CHECK:STDOUT: %.loc188_38.2: type = converted %.loc188_38.1, constants.%tuple.type.2 [symbolic = %tuple.type (constants.%tuple.type.2)]
|
||||
// CHECK:STDOUT: %.loc188_38.2: %tuple.type.1 = tuple_literal (%ptr.loc188_16.2, %struct_type.x.y.loc188_37.2)
|
||||
// CHECK:STDOUT: %.loc188_38.3: type = converted %.loc188_38.2, constants.%tuple.type.2 [symbolic = %tuple.type (constants.%tuple.type.2)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: @F.13.%tuple.type (%tuple.type.2) = bind_name x, %x.param
|
||||
// CHECK:STDOUT: %return.param: ref @F.13.%array_type.loc188_52.1 (%array_type.1) = out_param runtime_param1
|
||||
@@ -488,10 +488,10 @@ class SelfNestedBadReturnType {
|
||||
// CHECK:STDOUT: %b.param_patt: bool = value_param_pattern %b.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc62_13.3: type = splice_block %.loc62_13.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc62_13.1: type = splice_block %.loc62_13.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc62_13.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc62_13.2: type = converted %bool.make_type, %.loc62_13.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc62_13.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc62_13.3: type = converted %bool.make_type, %.loc62_13.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: }
|
||||
@@ -547,10 +547,10 @@ class SelfNestedBadReturnType {
|
||||
// CHECK:STDOUT: %.loc104_27.1: type = value_of_initializer %bool.make_type.loc104_27 [template = bool]
|
||||
// CHECK:STDOUT: %.loc104_27.2: type = converted %bool.make_type.loc104_27, %.loc104_27.1 [template = bool]
|
||||
// CHECK:STDOUT: %self.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc104_16.3: type = splice_block %.loc104_16.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc104_16.1: type = splice_block %.loc104_16.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc104_16: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc104_16.1: type = value_of_initializer %bool.make_type.loc104_16 [template = bool]
|
||||
// CHECK:STDOUT: %.loc104_16.2: type = converted %bool.make_type.loc104_16, %.loc104_16.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc104_16.2: type = value_of_initializer %bool.make_type.loc104_16 [template = bool]
|
||||
// CHECK:STDOUT: %.loc104_16.3: type = converted %bool.make_type.loc104_16, %.loc104_16.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: bool = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param1
|
||||
@@ -574,10 +574,10 @@ class SelfNestedBadReturnType {
|
||||
// CHECK:STDOUT: %.loc117_22.1: type = value_of_initializer %bool.make_type.loc117_22 [template = bool]
|
||||
// CHECK:STDOUT: %.loc117_22.2: type = converted %bool.make_type.loc117_22, %.loc117_22.1 [template = bool]
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc117_13.3: type = splice_block %.loc117_13.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc117_13.1: type = splice_block %.loc117_13.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc117_13: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc117_13.1: type = value_of_initializer %bool.make_type.loc117_13 [template = bool]
|
||||
// CHECK:STDOUT: %.loc117_13.2: type = converted %bool.make_type.loc117_13, %.loc117_13.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc117_13.2: type = value_of_initializer %bool.make_type.loc117_13 [template = bool]
|
||||
// CHECK:STDOUT: %.loc117_13.3: type = converted %bool.make_type.loc117_13, %.loc117_13.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param1
|
||||
@@ -598,17 +598,17 @@ class SelfNestedBadReturnType {
|
||||
// CHECK:STDOUT: %b.param_patt: bool = value_param_pattern %b.patt, runtime_param1
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %self.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc130_16.3: type = splice_block %.loc130_16.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc130_16.1: type = splice_block %.loc130_16.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc130_16: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc130_16.1: type = value_of_initializer %bool.make_type.loc130_16 [template = bool]
|
||||
// CHECK:STDOUT: %.loc130_16.2: type = converted %bool.make_type.loc130_16, %.loc130_16.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc130_16.2: type = value_of_initializer %bool.make_type.loc130_16 [template = bool]
|
||||
// CHECK:STDOUT: %.loc130_16.3: type = converted %bool.make_type.loc130_16, %.loc130_16.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: bool = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc130_25.3: type = splice_block %.loc130_25.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc130_25.1: type = splice_block %.loc130_25.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc130_25: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc130_25.1: type = value_of_initializer %bool.make_type.loc130_25 [template = bool]
|
||||
// CHECK:STDOUT: %.loc130_25.2: type = converted %bool.make_type.loc130_25, %.loc130_25.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc130_25.2: type = value_of_initializer %bool.make_type.loc130_25 [template = bool]
|
||||
// CHECK:STDOUT: %.loc130_25.3: type = converted %bool.make_type.loc130_25, %.loc130_25.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: }
|
||||
@@ -632,10 +632,10 @@ class SelfNestedBadReturnType {
|
||||
// CHECK:STDOUT: %.loc143_34.1: type = value_of_initializer %bool.make_type.loc143_34 [template = bool]
|
||||
// CHECK:STDOUT: %.loc143_34.2: type = converted %bool.make_type.loc143_34, %.loc143_34.1 [template = bool]
|
||||
// CHECK:STDOUT: %self.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc143_16.3: type = splice_block %.loc143_16.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc143_16.1: type = splice_block %.loc143_16.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc143_16: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc143_16.1: type = value_of_initializer %bool.make_type.loc143_16 [template = bool]
|
||||
// CHECK:STDOUT: %.loc143_16.2: type = converted %bool.make_type.loc143_16, %.loc143_16.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc143_16.2: type = value_of_initializer %bool.make_type.loc143_16 [template = bool]
|
||||
// CHECK:STDOUT: %.loc143_16.3: type = converted %bool.make_type.loc143_16, %.loc143_16.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: bool = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %b.param: %FDifferentParamType = value_param runtime_param1
|
||||
@@ -667,10 +667,10 @@ class SelfNestedBadReturnType {
|
||||
// CHECK:STDOUT: %Self.ref: type = name_ref Self, constants.%FDifferentImplicitParamType [template = constants.%FDifferentImplicitParamType]
|
||||
// CHECK:STDOUT: %self: %FDifferentImplicitParamType = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc156_25.3: type = splice_block %.loc156_25.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc156_25.1: type = splice_block %.loc156_25.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc156_25: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc156_25.1: type = value_of_initializer %bool.make_type.loc156_25 [template = bool]
|
||||
// CHECK:STDOUT: %.loc156_25.2: type = converted %bool.make_type.loc156_25, %.loc156_25.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc156_25.2: type = value_of_initializer %bool.make_type.loc156_25 [template = bool]
|
||||
// CHECK:STDOUT: %.loc156_25.3: type = converted %bool.make_type.loc156_25, %.loc156_25.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
@@ -694,17 +694,17 @@ class SelfNestedBadReturnType {
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %Self.ref: type = name_ref Self, constants.%FDifferentReturnType [template = constants.%FDifferentReturnType]
|
||||
// CHECK:STDOUT: %self.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc169_16.3: type = splice_block %.loc169_16.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc169_16.1: type = splice_block %.loc169_16.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc169_16: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc169_16.1: type = value_of_initializer %bool.make_type.loc169_16 [template = bool]
|
||||
// CHECK:STDOUT: %.loc169_16.2: type = converted %bool.make_type.loc169_16, %.loc169_16.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc169_16.2: type = value_of_initializer %bool.make_type.loc169_16 [template = bool]
|
||||
// CHECK:STDOUT: %.loc169_16.3: type = converted %bool.make_type.loc169_16, %.loc169_16.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: bool = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc169_25.3: type = splice_block %.loc169_25.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc169_25.1: type = splice_block %.loc169_25.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc169_25: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc169_25.1: type = value_of_initializer %bool.make_type.loc169_25 [template = bool]
|
||||
// CHECK:STDOUT: %.loc169_25.2: type = converted %bool.make_type.loc169_25, %.loc169_25.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc169_25.2: type = value_of_initializer %bool.make_type.loc169_25 [template = bool]
|
||||
// CHECK:STDOUT: %.loc169_25.3: type = converted %bool.make_type.loc169_25, %.loc169_25.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref %FDifferentReturnType = out_param runtime_param2
|
||||
@@ -730,17 +730,17 @@ class SelfNestedBadReturnType {
|
||||
// CHECK:STDOUT: %.loc183_38.1: type = value_of_initializer %bool.make_type.loc183_38 [template = bool]
|
||||
// CHECK:STDOUT: %.loc183_38.2: type = converted %bool.make_type.loc183_38, %.loc183_38.1 [template = bool]
|
||||
// CHECK:STDOUT: %self.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc183_16.3: type = splice_block %.loc183_16.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc183_16.1: type = splice_block %.loc183_16.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc183_16: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc183_16.1: type = value_of_initializer %bool.make_type.loc183_16 [template = bool]
|
||||
// CHECK:STDOUT: %.loc183_16.2: type = converted %bool.make_type.loc183_16, %.loc183_16.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc183_16.2: type = value_of_initializer %bool.make_type.loc183_16 [template = bool]
|
||||
// CHECK:STDOUT: %.loc183_16.3: type = converted %bool.make_type.loc183_16, %.loc183_16.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: bool = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %not_b.param: bool = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc183_29.3: type = splice_block %.loc183_29.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc183_29.1: type = splice_block %.loc183_29.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc183_29: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc183_29.1: type = value_of_initializer %bool.make_type.loc183_29 [template = bool]
|
||||
// CHECK:STDOUT: %.loc183_29.2: type = converted %bool.make_type.loc183_29, %.loc183_29.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc183_29.2: type = value_of_initializer %bool.make_type.loc183_29 [template = bool]
|
||||
// CHECK:STDOUT: %.loc183_29.3: type = converted %bool.make_type.loc183_29, %.loc183_29.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %not_b: bool = bind_name not_b, %not_b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param2
|
||||
@@ -764,7 +764,7 @@ class SelfNestedBadReturnType {
|
||||
// CHECK:STDOUT: %int_4: Core.IntLiteral = int_value 4 [template = constants.%int_4]
|
||||
// CHECK:STDOUT: %array_type: type = array_type %int_4, %SelfNestedBadParam [template = constants.%array_type.2]
|
||||
// CHECK:STDOUT: %x.param: %tuple.type.3 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc200_53.3: type = splice_block %.loc200_53.2 [template = constants.%tuple.type.3] {
|
||||
// CHECK:STDOUT: %.loc200_53.1: type = splice_block %.loc200_53.3 [template = constants.%tuple.type.3] {
|
||||
// CHECK:STDOUT: %SelfNestedBadParam.ref.loc200_14: type = name_ref SelfNestedBadParam, file.%SelfNestedBadParam.decl [template = constants.%SelfNestedBadParam]
|
||||
// CHECK:STDOUT: %ptr: type = ptr_type %SelfNestedBadParam [template = constants.%ptr.2]
|
||||
// CHECK:STDOUT: %int_32.loc200_40: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
@@ -772,8 +772,8 @@ class SelfNestedBadReturnType {
|
||||
// CHECK:STDOUT: %int_32.loc200_49: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32.loc200_49: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %struct_type.x.y: type = struct_type {.x: %i32, .y: %i32} [template = constants.%struct_type.x.y.2]
|
||||
// CHECK:STDOUT: %.loc200_53.1: %tuple.type.1 = tuple_literal (%ptr, %struct_type.x.y)
|
||||
// CHECK:STDOUT: %.loc200_53.2: type = converted %.loc200_53.1, constants.%tuple.type.3 [template = constants.%tuple.type.3]
|
||||
// CHECK:STDOUT: %.loc200_53.2: %tuple.type.1 = tuple_literal (%ptr, %struct_type.x.y)
|
||||
// CHECK:STDOUT: %.loc200_53.3: type = converted %.loc200_53.2, constants.%tuple.type.3 [template = constants.%tuple.type.3]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: %tuple.type.3 = bind_name x, %x.param
|
||||
// CHECK:STDOUT: %return.param: ref %array_type.2 = out_param runtime_param1
|
||||
@@ -797,15 +797,15 @@ class SelfNestedBadReturnType {
|
||||
// CHECK:STDOUT: %int_4: Core.IntLiteral = int_value 4 [template = constants.%int_4]
|
||||
// CHECK:STDOUT: %array_type: type = array_type %int_4, %SelfNestedBadParam [template = constants.%array_type.2]
|
||||
// CHECK:STDOUT: %x.param: %tuple.type.5 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc212_78.3: type = splice_block %.loc212_78.2 [template = constants.%tuple.type.5] {
|
||||
// CHECK:STDOUT: %.loc212_78.1: type = splice_block %.loc212_78.3 [template = constants.%tuple.type.5] {
|
||||
// CHECK:STDOUT: %SelfNestedBadReturnType.ref.loc212_14: type = name_ref SelfNestedBadReturnType, file.%SelfNestedBadReturnType.decl [template = constants.%SelfNestedBadReturnType]
|
||||
// CHECK:STDOUT: %ptr: type = ptr_type %SelfNestedBadReturnType [template = constants.%ptr.3]
|
||||
// CHECK:STDOUT: %SelfNestedBadReturnType.ref.loc212_45: type = name_ref SelfNestedBadReturnType, file.%SelfNestedBadReturnType.decl [template = constants.%SelfNestedBadReturnType]
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %struct_type.x.y: type = struct_type {.x: %SelfNestedBadReturnType, .y: %i32} [template = constants.%struct_type.x.y.4]
|
||||
// CHECK:STDOUT: %.loc212_78.1: %tuple.type.1 = tuple_literal (%ptr, %struct_type.x.y)
|
||||
// CHECK:STDOUT: %.loc212_78.2: type = converted %.loc212_78.1, constants.%tuple.type.5 [template = constants.%tuple.type.5]
|
||||
// CHECK:STDOUT: %.loc212_78.2: %tuple.type.1 = tuple_literal (%ptr, %struct_type.x.y)
|
||||
// CHECK:STDOUT: %.loc212_78.3: type = converted %.loc212_78.2, constants.%tuple.type.5 [template = constants.%tuple.type.5]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: %tuple.type.5 = bind_name x, %x.param
|
||||
// CHECK:STDOUT: %return.param: ref %array_type.2 = out_param runtime_param1
|
||||
|
||||
+16
-16
@@ -175,9 +175,9 @@ fn G(x: A) {
|
||||
// CHECK:STDOUT: %x.param_patt: %empty_struct_type = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param: %empty_struct_type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc12_10.3: type = splice_block %.loc12_10.2 [template = constants.%empty_struct_type] {
|
||||
// CHECK:STDOUT: %.loc12_10.1: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc12_10.2: type = converted %.loc12_10.1, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: %.loc12_10.1: type = splice_block %.loc12_10.3 [template = constants.%empty_struct_type] {
|
||||
// CHECK:STDOUT: %.loc12_10.2: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc12_10.3: type = converted %.loc12_10.2, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: %empty_struct_type = bind_name x, %x.param
|
||||
// CHECK:STDOUT: }
|
||||
@@ -330,9 +330,9 @@ fn G(x: A) {
|
||||
// CHECK:STDOUT: %.loc12_17.1: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc12_17.2: type = converted %.loc12_17.1, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: %x.param: %empty_struct_type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc12_10.3: type = splice_block %.loc12_10.2 [template = constants.%empty_struct_type] {
|
||||
// CHECK:STDOUT: %.loc12_10.1: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc12_10.2: type = converted %.loc12_10.1, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: %.loc12_10.1: type = splice_block %.loc12_10.3 [template = constants.%empty_struct_type] {
|
||||
// CHECK:STDOUT: %.loc12_10.2: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc12_10.3: type = converted %.loc12_10.2, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: %empty_struct_type = bind_name x, %x.param
|
||||
// CHECK:STDOUT: %return.param: ref %empty_struct_type = out_param runtime_param1
|
||||
@@ -352,10 +352,10 @@ fn G(x: A) {
|
||||
// CHECK:STDOUT: %Self.as_type.loc5_25: type = facet_access_type %Self.ref.loc5_25 [symbolic = %Self.as_type.loc5_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_25: type = converted %Self.ref.loc5_25, %Self.as_type.loc5_25 [symbolic = %Self.as_type.loc5_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %self.param: @F.1.%Self.as_type.loc5_14.1 (%Self.as_type) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc5_14.2: type = splice_block %.loc5_14.1 [symbolic = %Self.as_type.loc5_14.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc5_14.1: type = splice_block %.loc5_14.2 [symbolic = %Self.as_type.loc5_14.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %Self.ref.loc5_14: %HasF.type = name_ref Self, @HasF.%Self [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc5_14.2: type = facet_access_type %Self.ref.loc5_14 [symbolic = %Self.as_type.loc5_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_14.1: type = converted %Self.ref.loc5_14, %Self.as_type.loc5_14.2 [symbolic = %Self.as_type.loc5_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_14.2: type = converted %Self.ref.loc5_14, %Self.as_type.loc5_14.2 [symbolic = %Self.as_type.loc5_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @F.1.%Self.as_type.loc5_14.1 (%Self.as_type) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %return.param: ref @F.1.%Self.as_type.loc5_14.1 (%Self.as_type) = out_param runtime_param1
|
||||
@@ -548,10 +548,10 @@ fn G(x: A) {
|
||||
// CHECK:STDOUT: %x.param_patt: %C.2 = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param: %C.2 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc14_13.2: type = splice_block %C [template = constants.%C.2] {
|
||||
// CHECK:STDOUT: %.loc14_13.1: type = splice_block %C [template = constants.%C.2] {
|
||||
// CHECK:STDOUT: %C.ref: %C.type = name_ref C, file.%C.decl [template = constants.%C.generic]
|
||||
// CHECK:STDOUT: %.loc14_12: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc14_13.1: type = converted %.loc14_12, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: %.loc14_13.2: type = converted %.loc14_12, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: %C: type = class_type @C, @C(constants.%empty_struct_type) [template = constants.%C.2]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: %C.2 = bind_name x, %x.param
|
||||
@@ -749,9 +749,9 @@ fn G(x: A) {
|
||||
// CHECK:STDOUT: %x.param_patt: %empty_struct_type = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param: %empty_struct_type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc12_10.3: type = splice_block %.loc12_10.2 [template = constants.%empty_struct_type] {
|
||||
// CHECK:STDOUT: %.loc12_10.1: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc12_10.2: type = converted %.loc12_10.1, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: %.loc12_10.1: type = splice_block %.loc12_10.3 [template = constants.%empty_struct_type] {
|
||||
// CHECK:STDOUT: %.loc12_10.2: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc12_10.3: type = converted %.loc12_10.2, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: %empty_struct_type = bind_name x, %x.param
|
||||
// CHECK:STDOUT: }
|
||||
@@ -952,9 +952,9 @@ fn G(x: A) {
|
||||
// CHECK:STDOUT: %x.param_patt: %empty_struct_type = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param: %empty_struct_type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc13_10.3: type = splice_block %.loc13_10.2 [template = constants.%empty_struct_type] {
|
||||
// CHECK:STDOUT: %.loc13_10.1: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc13_10.2: type = converted %.loc13_10.1, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: %.loc13_10.1: type = splice_block %.loc13_10.3 [template = constants.%empty_struct_type] {
|
||||
// CHECK:STDOUT: %.loc13_10.2: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc13_10.3: type = converted %.loc13_10.2, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: %empty_struct_type = bind_name x, %x.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
@@ -93,10 +93,10 @@ fn F(c: C) -> i32 {
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %self.param: @F.1.%Self.as_type.loc14_14.1 (%Self.as_type) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc14_14.2: type = splice_block %.loc14_14.1 [symbolic = %Self.as_type.loc14_14.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc14_14.1: type = splice_block %.loc14_14.2 [symbolic = %Self.as_type.loc14_14.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %Self.ref: %I.type = name_ref Self, @I.%Self [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc14_14.2: type = facet_access_type %Self.ref [symbolic = %Self.as_type.loc14_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc14_14.1: type = converted %Self.ref, %Self.as_type.loc14_14.2 [symbolic = %Self.as_type.loc14_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc14_14.2: type = converted %Self.ref, %Self.as_type.loc14_14.2 [symbolic = %Self.as_type.loc14_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @F.1.%Self.as_type.loc14_14.1 (%Self.as_type) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %return.param: ref %i32 = out_param runtime_param1
|
||||
|
||||
@@ -176,10 +176,10 @@ fn TestSpecific(a: A({})) -> {} {
|
||||
// CHECK:STDOUT: %.loc20_31.1: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc20_31.2: type = converted %.loc20_31.1, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: %a.param: %A.4 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc20_24.2: type = splice_block %A [template = constants.%A.4] {
|
||||
// CHECK:STDOUT: %.loc20_24.1: type = splice_block %A [template = constants.%A.4] {
|
||||
// CHECK:STDOUT: %A.ref: %A.type = name_ref A, file.%A.decl [template = constants.%A.generic]
|
||||
// CHECK:STDOUT: %.loc20_23: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc20_24.1: type = converted %.loc20_23, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: %.loc20_24.2: type = converted %.loc20_23, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: %A: type = class_type @A, @A(constants.%empty_struct_type) [template = constants.%A.4]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %a: %A.4 = bind_name a, %a.param
|
||||
@@ -210,11 +210,11 @@ fn TestSpecific(a: A({})) -> {} {
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %U.ref: type = name_ref U, @I.%U.loc6_13.1 [symbolic = %U (constants.%U)]
|
||||
// CHECK:STDOUT: %self.param: @F.1.%Self.as_type.loc7_14.1 (%Self.as_type) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc7_14.3: type = splice_block %.loc7_14.2 [symbolic = %Self.as_type.loc7_14.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc7_14.1: @F.1.%I.type (%I.type.2) = specific_constant @I.%Self.1, @I(constants.%U) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.ref: @F.1.%I.type (%I.type.2) = name_ref Self, %.loc7_14.1 [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %.loc7_14.1: type = splice_block %.loc7_14.3 [symbolic = %Self.as_type.loc7_14.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc7_14.2: @F.1.%I.type (%I.type.2) = specific_constant @I.%Self.1, @I(constants.%U) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.ref: @F.1.%I.type (%I.type.2) = name_ref Self, %.loc7_14.2 [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc7_14.2: type = facet_access_type %Self.ref [symbolic = %Self.as_type.loc7_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc7_14.2: type = converted %Self.ref, %Self.as_type.loc7_14.2 [symbolic = %Self.as_type.loc7_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc7_14.3: type = converted %Self.ref, %Self.as_type.loc7_14.2 [symbolic = %Self.as_type.loc7_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @F.1.%Self.as_type.loc7_14.1 (%Self.as_type) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %return.param: ref @F.1.%U (%U) = out_param runtime_param1
|
||||
|
||||
@@ -130,11 +130,11 @@ var n: Int(64) = MakeFromClass(FromLiteral(64) as OtherInt);
|
||||
// CHECK:STDOUT: %return.param_patt: type = out_param_pattern %return.patt, runtime_param1
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %n.param: Core.IntLiteral = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc9_22.3: type = splice_block %.loc9_22.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc9_22.1: type = splice_block %.loc9_22.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, file.%IntLiteral.decl [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc9_22.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc9_22.2: type = converted %int_literal.make_type, %.loc9_22.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc9_22.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc9_22.3: type = converted %int_literal.make_type, %.loc9_22.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: Core.IntLiteral = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref type = out_param runtime_param1
|
||||
@@ -145,11 +145,11 @@ var n: Int(64) = MakeFromClass(FromLiteral(64) as OtherInt);
|
||||
// CHECK:STDOUT: %N.param_patt: Core.IntLiteral = value_param_pattern %N.patt.loc11_13.1, runtime_param<invalid> [symbolic = %N.patt.loc11_13.2 (constants.%N.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %N.param: Core.IntLiteral = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc11_28.3: type = splice_block %.loc11_28.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc11_28.1: type = splice_block %.loc11_28.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, file.%IntLiteral.decl [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc11_28.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc11_28.2: type = converted %int_literal.make_type, %.loc11_28.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc11_28.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc11_28.3: type = converted %int_literal.make_type, %.loc11_28.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %N.loc11_13.1: Core.IntLiteral = bind_symbolic_name N, 0, %N.param [symbolic = %N.loc11_13.2 (constants.%N)]
|
||||
// CHECK:STDOUT: }
|
||||
@@ -162,11 +162,11 @@ var n: Int(64) = MakeFromClass(FromLiteral(64) as OtherInt);
|
||||
// CHECK:STDOUT: %MyInt.loc15_39.1: type = class_type @MyInt, @MyInt(constants.%N) [symbolic = %MyInt.loc15_39.2 (constants.%MyInt)]
|
||||
// CHECK:STDOUT: %Add.ref: type = name_ref Add, file.%Add.decl [template = constants.%Add.type]
|
||||
// CHECK:STDOUT: %N.param: Core.IntLiteral = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc15_29.3: type = splice_block %.loc15_29.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc15_29.1: type = splice_block %.loc15_29.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, file.%IntLiteral.decl [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc15_29.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc15_29.2: type = converted %int_literal.make_type, %.loc15_29.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc15_29.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc15_29.3: type = converted %int_literal.make_type, %.loc15_29.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %N.loc15_14.1: Core.IntLiteral = bind_symbolic_name N, 0, %N.param [symbolic = %N.loc15_14.2 (constants.%N)]
|
||||
// CHECK:STDOUT: }
|
||||
@@ -182,11 +182,11 @@ var n: Int(64) = MakeFromClass(FromLiteral(64) as OtherInt);
|
||||
// CHECK:STDOUT: %N.ref.loc19_51: Core.IntLiteral = name_ref N, %N.loc19_11.1 [symbolic = %N.loc19_11.2 (constants.%N)]
|
||||
// CHECK:STDOUT: %MyInt.loc19_52: type = class_type @MyInt, @MyInt(constants.%N) [symbolic = %MyInt.loc19_39.2 (constants.%MyInt)]
|
||||
// CHECK:STDOUT: %N.param: Core.IntLiteral = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc19_26.3: type = splice_block %.loc19_26.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc19_26.1: type = splice_block %.loc19_26.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, file.%IntLiteral.decl [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc19_26.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc19_26.2: type = converted %int_literal.make_type, %.loc19_26.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc19_26.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc19_26.3: type = converted %int_literal.make_type, %.loc19_26.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %N.loc19_11.1: Core.IntLiteral = bind_symbolic_name N, 0, %N.param [symbolic = %N.loc19_11.2 (constants.%N)]
|
||||
// CHECK:STDOUT: %x.param: @Double.%MyInt.loc19_39.2 (%MyInt) = value_param runtime_param0
|
||||
@@ -215,17 +215,17 @@ var n: Int(64) = MakeFromClass(FromLiteral(64) as OtherInt);
|
||||
// CHECK:STDOUT: %Self.as_type.loc5_37: type = facet_access_type %Self.ref.loc5_37 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_37: type = converted %Self.ref.loc5_37, %Self.as_type.loc5_37 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %self.param: @Op.1.%Self.as_type.loc5_15.1 (%Self.as_type) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc5_15.2: type = splice_block %.loc5_15.1 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc5_15.1: type = splice_block %.loc5_15.2 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %Self.ref.loc5_15: %Add.type = name_ref Self, @Add.%Self [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc5_15.2: type = facet_access_type %Self.ref.loc5_15 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_15.1: type = converted %Self.ref.loc5_15, %Self.as_type.loc5_15.2 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_15.2: type = converted %Self.ref.loc5_15, %Self.as_type.loc5_15.2 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @Op.1.%Self.as_type.loc5_15.1 (%Self.as_type) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %other.param: @Op.1.%Self.as_type.loc5_15.1 (%Self.as_type) = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc5_28.2: type = splice_block %.loc5_28.1 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc5_28.1: type = splice_block %.loc5_28.2 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %Self.ref.loc5_28: %Add.type = name_ref Self, @Add.%Self [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc5_28: type = facet_access_type %Self.ref.loc5_28 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_28.1: type = converted %Self.ref.loc5_28, %Self.as_type.loc5_28 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_28.2: type = converted %Self.ref.loc5_28, %Self.as_type.loc5_28 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %other: @Op.1.%Self.as_type.loc5_15.1 (%Self.as_type) = bind_name other, %other.param
|
||||
// CHECK:STDOUT: %return.param: ref @Op.1.%Self.as_type.loc5_15.1 (%Self.as_type) = out_param runtime_param2
|
||||
@@ -751,11 +751,11 @@ var n: Int(64) = MakeFromClass(FromLiteral(64) as OtherInt);
|
||||
// CHECK:STDOUT: %return.param_patt: type = out_param_pattern %return.patt, runtime_param1
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %n.param: Core.IntLiteral = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc5_22.3: type = splice_block %.loc5_22.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc5_22.1: type = splice_block %.loc5_22.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, file.%IntLiteral.decl [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc5_22.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc5_22.2: type = converted %int_literal.make_type, %.loc5_22.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc5_22.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc5_22.3: type = converted %int_literal.make_type, %.loc5_22.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: Core.IntLiteral = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref type = out_param runtime_param1
|
||||
@@ -772,12 +772,12 @@ var n: Int(64) = MakeFromClass(FromLiteral(64) as OtherInt);
|
||||
// CHECK:STDOUT: %.loc6_40.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc6_40.2: type = converted %int_literal.make_type, %.loc6_40.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %n.param: %i32.builtin = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc6_23.3: type = splice_block %.loc6_23.2 [template = constants.%i32.builtin] {
|
||||
// CHECK:STDOUT: %.loc6_23.1: type = splice_block %.loc6_23.3 [template = constants.%i32.builtin] {
|
||||
// CHECK:STDOUT: %Int.ref: %Int.type = name_ref Int, file.%Int.decl [template = constants.%Int]
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %int.make_type_signed: init type = call %Int.ref(%int_32) [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc6_23.1: type = value_of_initializer %int.make_type_signed [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc6_23.2: type = converted %int.make_type_signed, %.loc6_23.1 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc6_23.2: type = value_of_initializer %int.make_type_signed [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc6_23.3: type = converted %int.make_type_signed, %.loc6_23.2 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: %i32.builtin = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref Core.IntLiteral = out_param runtime_param1
|
||||
@@ -795,11 +795,11 @@ var n: Int(64) = MakeFromClass(FromLiteral(64) as OtherInt);
|
||||
// CHECK:STDOUT: %.loc7_42.1: type = value_of_initializer %int.make_type_signed [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc7_42.2: type = converted %int.make_type_signed, %.loc7_42.1 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %n.param: Core.IntLiteral = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc7_30.3: type = splice_block %.loc7_30.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc7_30.1: type = splice_block %.loc7_30.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, file.%IntLiteral.decl [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc7_30.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc7_30.2: type = converted %int_literal.make_type, %.loc7_30.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc7_30.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc7_30.3: type = converted %int_literal.make_type, %.loc7_30.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: Core.IntLiteral = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref %i32.builtin = out_param runtime_param1
|
||||
@@ -821,12 +821,12 @@ var n: Int(64) = MakeFromClass(FromLiteral(64) as OtherInt);
|
||||
// CHECK:STDOUT: %.loc9_41.1: type = value_of_initializer %int.make_type_signed.loc9_41 [symbolic = %iN.builtin (constants.%iN.builtin.1)]
|
||||
// CHECK:STDOUT: %.loc9_41.2: type = converted %int.make_type_signed.loc9_41, %.loc9_41.1 [symbolic = %iN.builtin (constants.%iN.builtin.1)]
|
||||
// CHECK:STDOUT: %N.param: %i32.builtin = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc9_19.3: type = splice_block %.loc9_19.2 [template = constants.%i32.builtin] {
|
||||
// CHECK:STDOUT: %.loc9_19.1: type = splice_block %.loc9_19.3 [template = constants.%i32.builtin] {
|
||||
// CHECK:STDOUT: %Int.ref.loc9_13: %Int.type = name_ref Int, file.%Int.decl [template = constants.%Int]
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %int.make_type_signed.loc9_19: init type = call %Int.ref.loc9_13(%int_32) [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc9_19.1: type = value_of_initializer %int.make_type_signed.loc9_19 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc9_19.2: type = converted %int.make_type_signed.loc9_19, %.loc9_19.1 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc9_19.2: type = value_of_initializer %int.make_type_signed.loc9_19 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc9_19.3: type = converted %int.make_type_signed.loc9_19, %.loc9_19.2 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %N.loc9_9.1: %i32.builtin = bind_symbolic_name N, 0, %N.param [symbolic = %N.loc9_9.2 (constants.%N.1)]
|
||||
// CHECK:STDOUT: %return.param: ref @Make.%iN.builtin (%iN.builtin.1) = out_param runtime_param0
|
||||
|
||||
+10
-10
@@ -63,17 +63,17 @@ fn F(x: (), y: ()) -> () {
|
||||
// CHECK:STDOUT: %Self.as_type.loc5_37: type = facet_access_type %Self.ref.loc5_37 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_37: type = converted %Self.ref.loc5_37, %Self.as_type.loc5_37 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %self.param: @Op.%Self.as_type.loc5_15.1 (%Self.as_type) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc5_15.2: type = splice_block %.loc5_15.1 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc5_15.1: type = splice_block %.loc5_15.2 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %Self.ref.loc5_15: %Add.type = name_ref Self, @Add.%Self [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc5_15.2: type = facet_access_type %Self.ref.loc5_15 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_15.1: type = converted %Self.ref.loc5_15, %Self.as_type.loc5_15.2 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_15.2: type = converted %Self.ref.loc5_15, %Self.as_type.loc5_15.2 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @Op.%Self.as_type.loc5_15.1 (%Self.as_type) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %other.param: @Op.%Self.as_type.loc5_15.1 (%Self.as_type) = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc5_28.2: type = splice_block %.loc5_28.1 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc5_28.1: type = splice_block %.loc5_28.2 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %Self.ref.loc5_28: %Add.type = name_ref Self, @Add.%Self [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc5_28: type = facet_access_type %Self.ref.loc5_28 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_28.1: type = converted %Self.ref.loc5_28, %Self.as_type.loc5_28 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc5_28.2: type = converted %Self.ref.loc5_28, %Self.as_type.loc5_28 [symbolic = %Self.as_type.loc5_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %other: @Op.%Self.as_type.loc5_15.1 (%Self.as_type) = bind_name other, %other.param
|
||||
// CHECK:STDOUT: %return.param: ref @Op.%Self.as_type.loc5_15.1 (%Self.as_type) = out_param runtime_param2
|
||||
@@ -148,15 +148,15 @@ fn F(x: (), y: ()) -> () {
|
||||
// CHECK:STDOUT: %.loc10_24.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc10_24.2: type = converted %.loc10_24.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %x.param: %empty_tuple.type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc10_10.3: type = splice_block %.loc10_10.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc10_10.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc10_10.2: type = converted %.loc10_10.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc10_10.1: type = splice_block %.loc10_10.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc10_10.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc10_10.3: type = converted %.loc10_10.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: %empty_tuple.type = bind_name x, %x.param
|
||||
// CHECK:STDOUT: %y.param: %empty_tuple.type = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc10_17.3: type = splice_block %.loc10_17.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc10_17.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc10_17.2: type = converted %.loc10_17.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc10_17.1: type = splice_block %.loc10_17.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc10_17.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc10_17.3: type = converted %.loc10_17.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %y: %empty_tuple.type = bind_name y, %y.param
|
||||
// CHECK:STDOUT: %return.param: ref %empty_tuple.type = out_param runtime_param2
|
||||
|
||||
@@ -131,17 +131,17 @@ impl D as SelfNested {
|
||||
// CHECK:STDOUT: %Self.as_type.loc12_32: type = facet_access_type %Self.ref.loc12_32 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc12_32: type = converted %Self.ref.loc12_32, %Self.as_type.loc12_32 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %self.param: @F.1.%Self.as_type.loc12_14.1 (%Self.as_type.1) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc12_14.2: type = splice_block %.loc12_14.1 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)] {
|
||||
// CHECK:STDOUT: %.loc12_14.1: type = splice_block %.loc12_14.2 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)] {
|
||||
// CHECK:STDOUT: %Self.ref.loc12_14: %UseSelf.type = name_ref Self, @UseSelf.%Self [symbolic = %Self (constants.%Self.1)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc12_14.2: type = facet_access_type %Self.ref.loc12_14 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc12_14.1: type = converted %Self.ref.loc12_14, %Self.as_type.loc12_14.2 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc12_14.2: type = converted %Self.ref.loc12_14, %Self.as_type.loc12_14.2 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @F.1.%Self.as_type.loc12_14.1 (%Self.as_type.1) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %x.param: @F.1.%Self.as_type.loc12_14.1 (%Self.as_type.1) = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc12_23.2: type = splice_block %.loc12_23.1 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)] {
|
||||
// CHECK:STDOUT: %.loc12_23.1: type = splice_block %.loc12_23.2 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)] {
|
||||
// CHECK:STDOUT: %Self.ref.loc12_23: %UseSelf.type = name_ref Self, @UseSelf.%Self [symbolic = %Self (constants.%Self.1)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc12_23: type = facet_access_type %Self.ref.loc12_23 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc12_23.1: type = converted %Self.ref.loc12_23, %Self.as_type.loc12_23 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: %.loc12_23.2: type = converted %Self.ref.loc12_23, %Self.as_type.loc12_23 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type.1)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: @F.1.%Self.as_type.loc12_14.1 (%Self.as_type.1) = bind_name x, %x.param
|
||||
// CHECK:STDOUT: %return.param: ref @F.1.%Self.as_type.loc12_14.1 (%Self.as_type.1) = out_param runtime_param2
|
||||
@@ -162,7 +162,7 @@ impl D as SelfNested {
|
||||
// CHECK:STDOUT: %x.param_patt: @F.4.%tuple.type (%tuple.type.2) = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param: @F.4.%tuple.type (%tuple.type.2) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc28_37.3: type = splice_block %.loc28_37.2 [symbolic = %tuple.type (constants.%tuple.type.2)] {
|
||||
// CHECK:STDOUT: %.loc28_37.1: type = splice_block %.loc28_37.3 [symbolic = %tuple.type (constants.%tuple.type.2)] {
|
||||
// CHECK:STDOUT: %Self.ref.loc28_12: %SelfNested.type = name_ref Self, @SelfNested.%Self [symbolic = %Self (constants.%Self.2)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc28_16.2: type = facet_access_type %Self.ref.loc28_12 [symbolic = %Self.as_type.loc28_16.1 (constants.%Self.as_type.2)]
|
||||
// CHECK:STDOUT: %.loc28_16: type = converted %Self.ref.loc28_12, %Self.as_type.loc28_16.2 [symbolic = %Self.as_type.loc28_16.1 (constants.%Self.as_type.2)]
|
||||
@@ -173,8 +173,8 @@ impl D as SelfNested {
|
||||
// CHECK:STDOUT: %.loc28_35.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc28_35.2: type = converted %.loc28_35.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %struct_type.x.y.loc28_36.2: type = struct_type {.x: %Self.as_type.2, .y: %empty_tuple.type} [symbolic = %struct_type.x.y.loc28_36.1 (constants.%struct_type.x.y.1)]
|
||||
// CHECK:STDOUT: %.loc28_37.1: %tuple.type.1 = tuple_literal (%ptr.loc28_16.2, %struct_type.x.y.loc28_36.2)
|
||||
// CHECK:STDOUT: %.loc28_37.2: type = converted %.loc28_37.1, constants.%tuple.type.2 [symbolic = %tuple.type (constants.%tuple.type.2)]
|
||||
// CHECK:STDOUT: %.loc28_37.2: %tuple.type.1 = tuple_literal (%ptr.loc28_16.2, %struct_type.x.y.loc28_36.2)
|
||||
// CHECK:STDOUT: %.loc28_37.3: type = converted %.loc28_37.2, constants.%tuple.type.2 [symbolic = %tuple.type (constants.%tuple.type.2)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: @F.4.%tuple.type (%tuple.type.2) = bind_name x, %x.param
|
||||
// CHECK:STDOUT: }
|
||||
@@ -244,15 +244,15 @@ impl D as SelfNested {
|
||||
// CHECK:STDOUT: %x.param_patt: %tuple.type.3 = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param: %tuple.type.3 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc32_31.3: type = splice_block %.loc32_31.2 [template = constants.%tuple.type.3] {
|
||||
// CHECK:STDOUT: %.loc32_31.1: type = splice_block %.loc32_31.3 [template = constants.%tuple.type.3] {
|
||||
// CHECK:STDOUT: %C.ref.loc32_12: type = name_ref C, file.%C.decl [template = constants.%C]
|
||||
// CHECK:STDOUT: %ptr: type = ptr_type %C [template = constants.%ptr.3]
|
||||
// CHECK:STDOUT: %C.ref.loc32_21: type = name_ref C, file.%C.decl [template = constants.%C]
|
||||
// CHECK:STDOUT: %.loc32_29.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc32_29.2: type = converted %.loc32_29.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %struct_type.x.y: type = struct_type {.x: %C, .y: %empty_tuple.type} [template = constants.%struct_type.x.y.2]
|
||||
// CHECK:STDOUT: %.loc32_31.1: %tuple.type.1 = tuple_literal (%ptr, %struct_type.x.y)
|
||||
// CHECK:STDOUT: %.loc32_31.2: type = converted %.loc32_31.1, constants.%tuple.type.3 [template = constants.%tuple.type.3]
|
||||
// CHECK:STDOUT: %.loc32_31.2: %tuple.type.1 = tuple_literal (%ptr, %struct_type.x.y)
|
||||
// CHECK:STDOUT: %.loc32_31.3: type = converted %.loc32_31.2, constants.%tuple.type.3 [template = constants.%tuple.type.3]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: %tuple.type.3 = bind_name x, %x.param
|
||||
// CHECK:STDOUT: }
|
||||
@@ -269,15 +269,15 @@ impl D as SelfNested {
|
||||
// CHECK:STDOUT: %x.param_patt: %tuple.type.4 = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param: %tuple.type.4 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc36_37.3: type = splice_block %.loc36_37.2 [template = constants.%tuple.type.4] {
|
||||
// CHECK:STDOUT: %.loc36_37.1: type = splice_block %.loc36_37.3 [template = constants.%tuple.type.4] {
|
||||
// CHECK:STDOUT: %Self.ref.loc36_12: type = name_ref Self, @impl.4.%D.ref [template = constants.%D]
|
||||
// CHECK:STDOUT: %ptr: type = ptr_type %D [template = constants.%ptr.4]
|
||||
// CHECK:STDOUT: %Self.ref.loc36_24: type = name_ref Self, @impl.4.%D.ref [template = constants.%D]
|
||||
// CHECK:STDOUT: %.loc36_35.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc36_35.2: type = converted %.loc36_35.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %struct_type.x.y: type = struct_type {.x: %D, .y: %empty_tuple.type} [template = constants.%struct_type.x.y.3]
|
||||
// CHECK:STDOUT: %.loc36_37.1: %tuple.type.1 = tuple_literal (%ptr, %struct_type.x.y)
|
||||
// CHECK:STDOUT: %.loc36_37.2: type = converted %.loc36_37.1, constants.%tuple.type.4 [template = constants.%tuple.type.4]
|
||||
// CHECK:STDOUT: %.loc36_37.2: %tuple.type.1 = tuple_literal (%ptr, %struct_type.x.y)
|
||||
// CHECK:STDOUT: %.loc36_37.3: type = converted %.loc36_37.2, constants.%tuple.type.4 [template = constants.%tuple.type.4]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: %tuple.type.4 = bind_name x, %x.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+6
-6
@@ -241,9 +241,9 @@ fn Interface.C.F[self: Self](U:! type, u: U) -> U { return u; }
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %U.ref.loc20_49: type = name_ref U, %U.loc20 [symbolic = constants.%U]
|
||||
// CHECK:STDOUT: %self.param.loc20: %C.2 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc20_24.2: type = splice_block %Self.ref.loc20 [symbolic = constants.%C.2] {
|
||||
// CHECK:STDOUT: %.loc20_24.1: type = specific_constant constants.%C.2, @C(constants.%Self) [symbolic = constants.%C.2]
|
||||
// CHECK:STDOUT: %Self.ref.loc20: type = name_ref Self, %.loc20_24.1 [symbolic = constants.%C.2]
|
||||
// CHECK:STDOUT: %.loc20_24.1: type = splice_block %Self.ref.loc20 [symbolic = constants.%C.2] {
|
||||
// CHECK:STDOUT: %.loc20_24.2: type = specific_constant constants.%C.2, @C(constants.%Self) [symbolic = constants.%C.2]
|
||||
// CHECK:STDOUT: %Self.ref.loc20: type = name_ref Self, %.loc20_24.2 [symbolic = constants.%C.2]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self.loc20: %C.2 = bind_name self, %self.param.loc20
|
||||
// CHECK:STDOUT: %U.param.loc20: type = value_param runtime_param<invalid>
|
||||
@@ -285,9 +285,9 @@ fn Interface.C.F[self: Self](U:! type, u: U) -> U { return u; }
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %U.ref.loc14_41: type = name_ref U, %U.loc14_22.2 [symbolic = %U.loc14_22.1 (constants.%U)]
|
||||
// CHECK:STDOUT: %self.param.loc14: @F.%C (%C.2) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc14_16.2: type = splice_block %Self.ref.loc14 [symbolic = %C (constants.%C.2)] {
|
||||
// CHECK:STDOUT: %.loc14_16.1: type = specific_constant constants.%C.2, @C(constants.%Self) [symbolic = %C (constants.%C.2)]
|
||||
// CHECK:STDOUT: %Self.ref.loc14: type = name_ref Self, %.loc14_16.1 [symbolic = %C (constants.%C.2)]
|
||||
// CHECK:STDOUT: %.loc14_16.1: type = splice_block %Self.ref.loc14 [symbolic = %C (constants.%C.2)] {
|
||||
// CHECK:STDOUT: %.loc14_16.2: type = specific_constant constants.%C.2, @C(constants.%Self) [symbolic = %C (constants.%C.2)]
|
||||
// CHECK:STDOUT: %Self.ref.loc14: type = name_ref Self, %.loc14_16.2 [symbolic = %C (constants.%C.2)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self.loc14: @F.%C (%C.2) = bind_name self, %self.param.loc14
|
||||
// CHECK:STDOUT: %U.param.loc14: type = value_param runtime_param<invalid>
|
||||
|
||||
@@ -153,10 +153,10 @@ interface Class { }
|
||||
// CHECK:STDOUT: %self.param_patt: @F.%Self.as_type.loc14_14.1 (%Self.as_type) = value_param_pattern %self.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %self.param: @F.%Self.as_type.loc14_14.1 (%Self.as_type) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc14_14.2: type = splice_block %.loc14_14.1 [symbolic = %Self.as_type.loc14_14.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc14_14.1: type = splice_block %.loc14_14.2 [symbolic = %Self.as_type.loc14_14.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %Self.ref: %.type = name_ref Self, @.1.%Self [symbolic = %Self (constants.%Self.2)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc14_14.2: type = facet_access_type %Self.ref [symbolic = %Self.as_type.loc14_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc14_14.1: type = converted %Self.ref, %Self.as_type.loc14_14.2 [symbolic = %Self.as_type.loc14_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc14_14.2: type = converted %Self.ref, %Self.as_type.loc14_14.2 [symbolic = %Self.as_type.loc14_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @F.%Self.as_type.loc14_14.1 (%Self.as_type) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+3
-3
@@ -96,9 +96,9 @@ interface DifferentParams(T:! ()) {}
|
||||
// CHECK:STDOUT: %T.param_patt: %empty_tuple.type = value_param_pattern %T.patt.loc38_27.1, runtime_param<invalid> [symbolic = %T.patt.loc38_27.2 (constants.%T.patt.2)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %T.param: %empty_tuple.type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc38_32.3: type = splice_block %.loc38_32.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc38_32.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc38_32.2: type = converted %.loc38_32.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc38_32.1: type = splice_block %.loc38_32.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc38_32.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc38_32.3: type = converted %.loc38_32.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %T.loc38_27.1: %empty_tuple.type = bind_symbolic_name T, 0, %T.param [symbolic = %T.loc38_27.2 (constants.%T.2)]
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
@@ -173,10 +173,10 @@ interface I {
|
||||
// CHECK:STDOUT: %self.param_patt: @F.%Self.as_type.loc9_22.1 (%Self.as_type) = value_param_pattern %self.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %self.param: @F.%Self.as_type.loc9_22.1 (%Self.as_type) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc9_22.2: type = splice_block %.loc9_22.1 [symbolic = %Self.as_type.loc9_22.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc9_22.1: type = splice_block %.loc9_22.2 [symbolic = %Self.as_type.loc9_22.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %Self.ref: %I.type = name_ref Self, @I.%Self [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc9_22.2: type = facet_access_type %Self.ref [symbolic = %Self.as_type.loc9_22.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc9_22.1: type = converted %Self.ref, %Self.as_type.loc9_22.2 [symbolic = %Self.as_type.loc9_22.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc9_22.2: type = converted %Self.ref, %Self.as_type.loc9_22.2 [symbolic = %Self.as_type.loc9_22.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @F.%Self.as_type.loc9_22.1 (%Self.as_type) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: }
|
||||
@@ -226,10 +226,10 @@ interface I {
|
||||
// CHECK:STDOUT: %self.param_patt: @F.%Self.as_type.loc8_24.1 (%Self.as_type) = value_param_pattern %self.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %self.param: @F.%Self.as_type.loc8_24.1 (%Self.as_type) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc8_24.2: type = splice_block %.loc8_24.1 [symbolic = %Self.as_type.loc8_24.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc8_24.1: type = splice_block %.loc8_24.2 [symbolic = %Self.as_type.loc8_24.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %Self.ref: %I.type = name_ref Self, @I.%Self [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc8_24.2: type = facet_access_type %Self.ref [symbolic = %Self.as_type.loc8_24.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc8_24.1: type = converted %Self.ref, %Self.as_type.loc8_24.2 [symbolic = %Self.as_type.loc8_24.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc8_24.2: type = converted %Self.ref, %Self.as_type.loc8_24.2 [symbolic = %Self.as_type.loc8_24.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @F.%Self.as_type.loc8_24.1 (%Self.as_type) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+2
-2
@@ -71,10 +71,10 @@ fn CallFacet(T:! Interface, x: T) {
|
||||
// CHECK:STDOUT: %Interface.ref: type = name_ref Interface, file.%Interface.decl [template = constants.%Interface.type]
|
||||
// CHECK:STDOUT: %T.loc21_14.1: %Interface.type = bind_symbolic_name T, 0, %T.param [symbolic = %T.loc21_14.2 (constants.%T)]
|
||||
// CHECK:STDOUT: %x.param: @CallFacet.%T.as_type.loc21_32.2 (%T.as_type) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc21_32.2: type = splice_block %.loc21_32.1 [symbolic = %T.as_type.loc21_32.2 (constants.%T.as_type)] {
|
||||
// CHECK:STDOUT: %.loc21_32.1: type = splice_block %.loc21_32.2 [symbolic = %T.as_type.loc21_32.2 (constants.%T.as_type)] {
|
||||
// CHECK:STDOUT: %T.ref: %Interface.type = name_ref T, %T.loc21_14.1 [symbolic = %T.loc21_14.2 (constants.%T)]
|
||||
// CHECK:STDOUT: %T.as_type.loc21_32.1: type = facet_access_type %T.ref [symbolic = %T.as_type.loc21_32.2 (constants.%T.as_type)]
|
||||
// CHECK:STDOUT: %.loc21_32.1: type = converted %T.ref, %T.as_type.loc21_32.1 [symbolic = %T.as_type.loc21_32.2 (constants.%T.as_type)]
|
||||
// CHECK:STDOUT: %.loc21_32.2: type = converted %T.ref, %T.as_type.loc21_32.1 [symbolic = %T.as_type.loc21_32.2 (constants.%T.as_type)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: @CallFacet.%T.as_type.loc21_32.2 (%T.as_type) = bind_name x, %x.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+8
-8
@@ -64,11 +64,11 @@ fn I(T:! type).F[self: Self]() -> Self { return self; }
|
||||
// CHECK:STDOUT: %Self.as_type.loc22_35: type = facet_access_type %Self.ref.loc22_35 [symbolic = %Self.as_type.loc22_24.2 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc22_35.2: type = converted %Self.ref.loc22_35, %Self.as_type.loc22_35 [symbolic = %Self.as_type.loc22_24.2 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %self.param: @.1.%Self.as_type.loc22_24.2 (%Self.as_type) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc22_24.3: type = splice_block %.loc22_24.2 [symbolic = %Self.as_type.loc22_24.2 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc22_24.1: @.1.%I.type (%I.type.2) = specific_constant @I.%Self.1, @I(constants.%T) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.ref.loc22_24: @.1.%I.type (%I.type.2) = name_ref Self, %.loc22_24.1 [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %.loc22_24.1: type = splice_block %.loc22_24.3 [symbolic = %Self.as_type.loc22_24.2 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc22_24.2: @.1.%I.type (%I.type.2) = specific_constant @I.%Self.1, @I(constants.%T) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.ref.loc22_24: @.1.%I.type (%I.type.2) = name_ref Self, %.loc22_24.2 [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc22_24.1: type = facet_access_type %Self.ref.loc22_24 [symbolic = %Self.as_type.loc22_24.2 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc22_24.2: type = converted %Self.ref.loc22_24, %Self.as_type.loc22_24.1 [symbolic = %Self.as_type.loc22_24.2 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc22_24.3: type = converted %Self.ref.loc22_24, %Self.as_type.loc22_24.1 [symbolic = %Self.as_type.loc22_24.2 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @.1.%Self.as_type.loc22_24.2 (%Self.as_type) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %return.param: ref @.1.%Self.as_type.loc22_24.2 (%Self.as_type) = out_param runtime_param1
|
||||
@@ -101,11 +101,11 @@ fn I(T:! type).F[self: Self]() -> Self { return self; }
|
||||
// CHECK:STDOUT: %Self.as_type.loc13_25: type = facet_access_type %Self.ref.loc13_25 [symbolic = %Self.as_type.loc13_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc13_25.2: type = converted %Self.ref.loc13_25, %Self.as_type.loc13_25 [symbolic = %Self.as_type.loc13_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %self.param: @F.%Self.as_type.loc13_14.1 (%Self.as_type) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc13_14.3: type = splice_block %.loc13_14.2 [symbolic = %Self.as_type.loc13_14.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc13_14.1: @F.%I.type (%I.type.2) = specific_constant @I.%Self.1, @I(constants.%T) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.ref.loc13_14: @F.%I.type (%I.type.2) = name_ref Self, %.loc13_14.1 [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %.loc13_14.1: type = splice_block %.loc13_14.3 [symbolic = %Self.as_type.loc13_14.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc13_14.2: @F.%I.type (%I.type.2) = specific_constant @I.%Self.1, @I(constants.%T) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.ref.loc13_14: @F.%I.type (%I.type.2) = name_ref Self, %.loc13_14.2 [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc13_14.2: type = facet_access_type %Self.ref.loc13_14 [symbolic = %Self.as_type.loc13_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc13_14.2: type = converted %Self.ref.loc13_14, %Self.as_type.loc13_14.2 [symbolic = %Self.as_type.loc13_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc13_14.3: type = converted %Self.ref.loc13_14, %Self.as_type.loc13_14.2 [symbolic = %Self.as_type.loc13_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @F.%Self.as_type.loc13_14.1 (%Self.as_type) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %return.param: ref @F.%Self.as_type.loc13_14.1 (%Self.as_type) = out_param runtime_param1
|
||||
|
||||
@@ -43,10 +43,10 @@ interface UseSelf {
|
||||
// CHECK:STDOUT: %Self.as_type.loc12_25: type = facet_access_type %Self.ref.loc12_25 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc12_25: type = converted %Self.ref.loc12_25, %Self.as_type.loc12_25 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %self.param: @F.%Self.as_type.loc12_14.1 (%Self.as_type) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc12_14.2: type = splice_block %.loc12_14.1 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc12_14.1: type = splice_block %.loc12_14.2 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %Self.ref.loc12_14: %UseSelf.type = name_ref Self, @UseSelf.%Self [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc12_14.2: type = facet_access_type %Self.ref.loc12_14 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc12_14.1: type = converted %Self.ref.loc12_14, %Self.as_type.loc12_14.2 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc12_14.2: type = converted %Self.ref.loc12_14, %Self.as_type.loc12_14.2 [symbolic = %Self.as_type.loc12_14.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @F.%Self.as_type.loc12_14.1 (%Self.as_type) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %return.param: ref @F.%Self.as_type.loc12_14.1 (%Self.as_type) = out_param runtime_param1
|
||||
|
||||
@@ -326,11 +326,11 @@ impl i32 as Empty {
|
||||
// CHECK:STDOUT: %b.param_patt: %tuple.type.1 = value_param_pattern %b.patt.loc10_8.2, runtime_param<invalid> [symbolic = %b.patt.loc10_8.1 (constants.%b.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %b.param: %tuple.type.1 = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc10_16.4: type = splice_block %.loc10_16.3 [template = constants.%tuple.type.1] {
|
||||
// CHECK:STDOUT: %.loc10_16.1: type = splice_block %.loc10_16.4 [template = constants.%tuple.type.1] {
|
||||
// CHECK:STDOUT: %.loc10_14: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc10_16.1: %tuple.type.1 = tuple_literal (%.loc10_14)
|
||||
// CHECK:STDOUT: %.loc10_16.2: type = converted %.loc10_14, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc10_16.3: type = converted %.loc10_16.1, constants.%tuple.type.1 [template = constants.%tuple.type.1]
|
||||
// CHECK:STDOUT: %.loc10_16.2: %tuple.type.1 = tuple_literal (%.loc10_14)
|
||||
// CHECK:STDOUT: %.loc10_16.3: type = converted %.loc10_14, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc10_16.4: type = converted %.loc10_16.2, constants.%tuple.type.1 [template = constants.%tuple.type.1]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b.loc10_8.2: %tuple.type.1 = bind_symbolic_name b, 0, %b.param [symbolic = %b.loc10_8.1 (constants.%b)]
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+3
-3
@@ -101,10 +101,10 @@ fn PartialConstant(x: bool) {
|
||||
// CHECK:STDOUT: %x.param_patt: bool = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc25_23.3: type = splice_block %.loc25_23.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc25_23.1: type = splice_block %.loc25_23.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc25_23.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc25_23.2: type = converted %bool.make_type, %.loc25_23.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc25_23.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc25_23.3: type = converted %bool.make_type, %.loc25_23.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: bool = bind_name x, %x.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+3
-3
@@ -104,10 +104,10 @@ var or_val: bool = true or true;
|
||||
// CHECK:STDOUT: %return.param_patt: type = out_param_pattern %return.patt, runtime_param1
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc12_9.3: type = splice_block %.loc12_9.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc12_9.1: type = splice_block %.loc12_9.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc12_9.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc12_9.2: type = converted %bool.make_type, %.loc12_9.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc12_9.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc12_9.3: type = converted %bool.make_type, %.loc12_9.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref type = out_param runtime_param1
|
||||
|
||||
+6
-6
@@ -71,10 +71,10 @@ fn KnownValueButNonConstantCondition(x: bool) {
|
||||
// CHECK:STDOUT: %x.param_patt: bool = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc4_23.3: type = splice_block %.loc4_23.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc4_23.1: type = splice_block %.loc4_23.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_23.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_23.2: type = converted %bool.make_type, %.loc4_23.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_23.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_23.3: type = converted %bool.make_type, %.loc4_23.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: bool = bind_name x, %x.param
|
||||
// CHECK:STDOUT: }
|
||||
@@ -117,10 +117,10 @@ fn KnownValueButNonConstantCondition(x: bool) {
|
||||
// CHECK:STDOUT: %x.param_patt: bool = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc4_41.3: type = splice_block %.loc4_41.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc4_41.1: type = splice_block %.loc4_41.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_41.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_41.2: type = converted %bool.make_type, %.loc4_41.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_41.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc4_41.3: type = converted %bool.make_type, %.loc4_41.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: bool = bind_name x, %x.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+3
-3
@@ -100,10 +100,10 @@ fn PartialConstant(x: bool) {
|
||||
// CHECK:STDOUT: %x.param_patt: bool = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc25_23.3: type = splice_block %.loc25_23.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc25_23.1: type = splice_block %.loc25_23.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc25_23.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc25_23.2: type = converted %bool.make_type, %.loc25_23.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc25_23.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc25_23.3: type = converted %bool.make_type, %.loc25_23.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: bool = bind_name x, %x.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
@@ -62,10 +62,10 @@ fn Constant() {
|
||||
// CHECK:STDOUT: %.loc11_20.1: type = value_of_initializer %bool.make_type.loc11_20 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_20.2: type = converted %bool.make_type.loc11_20, %.loc11_20.1 [template = bool]
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc11_11.3: type = splice_block %.loc11_11.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc11_11.1: type = splice_block %.loc11_11.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type.loc11_11: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_11.1: type = value_of_initializer %bool.make_type.loc11_11 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_11.2: type = converted %bool.make_type.loc11_11, %.loc11_11.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_11.2: type = value_of_initializer %bool.make_type.loc11_11 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_11.3: type = converted %bool.make_type.loc11_11, %.loc11_11.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref bool = out_param runtime_param1
|
||||
|
||||
@@ -194,11 +194,11 @@ fn F() { ()[()]; }
|
||||
// CHECK:STDOUT: %.loc6_51.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc6_51.2: type = converted %.loc6_51.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %self.param: @At.1.%Self.as_type.loc6_15.1 (%Self.as_type) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc6_15.3: type = splice_block %.loc6_15.2 [symbolic = %Self.as_type.loc6_15.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc6_15.1: @At.1.%IndexWith.type (%IndexWith.type.2) = specific_constant @IndexWith.%Self.1, @IndexWith(constants.%SubscriptType) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.ref: @At.1.%IndexWith.type (%IndexWith.type.2) = name_ref Self, %.loc6_15.1 [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %.loc6_15.1: type = splice_block %.loc6_15.3 [symbolic = %Self.as_type.loc6_15.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc6_15.2: @At.1.%IndexWith.type (%IndexWith.type.2) = specific_constant @IndexWith.%Self.1, @IndexWith(constants.%SubscriptType) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.ref: @At.1.%IndexWith.type (%IndexWith.type.2) = name_ref Self, %.loc6_15.2 [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc6_15.2: type = facet_access_type %Self.ref [symbolic = %Self.as_type.loc6_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc6_15.2: type = converted %Self.ref, %Self.as_type.loc6_15.2 [symbolic = %Self.as_type.loc6_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc6_15.3: type = converted %Self.ref, %Self.as_type.loc6_15.2 [symbolic = %Self.as_type.loc6_15.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @At.1.%Self.as_type.loc6_15.1 (%Self.as_type) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %subscript.param: @At.1.%SubscriptType (%SubscriptType) = value_param runtime_param1
|
||||
@@ -231,9 +231,9 @@ fn F() { ()[()]; }
|
||||
// CHECK:STDOUT: %Self.ref: type = name_ref Self, @impl.%.loc9_7.2 [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %self: %empty_tuple.type = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %subscript.param: %empty_tuple.type = value_param runtime_param1
|
||||
// CHECK:STDOUT: %.loc10_33.3: type = splice_block %.loc10_33.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc10_33.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc10_33.2: type = converted %.loc10_33.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc10_33.1: type = splice_block %.loc10_33.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc10_33.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc10_33.3: type = converted %.loc10_33.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %subscript: %empty_tuple.type = bind_name subscript, %subscript.param
|
||||
// CHECK:STDOUT: %return.param: ref %empty_tuple.type = out_param runtime_param2
|
||||
|
||||
@@ -258,9 +258,9 @@ fn UseF() { Other.F(); }
|
||||
// CHECK:STDOUT: %x.param_patt: %empty_tuple.type = value_param_pattern %x.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %x.param: %empty_tuple.type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc4_10.3: type = splice_block %.loc4_10.2 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc4_10.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc4_10.2: type = converted %.loc4_10.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc4_10.1: type = splice_block %.loc4_10.3 [template = constants.%empty_tuple.type] {
|
||||
// CHECK:STDOUT: %.loc4_10.2: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc4_10.3: type = converted %.loc4_10.2, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %x: %empty_tuple.type = bind_name x, %x.param
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
@@ -64,10 +64,10 @@ fn F(b: bool) -> i32 {
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc11_9.3: type = splice_block %.loc11_9.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc11_9.1: type = splice_block %.loc11_9.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_9.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_9.2: type = converted %bool.make_type, %.loc11_9.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_9.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc11_9.3: type = converted %bool.make_type, %.loc11_9.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref %i32 = out_param runtime_param1
|
||||
|
||||
+13
-13
@@ -113,11 +113,11 @@ fn F0(n: i32) -> P.D {
|
||||
// CHECK:STDOUT: %return.param_patt: type = out_param_pattern %return.patt, runtime_param1
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %N.param: Core.IntLiteral = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc6_22.3: type = splice_block %.loc6_22.2 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %.loc6_22.1: type = splice_block %.loc6_22.3 [template = Core.IntLiteral] {
|
||||
// CHECK:STDOUT: %IntLiteral.ref: %IntLiteral.type = name_ref IntLiteral, file.%IntLiteral.decl [template = constants.%IntLiteral]
|
||||
// CHECK:STDOUT: %int_literal.make_type: init type = call %IntLiteral.ref() [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc6_22.1: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc6_22.2: type = converted %int_literal.make_type, %.loc6_22.1 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc6_22.2: type = value_of_initializer %int_literal.make_type [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: %.loc6_22.3: type = converted %int_literal.make_type, %.loc6_22.2 [template = Core.IntLiteral]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %N: Core.IntLiteral = bind_name N, %N.param
|
||||
// CHECK:STDOUT: %return.param: ref type = out_param runtime_param1
|
||||
@@ -166,11 +166,11 @@ fn F0(n: i32) -> P.D {
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %T.ref: type = name_ref T, @ImplicitAs.%T.loc8_22.1 [symbolic = %T (constants.%T)]
|
||||
// CHECK:STDOUT: %self.param: @Convert.1.%Self.as_type.loc9_20.1 (%Self.as_type) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc9_20.3: type = splice_block %.loc9_20.2 [symbolic = %Self.as_type.loc9_20.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc9_20.1: @Convert.1.%ImplicitAs.type (%ImplicitAs.type.2) = specific_constant @ImplicitAs.%Self.1, @ImplicitAs(constants.%T) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.ref: @Convert.1.%ImplicitAs.type (%ImplicitAs.type.2) = name_ref Self, %.loc9_20.1 [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %.loc9_20.1: type = splice_block %.loc9_20.3 [symbolic = %Self.as_type.loc9_20.1 (constants.%Self.as_type)] {
|
||||
// CHECK:STDOUT: %.loc9_20.2: @Convert.1.%ImplicitAs.type (%ImplicitAs.type.2) = specific_constant @ImplicitAs.%Self.1, @ImplicitAs(constants.%T) [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.ref: @Convert.1.%ImplicitAs.type (%ImplicitAs.type.2) = name_ref Self, %.loc9_20.2 [symbolic = %Self (constants.%Self)]
|
||||
// CHECK:STDOUT: %Self.as_type.loc9_20.2: type = facet_access_type %Self.ref [symbolic = %Self.as_type.loc9_20.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc9_20.2: type = converted %Self.ref, %Self.as_type.loc9_20.2 [symbolic = %Self.as_type.loc9_20.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: %.loc9_20.3: type = converted %Self.ref, %Self.as_type.loc9_20.2 [symbolic = %Self.as_type.loc9_20.1 (constants.%Self.as_type)]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %self: @Convert.1.%Self.as_type.loc9_20.1 (%Self.as_type) = bind_name self, %self.param
|
||||
// CHECK:STDOUT: %return.param: ref @Convert.1.%T (%T) = out_param runtime_param1
|
||||
@@ -402,11 +402,11 @@ fn F0(n: i32) -> P.D {
|
||||
// CHECK:STDOUT: %N.param_patt: %i32.builtin = value_param_pattern %N.patt.loc6_9.1, runtime_param<invalid> [symbolic = %N.patt.loc6_9.2 (constants.%N.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %N.param: %i32.builtin = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc6_13.3: type = splice_block %.loc6_13.2 [template = constants.%i32.builtin] {
|
||||
// CHECK:STDOUT: %.loc6_13.1: type = splice_block %.loc6_13.3 [template = constants.%i32.builtin] {
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %int.make_type_signed: init type = call constants.%Int(%int_32) [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc6_13.1: type = value_of_initializer %int.make_type_signed [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc6_13.2: type = converted %int.make_type_signed, %.loc6_13.1 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc6_13.2: type = value_of_initializer %int.make_type_signed [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc6_13.3: type = converted %int.make_type_signed, %.loc6_13.2 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %N.loc6_9.1: %i32.builtin = bind_symbolic_name N, 0, %N.param [symbolic = %N.loc6_9.2 (constants.%N)]
|
||||
// CHECK:STDOUT: }
|
||||
@@ -1192,11 +1192,11 @@ fn F0(n: i32) -> P.D {
|
||||
// CHECK:STDOUT: %P.ref.loc7: <namespace> = name_ref P, imports.%P [template = imports.%P]
|
||||
// CHECK:STDOUT: %D.ref: type = name_ref D, imports.%import_ref.2 [template = constants.%D]
|
||||
// CHECK:STDOUT: %n.param: %i32.builtin = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc7_10.3: type = splice_block %.loc7_10.2 [template = constants.%i32.builtin] {
|
||||
// CHECK:STDOUT: %.loc7_10.1: type = splice_block %.loc7_10.3 [template = constants.%i32.builtin] {
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %int.make_type_signed: init type = call constants.%Int(%int_32) [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc7_10.1: type = value_of_initializer %int.make_type_signed [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc7_10.2: type = converted %int.make_type_signed, %.loc7_10.1 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc7_10.2: type = value_of_initializer %int.make_type_signed [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: %.loc7_10.3: type = converted %int.make_type_signed, %.loc7_10.2 [template = constants.%i32.builtin]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %n: %i32.builtin = bind_name n, %n.param
|
||||
// CHECK:STDOUT: %return.param: ref %D = out_param runtime_param1
|
||||
|
||||
@@ -88,10 +88,10 @@ fn EnclosingButAfter(b: bool) -> i32 {
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %b.param: bool = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc21_25.3: type = splice_block %.loc21_25.2 [template = bool] {
|
||||
// CHECK:STDOUT: %.loc21_25.1: type = splice_block %.loc21_25.3 [template = bool] {
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc21_25.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc21_25.2: type = converted %bool.make_type, %.loc21_25.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc21_25.2: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc21_25.3: type = converted %bool.make_type, %.loc21_25.2 [template = bool]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %b: bool = bind_name b, %b.param
|
||||
// CHECK:STDOUT: %return.param: ref %i32 = out_param runtime_param1
|
||||
|
||||
+3
-3
@@ -131,13 +131,13 @@ var c_bad: C((3, 4)) = F();
|
||||
// CHECK:STDOUT: %X.param_patt: %tuple.type.8 = value_param_pattern %X.patt.loc7_9.1, runtime_param<invalid> [symbolic = %X.patt.loc7_9.2 (constants.%X.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %X.param: %tuple.type.8 = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc7_22.3: type = splice_block %.loc7_22.2 [template = constants.%tuple.type.8] {
|
||||
// CHECK:STDOUT: %.loc7_22.1: type = splice_block %.loc7_22.3 [template = constants.%tuple.type.8] {
|
||||
// CHECK:STDOUT: %int_32.loc7_14: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32.loc7_14: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %int_32.loc7_19: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32.loc7_19: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %.loc7_22.1: %tuple.type.5 = tuple_literal (%i32.loc7_14, %i32.loc7_19)
|
||||
// CHECK:STDOUT: %.loc7_22.2: type = converted %.loc7_22.1, constants.%tuple.type.8 [template = constants.%tuple.type.8]
|
||||
// CHECK:STDOUT: %.loc7_22.2: %tuple.type.5 = tuple_literal (%i32.loc7_14, %i32.loc7_19)
|
||||
// CHECK:STDOUT: %.loc7_22.3: type = converted %.loc7_22.2, constants.%tuple.type.8 [template = constants.%tuple.type.8]
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %X.loc7_9.1: %tuple.type.8 = bind_symbolic_name X, 0, %X.param [symbolic = %X.loc7_9.2 (constants.%X)]
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+16
-16
@@ -174,12 +174,12 @@ fn NotEmptyStruct() {
|
||||
// CHECK:STDOUT: %U.param_patt: %I_where.type = value_param_pattern %U.patt.loc11_15.1, runtime_param<invalid> [symbolic = %U.patt.loc11_15.2 (constants.%U.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %U.param: %I_where.type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc11_21.2: type = splice_block %.loc11_21.1 [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: %.loc11_21.1: type = splice_block %.loc11_21.2 [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: %I.ref: type = name_ref I, file.%I.decl [template = constants.%I.type]
|
||||
// CHECK:STDOUT: %.Self: %I.type = bind_symbolic_name .Self [symbolic = constants.%.Self.1]
|
||||
// CHECK:STDOUT: %.Self.ref: %I.type = name_ref .Self, %.Self [symbolic = constants.%.Self.1]
|
||||
// CHECK:STDOUT: %.loc11_37: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc11_21.1: type = where_expr %.Self [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: %.loc11_21.2: type = where_expr %.Self [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: requirement_equivalent %.Self.ref, %.loc11_37
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -190,14 +190,14 @@ fn NotEmptyStruct() {
|
||||
// CHECK:STDOUT: %V.param_patt: %J_where.type = value_param_pattern %V.patt.loc13_10.1, runtime_param<invalid> [symbolic = %V.patt.loc13_10.2 (constants.%V.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %V.param: %J_where.type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc13_16.2: type = splice_block %.loc13_16.1 [template = constants.%J_where.type] {
|
||||
// CHECK:STDOUT: %.loc13_16.1: type = splice_block %.loc13_16.2 [template = constants.%J_where.type] {
|
||||
// CHECK:STDOUT: %J.ref: type = name_ref J, file.%J.decl [template = constants.%J.type]
|
||||
// CHECK:STDOUT: %.Self: %J.type = bind_symbolic_name .Self [symbolic = constants.%.Self.2]
|
||||
// CHECK:STDOUT: %.Self.ref: %J.type = name_ref .Self, %.Self [symbolic = constants.%.Self.2]
|
||||
// CHECK:STDOUT: %I.ref: type = name_ref I, file.%I.decl [template = constants.%I.type]
|
||||
// CHECK:STDOUT: %.Self.as_type: type = facet_access_type %.Self.ref [symbolic = constants.%.Self.as_type.1]
|
||||
// CHECK:STDOUT: %.loc13_22: type = converted %.Self.ref, %.Self.as_type [symbolic = constants.%.Self.as_type.1]
|
||||
// CHECK:STDOUT: %.loc13_16.1: type = where_expr %.Self [template = constants.%J_where.type] {
|
||||
// CHECK:STDOUT: %.loc13_16.2: type = where_expr %.Self [template = constants.%J_where.type] {
|
||||
// CHECK:STDOUT: requirement_impls %.loc13_22, %I.ref
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -208,7 +208,7 @@ fn NotEmptyStruct() {
|
||||
// CHECK:STDOUT: %W.param_patt: %I_where.type = value_param_pattern %W.patt.loc15_8.1, runtime_param<invalid> [symbolic = %W.patt.loc15_8.2 (constants.%W.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %W.param: %I_where.type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc15_14.2: type = splice_block %.loc15_14.1 [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: %.loc15_14.1: type = splice_block %.loc15_14.2 [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: %I.ref: type = name_ref I, file.%I.decl [template = constants.%I.type]
|
||||
// CHECK:STDOUT: %.Self: %I.type = bind_symbolic_name .Self [symbolic = constants.%.Self.1]
|
||||
// CHECK:STDOUT: %.Self.ref.loc15_20: %I.type = name_ref .Self, %.Self [symbolic = constants.%.Self.1]
|
||||
@@ -220,7 +220,7 @@ fn NotEmptyStruct() {
|
||||
// CHECK:STDOUT: %.Self.as_wit: <witness> = facet_access_witness %.Self.ref.loc15_38 [symbolic = constants.%.Self.as_wit]
|
||||
// CHECK:STDOUT: %impl.elem0: type = interface_witness_access %.Self.as_wit, element0 [symbolic = constants.%impl.elem0]
|
||||
// CHECK:STDOUT: %.loc15_50: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc15_14.1: type = where_expr %.Self [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: %.loc15_14.2: type = where_expr %.Self [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: requirement_impls %.loc15_20, %J.ref
|
||||
// CHECK:STDOUT: requirement_equivalent %impl.elem0, %.loc15_50
|
||||
// CHECK:STDOUT: }
|
||||
@@ -333,7 +333,7 @@ fn NotEmptyStruct() {
|
||||
// CHECK:STDOUT: %W.param_patt: %K_where.type = value_param_pattern %W.patt.loc11_24.1, runtime_param<invalid> [symbolic = %W.patt.loc11_24.2 (constants.%W.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %W.param: %K_where.type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc11_30.2: type = splice_block %.loc11_30.1 [template = constants.%K_where.type] {
|
||||
// CHECK:STDOUT: %.loc11_30.1: type = splice_block %.loc11_30.2 [template = constants.%K_where.type] {
|
||||
// CHECK:STDOUT: %K.ref: type = name_ref K, file.%K.decl [template = constants.%K.type]
|
||||
// CHECK:STDOUT: %.Self: %K.type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.Self.ref: %K.type = name_ref .Self, %.Self [symbolic = constants.%.Self]
|
||||
@@ -343,7 +343,7 @@ fn NotEmptyStruct() {
|
||||
// CHECK:STDOUT: %M.ref: type = name_ref M, file.%M.decl [template = constants.%M.type]
|
||||
// CHECK:STDOUT: %as_type: type = facet_access_type %impl.elem0 [symbolic = constants.%as_type]
|
||||
// CHECK:STDOUT: %.loc11_36: type = converted %impl.elem0, %as_type [symbolic = constants.%as_type]
|
||||
// CHECK:STDOUT: %.loc11_30.1: type = where_expr %.Self [template = constants.%K_where.type] {
|
||||
// CHECK:STDOUT: %.loc11_30.2: type = where_expr %.Self [template = constants.%K_where.type] {
|
||||
// CHECK:STDOUT: requirement_impls %.loc11_36, %M.ref
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -421,11 +421,11 @@ fn NotEmptyStruct() {
|
||||
// CHECK:STDOUT: %U.param_patt: %type_where = value_param_pattern %U.patt.loc11_17.1, runtime_param<invalid> [symbolic = %U.patt.loc11_17.2 (constants.%U.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %U.param: %type_where = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc11_26.2: type = splice_block %.loc11_26.1 [template = constants.%type_where] {
|
||||
// CHECK:STDOUT: %.loc11_26.1: type = splice_block %.loc11_26.2 [template = constants.%type_where] {
|
||||
// CHECK:STDOUT: %.Self: type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %int_7: Core.IntLiteral = int_value 7 [template = constants.%int_7]
|
||||
// CHECK:STDOUT: %.loc11_32: type = converted %int_7, <error> [template = <error>]
|
||||
// CHECK:STDOUT: %.loc11_26.1: type = where_expr %.Self [template = constants.%type_where] {
|
||||
// CHECK:STDOUT: %.loc11_26.2: type = where_expr %.Self [template = constants.%type_where] {
|
||||
// CHECK:STDOUT: requirement_impls <error>, type
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -476,12 +476,12 @@ fn NotEmptyStruct() {
|
||||
// CHECK:STDOUT: %U.param_patt: %type_where = value_param_pattern %U.patt.loc11_17.1, runtime_param<invalid> [symbolic = %U.patt.loc11_17.2 (constants.%U.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %U.param: %type_where = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc11_26.2: type = splice_block %.loc11_26.1 [template = constants.%type_where] {
|
||||
// CHECK:STDOUT: %.loc11_26.1: type = splice_block %.loc11_26.2 [template = constants.%type_where] {
|
||||
// CHECK:STDOUT: %.Self: type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.Self.ref: type = name_ref .Self, %.Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %int_7: Core.IntLiteral = int_value 7 [template = constants.%int_7]
|
||||
// CHECK:STDOUT: %.loc11_44: type = converted %int_7, <error> [template = <error>]
|
||||
// CHECK:STDOUT: %.loc11_26.1: type = where_expr %.Self [template = constants.%type_where] {
|
||||
// CHECK:STDOUT: %.loc11_26.2: type = where_expr %.Self [template = constants.%type_where] {
|
||||
// CHECK:STDOUT: requirement_impls %.Self.ref, <error>
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -533,12 +533,12 @@ fn NotEmptyStruct() {
|
||||
// CHECK:STDOUT: %U.param_patt: %type_where = value_param_pattern %U.patt.loc8_24.1, runtime_param<invalid> [symbolic = %U.patt.loc8_24.2 (constants.%U.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %U.param: %type_where = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc8_33.2: type = splice_block %.loc8_33.1 [template = constants.%type_where] {
|
||||
// CHECK:STDOUT: %.loc8_33.1: type = splice_block %.loc8_33.2 [template = constants.%type_where] {
|
||||
// CHECK:STDOUT: %.Self: type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.Self.ref: type = name_ref .Self, %.Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %.loc8_33.1: type = where_expr %.Self [template = constants.%type_where] {
|
||||
// CHECK:STDOUT: %.loc8_33.2: type = where_expr %.Self [template = constants.%type_where] {
|
||||
// CHECK:STDOUT: requirement_impls %.Self.ref, <error>
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -622,12 +622,12 @@ fn NotEmptyStruct() {
|
||||
// CHECK:STDOUT: %Y.param_patt: %J_where.type = value_param_pattern %Y.patt.loc26_16.1, runtime_param<invalid> [symbolic = %Y.patt.loc26_16.2 (constants.%Y.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %Y.param: %J_where.type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc26_22.2: type = splice_block %.loc26_22.1 [template = constants.%J_where.type] {
|
||||
// CHECK:STDOUT: %.loc26_22.1: type = splice_block %.loc26_22.2 [template = constants.%J_where.type] {
|
||||
// CHECK:STDOUT: %J.ref: type = name_ref J, imports.%import_ref.1 [template = constants.%J.type]
|
||||
// CHECK:STDOUT: %.Self: %J.type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.Self.ref: %J.type = name_ref .Self, %.Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.loc26_38: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc26_22.1: type = where_expr %.Self [template = constants.%J_where.type] {
|
||||
// CHECK:STDOUT: %.loc26_22.2: type = where_expr %.Self [template = constants.%J_where.type] {
|
||||
// CHECK:STDOUT: requirement_equivalent %.Self.ref, %.loc26_38
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+8
-8
@@ -136,12 +136,12 @@ class D {
|
||||
// CHECK:STDOUT: %T.param_patt: %I_where.type = value_param_pattern %T.patt.loc8_15.1, runtime_param<invalid> [symbolic = %T.patt.loc8_15.2 (constants.%T.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %T.param: %I_where.type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc8_21.2: type = splice_block %.loc8_21.1 [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: %.loc8_21.1: type = splice_block %.loc8_21.2 [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: %I.ref: type = name_ref I, file.%I.decl [template = constants.%I.type]
|
||||
// CHECK:STDOUT: %.Self: %I.type = bind_symbolic_name .Self [symbolic = constants.%.Self.1]
|
||||
// CHECK:STDOUT: %.Self.ref: %I.type = name_ref .Self, %.Self [symbolic = constants.%.Self.1]
|
||||
// CHECK:STDOUT: %.loc8_37: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc8_21.1: type = where_expr %.Self [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: %.loc8_21.2: type = where_expr %.Self [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: requirement_equivalent %.Self.ref, %.loc8_37
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -152,7 +152,7 @@ class D {
|
||||
// CHECK:STDOUT: %U.param_patt: %I_where.type = value_param_pattern %U.patt.loc10_17.1, runtime_param<invalid> [symbolic = %U.patt.loc10_17.2 (constants.%U.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %U.param: %I_where.type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc10_23.2: type = splice_block %.loc10_23.1 [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: %.loc10_23.1: type = splice_block %.loc10_23.2 [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: %I.ref: type = name_ref I, file.%I.decl [template = constants.%I.type]
|
||||
// CHECK:STDOUT: %.Self: %I.type = bind_symbolic_name .Self [symbolic = constants.%.Self.1]
|
||||
// CHECK:STDOUT: %.Self.ref: %I.type = name_ref .Self, %.Self [symbolic = constants.%.Self.1]
|
||||
@@ -160,7 +160,7 @@ class D {
|
||||
// CHECK:STDOUT: %.Self.as_wit: <witness> = facet_access_witness %.Self.ref [symbolic = constants.%.Self.as_wit]
|
||||
// CHECK:STDOUT: %impl.elem0: type = interface_witness_access %.Self.as_wit, element0 [symbolic = constants.%impl.elem0]
|
||||
// CHECK:STDOUT: %.loc10_41: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc10_23.1: type = where_expr %.Self [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: %.loc10_23.2: type = where_expr %.Self [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: requirement_equivalent %impl.elem0, %.loc10_41
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -171,11 +171,11 @@ class D {
|
||||
// CHECK:STDOUT: %V.param_patt: %type_where = value_param_pattern %V.patt.loc12_18.1, runtime_param<invalid> [symbolic = %V.patt.loc12_18.2 (constants.%V.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %V.param: %type_where = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc12_27.2: type = splice_block %.loc12_27.1 [template = constants.%type_where] {
|
||||
// CHECK:STDOUT: %.loc12_27.1: type = splice_block %.loc12_27.2 [template = constants.%type_where] {
|
||||
// CHECK:STDOUT: %.Self: type = bind_symbolic_name .Self [symbolic = constants.%.Self.2]
|
||||
// CHECK:STDOUT: %.Self.ref: type = name_ref .Self, %.Self [symbolic = constants.%.Self.2]
|
||||
// CHECK:STDOUT: %I.ref: type = name_ref I, file.%I.decl [template = constants.%I.type]
|
||||
// CHECK:STDOUT: %.loc12_27.1: type = where_expr %.Self [template = constants.%type_where] {
|
||||
// CHECK:STDOUT: %.loc12_27.2: type = where_expr %.Self [template = constants.%type_where] {
|
||||
// CHECK:STDOUT: requirement_impls %.Self.ref, %I.ref
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -264,13 +264,13 @@ class D {
|
||||
// CHECK:STDOUT: %W.param_patt: <error> = value_param_pattern %W.patt.loc12_19.1, runtime_param<invalid> [symbolic = %W.patt.loc12_19.2 (constants.%W.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %W.param: <error> = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc12_25.2: type = splice_block %.loc12_25.1 [template = <error>] {
|
||||
// CHECK:STDOUT: %.loc12_25.1: type = splice_block %.loc12_25.2 [template = <error>] {
|
||||
// CHECK:STDOUT: %J.ref: type = name_ref J, file.%J.decl [template = constants.%J.type]
|
||||
// CHECK:STDOUT: %.Self: %J.type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.Self.ref: %J.type = name_ref .Self, %.Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %Mismatch.ref: <error> = name_ref Mismatch, <error> [template = <error>]
|
||||
// CHECK:STDOUT: %.loc12_44: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc12_25.1: type = where_expr %.Self [template = <error>] {
|
||||
// CHECK:STDOUT: %.loc12_25.2: type = where_expr %.Self [template = <error>] {
|
||||
// CHECK:STDOUT: requirement_rewrite %Mismatch.ref, <error>
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
@@ -103,7 +103,7 @@ fn G(U: Empty(i32) where .A = i32*) {
|
||||
// CHECK:STDOUT: %T.param: type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %T.loc18_6.1: type = bind_symbolic_name T, 0, %T.param [symbolic = %T.loc18_6.2 (constants.%T)]
|
||||
// CHECK:STDOUT: %U.param: @H.%Empty_where.type (%Empty_where.type.1) = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc18_28.2: type = splice_block %.loc18_28.1 [symbolic = %Empty_where.type (constants.%Empty_where.type.1)] {
|
||||
// CHECK:STDOUT: %.loc18_28.1: type = splice_block %.loc18_28.2 [symbolic = %Empty_where.type (constants.%Empty_where.type.1)] {
|
||||
// CHECK:STDOUT: %Empty.ref: %Empty.type.1 = name_ref Empty, file.%Empty.decl [template = constants.%Empty.generic]
|
||||
// CHECK:STDOUT: %T.ref.loc18_25: type = name_ref T, %T.loc18_6.1 [symbolic = %T.loc18_6.2 (constants.%T)]
|
||||
// CHECK:STDOUT: %Empty.type.loc18_26.1: type = facet_type <@Empty, @Empty(constants.%T)> [symbolic = %Empty.type.loc18_26.2 (constants.%Empty.type.3)]
|
||||
@@ -115,7 +115,7 @@ fn G(U: Empty(i32) where .A = i32*) {
|
||||
// CHECK:STDOUT: %impl.elem0.loc18_34.1: type = interface_witness_access %.Self.as_wit.loc18_34.1, element0 [symbolic = %impl.elem0.loc18_34.2 (constants.%impl.elem0.1)]
|
||||
// CHECK:STDOUT: %T.ref.loc18_39: type = name_ref T, %T.loc18_6.1 [symbolic = %T.loc18_6.2 (constants.%T)]
|
||||
// CHECK:STDOUT: %ptr.loc18_40.1: type = ptr_type %T [symbolic = %ptr.loc18_40.2 (constants.%ptr.1)]
|
||||
// CHECK:STDOUT: %.loc18_28.1: type = where_expr %.Self.1 [symbolic = %Empty_where.type (constants.%Empty_where.type.1)] {
|
||||
// CHECK:STDOUT: %.loc18_28.2: type = where_expr %.Self.1 [symbolic = %Empty_where.type (constants.%Empty_where.type.1)] {
|
||||
// CHECK:STDOUT: requirement_rewrite %impl.elem0.loc18_34.1, %ptr.loc18_40.1
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -128,7 +128,7 @@ fn G(U: Empty(i32) where .A = i32*) {
|
||||
// CHECK:STDOUT: %U.param_patt: %Empty_where.type.2 = value_param_pattern %U.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %U.param: %Empty_where.type.2 = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc20_20.2: type = splice_block %.loc20_20.1 [template = constants.%Empty_where.type.2] {
|
||||
// CHECK:STDOUT: %.loc20_20.1: type = splice_block %.loc20_20.2 [template = constants.%Empty_where.type.2] {
|
||||
// CHECK:STDOUT: %Empty.ref: %Empty.type.1 = name_ref Empty, file.%Empty.decl [template = constants.%Empty.generic]
|
||||
// CHECK:STDOUT: %int_32.loc20_15: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32.loc20_15: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
@@ -142,7 +142,7 @@ fn G(U: Empty(i32) where .A = i32*) {
|
||||
// CHECK:STDOUT: %int_32.loc20_31: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32.loc20_31: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %ptr: type = ptr_type %i32 [template = constants.%ptr.2]
|
||||
// CHECK:STDOUT: %.loc20_20.1: type = where_expr %.Self [template = constants.%Empty_where.type.2] {
|
||||
// CHECK:STDOUT: %.loc20_20.2: type = where_expr %.Self [template = constants.%Empty_where.type.2] {
|
||||
// CHECK:STDOUT: requirement_rewrite %impl.elem0, %ptr
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+24
-24
@@ -256,7 +256,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %T.param_patt: %N_where.type = value_param_pattern %T.patt.loc8_10.1, runtime_param<invalid> [symbolic = %T.patt.loc8_10.2 (constants.%T.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %T.param: %N_where.type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc8_16.2: type = splice_block %.loc8_16.1 [template = constants.%N_where.type] {
|
||||
// CHECK:STDOUT: %.loc8_16.1: type = splice_block %.loc8_16.2 [template = constants.%N_where.type] {
|
||||
// CHECK:STDOUT: %N.ref: type = name_ref N, file.%N.decl [template = constants.%N.type]
|
||||
// CHECK:STDOUT: %.Self: %N.type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.Self.ref: %N.type = name_ref .Self, %.Self [symbolic = constants.%.Self]
|
||||
@@ -265,7 +265,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %impl.elem0: type = interface_witness_access %.Self.as_wit, element0 [symbolic = constants.%impl.elem0]
|
||||
// CHECK:STDOUT: %.loc8_28.1: %empty_struct_type = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc8_28.2: type = converted %.loc8_28.1, constants.%empty_struct_type [template = constants.%empty_struct_type]
|
||||
// CHECK:STDOUT: %.loc8_16.1: type = where_expr %.Self [template = constants.%N_where.type] {
|
||||
// CHECK:STDOUT: %.loc8_16.2: type = where_expr %.Self [template = constants.%N_where.type] {
|
||||
// CHECK:STDOUT: requirement_rewrite %impl.elem0, %.loc8_28.2
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -342,7 +342,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %D.param_patt: %A_where.type.2 = value_param_pattern %D.patt.loc9_18.1, runtime_param<invalid> [symbolic = %D.patt.loc9_18.2 (constants.%D.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %D.param: %A_where.type.2 = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc9_42.2: type = splice_block %.loc9_42.1 [template = constants.%A_where.type.2] {
|
||||
// CHECK:STDOUT: %.loc9_42.1: type = splice_block %.loc9_42.2 [template = constants.%A_where.type.2] {
|
||||
// CHECK:STDOUT: %A.ref: type = name_ref A, file.%A.decl [template = constants.%A.type]
|
||||
// CHECK:STDOUT: %.Self.1: %A.type = bind_symbolic_name .Self [symbolic = constants.%.Self.1]
|
||||
// CHECK:STDOUT: %.Self.ref.loc9_31: %A.type = name_ref .Self, %.Self.1 [symbolic = constants.%.Self.1]
|
||||
@@ -362,7 +362,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %impl.elem1: type = interface_witness_access %.Self.as_wit.loc9_48, element1 [symbolic = constants.%impl.elem1]
|
||||
// CHECK:STDOUT: %.loc9_54.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc9_54.2: type = converted %.loc9_54.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc9_42.1: type = where_expr %.Self.2 [template = constants.%A_where.type.2] {
|
||||
// CHECK:STDOUT: %.loc9_42.2: type = where_expr %.Self.2 [template = constants.%A_where.type.2] {
|
||||
// CHECK:STDOUT: requirement_rewrite %impl.elem1, %.loc9_54.2
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -450,7 +450,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %G.param_patt: %E_where.type = value_param_pattern %G.patt.loc8_15.1, runtime_param<invalid> [symbolic = %G.patt.loc8_15.2 (constants.%G.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %G.param: %E_where.type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc8_21.2: type = splice_block %.loc8_21.1 [template = constants.%E_where.type] {
|
||||
// CHECK:STDOUT: %.loc8_21.1: type = splice_block %.loc8_21.2 [template = constants.%E_where.type] {
|
||||
// CHECK:STDOUT: %E.ref: type = name_ref E, file.%E.decl [template = constants.%E.type]
|
||||
// CHECK:STDOUT: %.Self: %E.type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.Self.ref: %E.type = name_ref .Self, %.Self [symbolic = constants.%.Self]
|
||||
@@ -459,7 +459,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %impl.elem0: type = interface_witness_access %.Self.as_wit, element0 [symbolic = constants.%impl.elem0]
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %.loc8_21.1: type = where_expr %.Self [template = constants.%E_where.type] {
|
||||
// CHECK:STDOUT: %.loc8_21.2: type = where_expr %.Self [template = constants.%E_where.type] {
|
||||
// CHECK:STDOUT: requirement_rewrite %impl.elem0, %i32
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -470,7 +470,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %H.param_patt: %E_where.type = value_param_pattern %H.patt.loc10_20.1, runtime_param<invalid> [symbolic = %H.patt.loc10_20.2 (constants.%H.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %H.param: %E_where.type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc10_26.2: type = splice_block %.loc10_26.1 [template = constants.%E_where.type] {
|
||||
// CHECK:STDOUT: %.loc10_26.1: type = splice_block %.loc10_26.2 [template = constants.%E_where.type] {
|
||||
// CHECK:STDOUT: %E.ref: type = name_ref E, file.%E.decl [template = constants.%E.type]
|
||||
// CHECK:STDOUT: %.Self: %E.type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.Self.ref.loc10_32: %E.type = name_ref .Self, %.Self [symbolic = constants.%.Self]
|
||||
@@ -485,7 +485,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %impl.elem0.loc10_45: type = interface_witness_access %.Self.as_wit.loc10_45, element0 [symbolic = constants.%impl.elem0]
|
||||
// CHECK:STDOUT: %int_32.loc10_50: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32.loc10_50: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %.loc10_26.1: type = where_expr %.Self [template = constants.%E_where.type] {
|
||||
// CHECK:STDOUT: %.loc10_26.2: type = where_expr %.Self [template = constants.%E_where.type] {
|
||||
// CHECK:STDOUT: requirement_rewrite %impl.elem0.loc10_32, %i32.loc10_37
|
||||
// CHECK:STDOUT: requirement_rewrite %impl.elem0.loc10_45, %i32.loc10_50
|
||||
// CHECK:STDOUT: }
|
||||
@@ -497,7 +497,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %I.param_patt: %E_where.type = value_param_pattern %I.patt.loc14_20.1, runtime_param<invalid> [symbolic = %I.patt.loc14_20.2 (constants.%I.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %I.param: %E_where.type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc14_26.2: type = splice_block %.loc14_26.1 [template = constants.%E_where.type] {
|
||||
// CHECK:STDOUT: %.loc14_26.1: type = splice_block %.loc14_26.2 [template = constants.%E_where.type] {
|
||||
// CHECK:STDOUT: %E.ref: type = name_ref E, file.%E.decl [template = constants.%E.type]
|
||||
// CHECK:STDOUT: %.Self: %E.type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.Self.ref: %E.type = name_ref .Self, %.Self [symbolic = constants.%.Self]
|
||||
@@ -506,7 +506,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %impl.elem0: type = interface_witness_access %.Self.as_wit, element0 [symbolic = constants.%impl.elem0]
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %.loc14_26.1: type = where_expr %.Self [template = constants.%E_where.type] {
|
||||
// CHECK:STDOUT: %.loc14_26.2: type = where_expr %.Self [template = constants.%E_where.type] {
|
||||
// CHECK:STDOUT: requirement_rewrite %impl.elem0, %i32
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -659,7 +659,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %M.param_patt: %J_where.type = value_param_pattern %M.patt.loc9_17.1, runtime_param<invalid> [symbolic = %M.patt.loc9_17.2 (constants.%M.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %M.param: %J_where.type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc9_23.2: type = splice_block %.loc9_23.1 [template = constants.%J_where.type] {
|
||||
// CHECK:STDOUT: %.loc9_23.1: type = splice_block %.loc9_23.2 [template = constants.%J_where.type] {
|
||||
// CHECK:STDOUT: %J.ref: type = name_ref J, file.%J.decl [template = constants.%J.type]
|
||||
// CHECK:STDOUT: %.Self: %J.type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.Self.ref.loc9_29: %J.type = name_ref .Self, %.Self [symbolic = constants.%.Self]
|
||||
@@ -675,7 +675,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc9_46.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc9_46.2: type = converted %bool.make_type, %.loc9_46.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc9_23.1: type = where_expr %.Self [template = constants.%J_where.type] {
|
||||
// CHECK:STDOUT: %.loc9_23.2: type = where_expr %.Self [template = constants.%J_where.type] {
|
||||
// CHECK:STDOUT: requirement_rewrite %impl.elem0, %.loc9_35.2
|
||||
// CHECK:STDOUT: requirement_rewrite %impl.elem1, %.loc9_46.2
|
||||
// CHECK:STDOUT: }
|
||||
@@ -687,7 +687,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %N.param_patt: %J_where.type = value_param_pattern %N.patt.loc11_13.1, runtime_param<invalid> [symbolic = %N.patt.loc11_13.2 (constants.%N.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %N.param: %J_where.type = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc11_19.2: type = splice_block %.loc11_19.1 [template = constants.%J_where.type] {
|
||||
// CHECK:STDOUT: %.loc11_19.1: type = splice_block %.loc11_19.2 [template = constants.%J_where.type] {
|
||||
// CHECK:STDOUT: %J.ref: type = name_ref J, file.%J.decl [template = constants.%J.type]
|
||||
// CHECK:STDOUT: %.Self: %J.type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.Self.ref.loc11_25: %J.type = name_ref .Self, %.Self [symbolic = constants.%.Self]
|
||||
@@ -703,7 +703,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %impl.elem0: type = interface_witness_access %.Self.as_wit.loc11_39, element0 [symbolic = constants.%impl.elem0]
|
||||
// CHECK:STDOUT: %.loc11_45.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc11_45.2: type = converted %.loc11_45.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc11_19.1: type = where_expr %.Self [template = constants.%J_where.type] {
|
||||
// CHECK:STDOUT: %.loc11_19.2: type = where_expr %.Self [template = constants.%J_where.type] {
|
||||
// CHECK:STDOUT: requirement_rewrite %impl.elem1, %.loc11_30.2
|
||||
// CHECK:STDOUT: requirement_rewrite %impl.elem0, %.loc11_45.2
|
||||
// CHECK:STDOUT: }
|
||||
@@ -824,7 +824,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %Q.param_patt: %O_where.type.1 = value_param_pattern %Q.patt.loc8_16.1, runtime_param<invalid> [symbolic = %Q.patt.loc8_16.2 (constants.%Q.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %Q.param: %O_where.type.1 = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc8_22.2: type = splice_block %.loc8_22.1 [template = constants.%O_where.type.1] {
|
||||
// CHECK:STDOUT: %.loc8_22.1: type = splice_block %.loc8_22.2 [template = constants.%O_where.type.1] {
|
||||
// CHECK:STDOUT: %O.ref: type = name_ref O, file.%O.decl [template = constants.%O.type]
|
||||
// CHECK:STDOUT: %.Self: %O.type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.Self.ref: %O.type = name_ref .Self, %.Self [symbolic = constants.%.Self]
|
||||
@@ -833,7 +833,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %impl.elem0: type = interface_witness_access %.Self.as_wit, element0 [symbolic = constants.%impl.elem0]
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %.loc8_22.1: type = where_expr %.Self [template = constants.%O_where.type.1] {
|
||||
// CHECK:STDOUT: %.loc8_22.2: type = where_expr %.Self [template = constants.%O_where.type.1] {
|
||||
// CHECK:STDOUT: requirement_rewrite %impl.elem0, %i32
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -844,7 +844,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %R.param_patt: %O_where.type.2 = value_param_pattern %R.patt.loc10_13.1, runtime_param<invalid> [symbolic = %R.patt.loc10_13.2 (constants.%R.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %R.param: %O_where.type.2 = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc10_19.2: type = splice_block %.loc10_19.1 [template = constants.%O_where.type.2] {
|
||||
// CHECK:STDOUT: %.loc10_19.1: type = splice_block %.loc10_19.2 [template = constants.%O_where.type.2] {
|
||||
// CHECK:STDOUT: %O.ref: type = name_ref O, file.%O.decl [template = constants.%O.type]
|
||||
// CHECK:STDOUT: %.Self: %O.type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.Self.ref: %O.type = name_ref .Self, %.Self [symbolic = constants.%.Self]
|
||||
@@ -854,7 +854,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc10_30.1: type = value_of_initializer %bool.make_type [template = bool]
|
||||
// CHECK:STDOUT: %.loc10_30.2: type = converted %bool.make_type, %.loc10_30.1 [template = bool]
|
||||
// CHECK:STDOUT: %.loc10_19.1: type = where_expr %.Self [template = constants.%O_where.type.2] {
|
||||
// CHECK:STDOUT: %.loc10_19.2: type = where_expr %.Self [template = constants.%O_where.type.2] {
|
||||
// CHECK:STDOUT: requirement_rewrite %impl.elem0, %.loc10_30.2
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -957,7 +957,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %V.param_patt: %S_where.type.1 = value_param_pattern %V.patt.loc9_10.1, runtime_param<invalid> [symbolic = %V.patt.loc9_10.2 (constants.%V.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %V.param: %S_where.type.1 = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc9_16.2: type = splice_block %.loc9_16.1 [template = constants.%S_where.type.1] {
|
||||
// CHECK:STDOUT: %.loc9_16.1: type = splice_block %.loc9_16.2 [template = constants.%S_where.type.1] {
|
||||
// CHECK:STDOUT: %S.ref: type = name_ref S, file.%S.decl [template = constants.%S.type]
|
||||
// CHECK:STDOUT: %.Self: %S.type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.Self.ref: %S.type = name_ref .Self, %.Self [symbolic = constants.%.Self]
|
||||
@@ -966,7 +966,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %impl.elem0: type = interface_witness_access %.Self.as_wit, element0 [symbolic = constants.%impl.elem0]
|
||||
// CHECK:STDOUT: %.loc9_28.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc9_28.2: type = converted %.loc9_28.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc9_16.1: type = where_expr %.Self [template = constants.%S_where.type.1] {
|
||||
// CHECK:STDOUT: %.loc9_16.2: type = where_expr %.Self [template = constants.%S_where.type.1] {
|
||||
// CHECK:STDOUT: requirement_rewrite %impl.elem0, %.loc9_28.2
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -977,7 +977,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %W.param_patt: %S_where.type.2 = value_param_pattern %W.patt.loc11_10.1, runtime_param<invalid> [symbolic = %W.patt.loc11_10.2 (constants.%W.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %W.param: %S_where.type.2 = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc11_16.2: type = splice_block %.loc11_16.1 [template = constants.%S_where.type.2] {
|
||||
// CHECK:STDOUT: %.loc11_16.1: type = splice_block %.loc11_16.2 [template = constants.%S_where.type.2] {
|
||||
// CHECK:STDOUT: %S.ref: type = name_ref S, file.%S.decl [template = constants.%S.type]
|
||||
// CHECK:STDOUT: %.Self: %S.type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.Self.ref: %S.type = name_ref .Self, %.Self [symbolic = constants.%.Self]
|
||||
@@ -986,7 +986,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %impl.elem1: type = interface_witness_access %.Self.as_wit, element1 [symbolic = constants.%impl.elem1]
|
||||
// CHECK:STDOUT: %.loc11_28.1: %empty_tuple.type = tuple_literal ()
|
||||
// CHECK:STDOUT: %.loc11_28.2: type = converted %.loc11_28.1, constants.%empty_tuple.type [template = constants.%empty_tuple.type]
|
||||
// CHECK:STDOUT: %.loc11_16.1: type = where_expr %.Self [template = constants.%S_where.type.2] {
|
||||
// CHECK:STDOUT: %.loc11_16.2: type = where_expr %.Self [template = constants.%S_where.type.2] {
|
||||
// CHECK:STDOUT: requirement_rewrite %impl.elem1, %.loc11_28.2
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -1204,7 +1204,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %X.param_patt: <error> = value_param_pattern %X.patt.loc16_24.1, runtime_param<invalid> [symbolic = %X.patt.loc16_24.2 (constants.%X.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %X.param: <error> = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc16_30.2: type = splice_block %.loc16_30.1 [template = <error>] {
|
||||
// CHECK:STDOUT: %.loc16_30.1: type = splice_block %.loc16_30.2 [template = <error>] {
|
||||
// CHECK:STDOUT: %I.ref: type = name_ref I, file.%I.decl [template = constants.%I.type]
|
||||
// CHECK:STDOUT: %.Self: %I.type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.Self.ref: %I.type = name_ref .Self, %.Self [symbolic = constants.%.Self]
|
||||
@@ -1213,7 +1213,7 @@ let K: (E where .F = .Self.G) = bool;
|
||||
// CHECK:STDOUT: %impl.elem0: type = interface_witness_access %.Self.as_wit, element0 [symbolic = constants.%impl.elem0]
|
||||
// CHECK:STDOUT: %int_2: Core.IntLiteral = int_value 2 [template = constants.%int_2]
|
||||
// CHECK:STDOUT: %.loc16_46: type = converted %int_2, <error> [template = <error>]
|
||||
// CHECK:STDOUT: %.loc16_30.1: type = where_expr %.Self [template = <error>] {
|
||||
// CHECK:STDOUT: %.loc16_30.2: type = where_expr %.Self [template = <error>] {
|
||||
// CHECK:STDOUT: requirement_rewrite %impl.elem0, <error>
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
@@ -69,13 +69,13 @@ var v: e where .x = 3;
|
||||
// CHECK:STDOUT: %T.param_patt: <error> = value_param_pattern %T.patt.loc8_6.1, runtime_param<invalid> [symbolic = %T.patt.loc8_6.2 (constants.%T.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %T.param: <error> = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc8_14.2: type = splice_block %.loc8_14.1 [template = <error>] {
|
||||
// CHECK:STDOUT: %.loc8_14.1: type = splice_block %.loc8_14.2 [template = <error>] {
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %.Self: <error> = bind_symbolic_name .Self [template = <error>]
|
||||
// CHECK:STDOUT: %.Self.ref: <error> = name_ref .Self, %.Self [template = <error>]
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc8_14.1: type = where_expr %.Self [template = <error>] {
|
||||
// CHECK:STDOUT: %.loc8_14.2: type = where_expr %.Self [template = <error>] {
|
||||
// CHECK:STDOUT: requirement_equivalent %.Self.ref, %bool.make_type
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
@@ -122,12 +122,12 @@ var v: e where .x = 3;
|
||||
// CHECK:STDOUT: %U.param_patt: <error> = value_param_pattern %U.patt.loc8_6.1, runtime_param<invalid> [symbolic = %U.patt.loc8_6.2 (constants.%U.patt)]
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %U.param: <error> = value_param runtime_param<invalid>
|
||||
// CHECK:STDOUT: %.loc8_23.2: type = splice_block %.loc8_23.1 [template = <error>] {
|
||||
// CHECK:STDOUT: %.loc8_23.1: type = splice_block %.loc8_23.2 [template = <error>] {
|
||||
// CHECK:STDOUT: %NOT_DECLARED.ref: <error> = name_ref NOT_DECLARED, <error> [template = <error>]
|
||||
// CHECK:STDOUT: %.Self: <error> = bind_symbolic_name .Self [template = <error>]
|
||||
// CHECK:STDOUT: %.Self.ref: <error> = name_ref .Self, %.Self [template = <error>]
|
||||
// CHECK:STDOUT: %bool.make_type: init type = call constants.%Bool() [template = bool]
|
||||
// CHECK:STDOUT: %.loc8_23.1: type = where_expr %.Self [template = <error>] {
|
||||
// CHECK:STDOUT: %.loc8_23.2: type = where_expr %.Self [template = <error>] {
|
||||
// CHECK:STDOUT: requirement_equivalent %.Self.ref, %bool.make_type
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+2
-2
@@ -51,7 +51,7 @@ fn NotGenericF(U: I where .T == i32) {}
|
||||
// CHECK:STDOUT: %U.param_patt: %I_where.type = value_param_pattern %U.patt, runtime_param0
|
||||
// CHECK:STDOUT: } {
|
||||
// CHECK:STDOUT: %U.param: %I_where.type = value_param runtime_param0
|
||||
// CHECK:STDOUT: %.loc14_21.2: type = splice_block %.loc14_21.1 [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: %.loc14_21.1: type = splice_block %.loc14_21.2 [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: %I.ref: type = name_ref I, file.%I.decl [template = constants.%I.type]
|
||||
// CHECK:STDOUT: %.Self: %I.type = bind_symbolic_name .Self [symbolic = constants.%.Self]
|
||||
// CHECK:STDOUT: %.Self.ref: %I.type = name_ref .Self, %.Self [symbolic = constants.%.Self]
|
||||
@@ -60,7 +60,7 @@ fn NotGenericF(U: I where .T == i32) {}
|
||||
// CHECK:STDOUT: %impl.elem0: type = interface_witness_access %.Self.as_wit, element0 [symbolic = constants.%impl.elem0]
|
||||
// CHECK:STDOUT: %int_32: Core.IntLiteral = int_value 32 [template = constants.%int_32]
|
||||
// CHECK:STDOUT: %i32: type = class_type @Int, @Int(constants.%int_32) [template = constants.%i32]
|
||||
// CHECK:STDOUT: %.loc14_21.1: type = where_expr %.Self [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: %.loc14_21.2: type = where_expr %.Self [template = constants.%I_where.type] {
|
||||
// CHECK:STDOUT: requirement_equivalent %impl.elem0, %i32
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
+4
-4
@@ -23,10 +23,10 @@ fn G() {
|
||||
// CHECK:STDOUT: entry:
|
||||
// CHECK:STDOUT: %v.var = alloca [2 x { i32, i32, i32 }], align 8, !dbg !7
|
||||
// CHECK:STDOUT: call void @llvm.lifetime.start.p0(i64 24, ptr %v.var), !dbg !7
|
||||
// CHECK:STDOUT: %.loc14_42.1.array.index = getelementptr inbounds [2 x { i32, i32, i32 }], ptr %v.var, i32 0, i64 0, !dbg !8
|
||||
// CHECK:STDOUT: call void @_CF.Main(ptr %.loc14_42.1.array.index), !dbg !9
|
||||
// CHECK:STDOUT: %.loc14_42.3.array.index = getelementptr inbounds [2 x { i32, i32, i32 }], ptr %v.var, i32 0, i64 1, !dbg !8
|
||||
// CHECK:STDOUT: call void @_CF.Main(ptr %.loc14_42.3.array.index), !dbg !10
|
||||
// CHECK:STDOUT: %.loc14_42.2.array.index = getelementptr inbounds [2 x { i32, i32, i32 }], ptr %v.var, i32 0, i64 0, !dbg !8
|
||||
// CHECK:STDOUT: call void @_CF.Main(ptr %.loc14_42.2.array.index), !dbg !9
|
||||
// CHECK:STDOUT: %.loc14_42.4.array.index = getelementptr inbounds [2 x { i32, i32, i32 }], ptr %v.var, i32 0, i64 1, !dbg !8
|
||||
// CHECK:STDOUT: call void @_CF.Main(ptr %.loc14_42.4.array.index), !dbg !10
|
||||
// CHECK:STDOUT: ret void, !dbg !11
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -5,6 +5,8 @@
|
||||
#include "toolchain/sem_ir/inst_namer.h"
|
||||
|
||||
#include "common/ostream.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
#include "llvm/ADT/SmallVector.h"
|
||||
#include "toolchain/base/kind_switch.h"
|
||||
#include "toolchain/base/shared_value_stores.h"
|
||||
#include "toolchain/lex/tokenized_buffer.h"
|
||||
@@ -355,9 +357,6 @@ auto InstNamer::AddBlockLabel(ScopeId scope_id, SemIR::LocId loc_id,
|
||||
AddBlockLabel(scope_id, branch.target_id, name.str(), loc_id);
|
||||
}
|
||||
|
||||
// TODO: Consider addressing recursion here. It may be important because
|
||||
// InstNamer is used for debug info.
|
||||
// NOLINTNEXTLINE(misc-no-recursion)
|
||||
auto InstNamer::CollectNamesInBlock(ScopeId scope_id, InstBlockId block_id)
|
||||
-> void {
|
||||
if (block_id.is_valid()) {
|
||||
@@ -365,16 +364,36 @@ auto InstNamer::CollectNamesInBlock(ScopeId scope_id, InstBlockId block_id)
|
||||
}
|
||||
}
|
||||
|
||||
// NOLINTNEXTLINE(misc-no-recursion): See above TODO.
|
||||
auto InstNamer::CollectNamesInBlock(ScopeId scope_id,
|
||||
auto InstNamer::CollectNamesInBlock(ScopeId top_scope_id,
|
||||
llvm::ArrayRef<InstId> block) -> void {
|
||||
Scope& scope = GetScopeInfo(scope_id);
|
||||
llvm::SmallVector<std::pair<ScopeId, InstId>> insts;
|
||||
|
||||
// Adds a scope and instructions to walk. Avoids recursion while allowing
|
||||
// the loop to below add more instructions during iteration. The new
|
||||
// instructions are queued such that they will be the next to be walked.
|
||||
// Internally that means they are reversed and added to the end of the vector,
|
||||
// since we pop from the back of the vector.
|
||||
auto queue_block_insts = [&](ScopeId scope_id,
|
||||
llvm::ArrayRef<InstId> inst_ids) {
|
||||
for (auto inst_id : llvm::reverse(inst_ids)) {
|
||||
if (inst_id.is_valid()) {
|
||||
insts.push_back(std::make_pair(scope_id, inst_id));
|
||||
}
|
||||
}
|
||||
};
|
||||
auto queue_block_id = [&](ScopeId scope_id, InstBlockId block_id) {
|
||||
if (block_id.is_valid()) {
|
||||
queue_block_insts(scope_id, sem_ir_->inst_blocks().Get(block_id));
|
||||
}
|
||||
};
|
||||
|
||||
queue_block_insts(top_scope_id, block);
|
||||
|
||||
// Use bound names where available. Otherwise, assign a backup name.
|
||||
for (auto inst_id : block) {
|
||||
if (!inst_id.is_valid()) {
|
||||
continue;
|
||||
}
|
||||
while (!insts.empty()) {
|
||||
auto [scope_id, inst_id] = insts.pop_back_val();
|
||||
|
||||
Scope& scope = GetScopeInfo(scope_id);
|
||||
|
||||
auto untyped_inst = sem_ir_->insts().Get(inst_id);
|
||||
auto add_inst_name = [&](std::string name) {
|
||||
@@ -512,8 +531,8 @@ auto InstNamer::CollectNamesInBlock(ScopeId scope_id,
|
||||
const auto& class_info = sem_ir_->classes().Get(inst.class_id);
|
||||
add_inst_name_id(class_info.name_id, ".decl");
|
||||
auto class_scope_id = GetScopeFor(inst.class_id);
|
||||
CollectNamesInBlock(class_scope_id, class_info.pattern_block_id);
|
||||
CollectNamesInBlock(class_scope_id, inst.decl_block_id);
|
||||
queue_block_id(class_scope_id, class_info.pattern_block_id);
|
||||
queue_block_id(class_scope_id, inst.decl_block_id);
|
||||
continue;
|
||||
}
|
||||
case CARBON_KIND(ClassType inst): {
|
||||
@@ -597,8 +616,8 @@ auto InstNamer::CollectNamesInBlock(ScopeId scope_id,
|
||||
const auto& function_info = sem_ir_->functions().Get(inst.function_id);
|
||||
add_inst_name_id(function_info.name_id, ".decl");
|
||||
auto function_scope_id = GetScopeFor(inst.function_id);
|
||||
CollectNamesInBlock(function_scope_id, function_info.pattern_block_id);
|
||||
CollectNamesInBlock(function_scope_id, inst.decl_block_id);
|
||||
queue_block_id(function_scope_id, function_info.pattern_block_id);
|
||||
queue_block_id(function_scope_id, inst.decl_block_id);
|
||||
continue;
|
||||
}
|
||||
case CARBON_KIND(FunctionType inst): {
|
||||
@@ -618,9 +637,9 @@ auto InstNamer::CollectNamesInBlock(ScopeId scope_id,
|
||||
}
|
||||
case CARBON_KIND(ImplDecl inst): {
|
||||
auto impl_scope_id = GetScopeFor(inst.impl_id);
|
||||
CollectNamesInBlock(
|
||||
impl_scope_id, sem_ir_->impls().Get(inst.impl_id).pattern_block_id);
|
||||
CollectNamesInBlock(impl_scope_id, inst.decl_block_id);
|
||||
queue_block_id(impl_scope_id,
|
||||
sem_ir_->impls().Get(inst.impl_id).pattern_block_id);
|
||||
queue_block_id(impl_scope_id, inst.decl_block_id);
|
||||
break;
|
||||
}
|
||||
case CARBON_KIND(ImportDecl inst): {
|
||||
@@ -641,7 +660,8 @@ auto InstNamer::CollectNamesInBlock(ScopeId scope_id,
|
||||
if (const_id.is_valid() && const_id.is_template()) {
|
||||
auto const_inst_id = sem_ir_->constant_values().GetInstId(const_id);
|
||||
if (!insts_[const_inst_id.index].second) {
|
||||
CollectNamesInBlock(ScopeId::ImportRefs, const_inst_id);
|
||||
queue_block_insts(ScopeId::ImportRefs,
|
||||
llvm::ArrayRef(const_inst_id));
|
||||
}
|
||||
}
|
||||
continue;
|
||||
@@ -651,9 +671,8 @@ auto InstNamer::CollectNamesInBlock(ScopeId scope_id,
|
||||
sem_ir_->interfaces().Get(inst.interface_id);
|
||||
add_inst_name_id(interface_info.name_id, ".decl");
|
||||
auto interface_scope_id = GetScopeFor(inst.interface_id);
|
||||
CollectNamesInBlock(interface_scope_id,
|
||||
interface_info.pattern_block_id);
|
||||
CollectNamesInBlock(interface_scope_id, inst.decl_block_id);
|
||||
queue_block_id(interface_scope_id, interface_info.pattern_block_id);
|
||||
queue_block_id(interface_scope_id, inst.decl_block_id);
|
||||
continue;
|
||||
}
|
||||
case InterfaceWitness::Kind: {
|
||||
@@ -733,7 +752,7 @@ auto InstNamer::CollectNamesInBlock(ScopeId scope_id,
|
||||
break;
|
||||
}
|
||||
case CARBON_KIND(SpliceBlock inst): {
|
||||
CollectNamesInBlock(scope_id, inst.block_id);
|
||||
queue_block_id(scope_id, inst.block_id);
|
||||
break;
|
||||
}
|
||||
case StringLiteral::Kind: {
|
||||
|
||||
Reference in New Issue
Block a user