|
50 | 50 |
|
51 | 51 | ;; CHECK: (type $17 (func (param externref (ref $0)) (result i32))) |
52 | 52 |
|
53 | | - ;; CHECK: (type $18 (func (param (ref $0)))) |
| 53 | + ;; CHECK: (type $18 (func (param externref externref) (result (ref extern)))) |
54 | 54 |
|
55 | | - ;; CHECK: (type $19 (func (param externref (ref extern) externref externref externref (ref extern)))) |
| 55 | + ;; CHECK: (type $19 (func (param (ref $0)))) |
56 | 56 |
|
57 | | - ;; CHECK: (type $20 (func (param (ref null $0) i32 i32) (result (ref extern)))) |
| 57 | + ;; CHECK: (type $20 (func (param externref (ref extern) externref externref externref (ref extern)))) |
58 | 58 |
|
59 | | - ;; CHECK: (type $21 (func (param i32) (result (ref extern)))) |
| 59 | + ;; CHECK: (type $21 (func (param (ref null $0) i32 i32) (result (ref extern)))) |
60 | 60 |
|
61 | | - ;; CHECK: (type $22 (func (param externref (ref null $0) i32) (result i32))) |
| 61 | + ;; CHECK: (type $22 (func (param i32) (result (ref extern)))) |
62 | 62 |
|
63 | | - ;; CHECK: (type $23 (func (param externref) (result i32))) |
| 63 | + ;; CHECK: (type $23 (func (param externref externref) (result (ref extern)))) |
64 | 64 |
|
65 | | - ;; CHECK: (type $24 (func (param externref i32) (result i32))) |
| 65 | + ;; CHECK: (type $24 (func (param externref (ref null $0) i32) (result i32))) |
66 | 66 |
|
67 | | - ;; CHECK: (type $25 (func (param externref i32 i32) (result (ref extern)))) |
| 67 | + ;; CHECK: (type $25 (func (param externref) (result i32))) |
| 68 | + |
| 69 | + ;; CHECK: (type $26 (func (param externref i32) (result i32))) |
| 70 | + |
| 71 | + ;; CHECK: (type $27 (func (param externref i32 i32) (result (ref extern)))) |
68 | 72 |
|
69 | 73 | ;; CHECK: (import "string.const" "0" (global $string.const_exported (ref extern))) |
70 | 74 |
|
|
74 | 78 | (import "colliding" "name" (func $fromCodePoint)) |
75 | 79 |
|
76 | 80 |
|
77 | | - ;; CHECK: (import "wasm:js-string" "fromCharCodeArray" (func $fromCharCodeArray (type $20) (param (ref null $0) i32 i32) (result (ref extern)))) |
| 81 | + ;; CHECK: (import "wasm:js-string" "fromCharCodeArray" (func $fromCharCodeArray (type $21) (param (ref null $0) i32 i32) (result (ref extern)))) |
78 | 82 |
|
79 | | - ;; CHECK: (import "wasm:js-string" "fromCodePoint" (func $fromCodePoint_18 (type $21) (param i32) (result (ref extern)))) |
| 83 | + ;; CHECK: (import "wasm:js-string" "fromCodePoint" (func $fromCodePoint_19 (type $22) (param i32) (result (ref extern)))) |
80 | 84 |
|
81 | | - ;; CHECK: (import "wasm:js-string" "intoCharCodeArray" (func $intoCharCodeArray (type $22) (param externref (ref null $0) i32) (result i32))) |
| 85 | + ;; CHECK: (import "wasm:js-string" "concat" (func $concat (type $23) (param externref externref) (result (ref extern)))) |
| 86 | + |
| 87 | + ;; CHECK: (import "wasm:js-string" "intoCharCodeArray" (func $intoCharCodeArray (type $24) (param externref (ref null $0) i32) (result i32))) |
82 | 88 |
|
83 | 89 | ;; CHECK: (import "wasm:js-string" "equals" (func $equals (type $2) (param externref externref) (result i32))) |
84 | 90 |
|
85 | 91 | ;; CHECK: (import "wasm:js-string" "compare" (func $compare (type $2) (param externref externref) (result i32))) |
86 | 92 |
|
87 | | - ;; CHECK: (import "wasm:js-string" "length" (func $length (type $23) (param externref) (result i32))) |
| 93 | + ;; CHECK: (import "wasm:js-string" "length" (func $length (type $25) (param externref) (result i32))) |
88 | 94 |
|
89 | | - ;; CHECK: (import "wasm:js-string" "charCodeAt" (func $charCodeAt (type $24) (param externref i32) (result i32))) |
| 95 | + ;; CHECK: (import "wasm:js-string" "charCodeAt" (func $charCodeAt (type $26) (param externref i32) (result i32))) |
90 | 96 |
|
91 | | - ;; CHECK: (import "wasm:js-string" "substring" (func $substring (type $25) (param externref i32 i32) (result (ref extern)))) |
| 97 | + ;; CHECK: (import "wasm:js-string" "substring" (func $substring (type $27) (param externref i32 i32) (result (ref extern)))) |
92 | 98 |
|
93 | 99 | ;; CHECK: (global $string externref (ref.null noextern)) |
94 | 100 | (global $string stringref (ref.null string)) ;; Test we update global nulls. |
|
97 | 103 |
|
98 | 104 | ;; CHECK: (export "export.2" (func $exported-string-receiver)) |
99 | 105 |
|
100 | | - ;; CHECK: (func $string.as (type $19) (param $a externref) (param $a_nn (ref extern)) (param $b externref) (param $c externref) (param $d externref) (param $nn_view (ref extern)) |
| 106 | + ;; CHECK: (func $string.as (type $20) (param $a externref) (param $a_nn (ref extern)) (param $b externref) (param $c externref) (param $d externref) (param $nn_view (ref extern)) |
101 | 107 | ;; CHECK-NEXT: (local.set $b |
102 | 108 | ;; CHECK-NEXT: (ref.as_non_null |
103 | 109 | ;; CHECK-NEXT: (local.get $a) |
|
163 | 169 | ) |
164 | 170 | ) |
165 | 171 |
|
166 | | - ;; CHECK: (func $string.new.gc (type $18) (param $array16 (ref $0)) |
| 172 | + ;; CHECK: (func $string.new.gc (type $19) (param $array16 (ref $0)) |
167 | 173 | ;; CHECK-NEXT: (drop |
168 | 174 | ;; CHECK-NEXT: (call $fromCharCodeArray |
169 | 175 | ;; CHECK-NEXT: (local.get $array16) |
|
183 | 189 | ) |
184 | 190 |
|
185 | 191 | ;; CHECK: (func $string.from_code_point (type $4) (result externref) |
186 | | - ;; CHECK-NEXT: (call $fromCodePoint_18 |
| 192 | + ;; CHECK-NEXT: (call $fromCodePoint_19 |
187 | 193 | ;; CHECK-NEXT: (i32.const 1) |
188 | 194 | ;; CHECK-NEXT: ) |
189 | 195 | ;; CHECK-NEXT: ) |
|
193 | 199 | ) |
194 | 200 | ) |
195 | 201 |
|
| 202 | + ;; CHECK: (func $string.concat (type $18) (param $0 externref) (param $1 externref) (result (ref extern)) |
| 203 | + ;; CHECK-NEXT: (call $concat |
| 204 | + ;; CHECK-NEXT: (local.get $0) |
| 205 | + ;; CHECK-NEXT: (local.get $1) |
| 206 | + ;; CHECK-NEXT: ) |
| 207 | + ;; CHECK-NEXT: ) |
| 208 | + (func $string.concat (param stringref stringref) (result (ref string)) |
| 209 | + (string.concat |
| 210 | + (local.get 0) |
| 211 | + (local.get 1) |
| 212 | + ) |
| 213 | + ) |
| 214 | + |
196 | 215 | ;; CHECK: (func $string.encode (type $17) (param $ref externref) (param $array16 (ref $0)) (result i32) |
197 | 216 | ;; CHECK-NEXT: (call $intoCharCodeArray |
198 | 217 | ;; CHECK-NEXT: (local.get $ref) |
|
0 commit comments