1# source binary: arkcompiler/runtime_core/abc2program/tests/ReleaseEnableColumnNumberCallthis.abc 2 3# ==================== 4# LITERALS 5 6_ESModuleRecord_966 { 6 [ i32:0, i32:0, i32:0, i32:0, i32:0, i32:0, ]} 7 8_ESScopeNamesRecord_962 9 10_GLOBAL_994 { 38 [ tag_value:5, string:"test", tag_value:6, method:.#~A>#test, tag_value:9, method_affiliate:0, tag_value:5, string:"callthis1", tag_value:6, method:.#~A>#callthis1, tag_value:9, method_affiliate:1, tag_value:5, string:"callthis2", tag_value:6, method:.#~A>#callthis2, tag_value:9, method_affiliate:2, tag_value:5, string:"callthis3", tag_value:6, method:.#~A>#callthis3, tag_value:9, method_affiliate:3, tag_value:5, string:"callthisRange", tag_value:6, method:.#~A>#callthisRange, tag_value:9, method_affiliate:4, tag_value:5, string:"withRestParams", tag_value:6, method:.#~A>#withRestParams, tag_value:9, method_affiliate:0, tag_value:2, i32:6, ]} 11 12 13 14# ==================== 15# RECORDS 16 17.language ECMAScript 18.record _ESExpectedPropertyCountAnnotation { 19} 20.record.source_file 21 22.language ECMAScript 23.record _ESModuleRecord { 24 u32 arkcompiler/runtime_core/abc2program/tests/ts/release-column-number/ReleaseEnableColumnNumberCallthis.ts _ESModuleRecord_966 25} 26.record.source_file 27 28.language ECMAScript 29.record _ESScopeNamesRecord { 30 u32 arkcompiler/runtime_core/abc2program/tests/ts/release-column-number/ReleaseEnableColumnNumberCallthis.ts _ESScopeNamesRecord_962 31} 32.record.source_file 33 34.language ECMAScript 35.record _ESSlotNumberAnnotation { 36} 37.record.source_file 38 39.language ECMAScript 40.record _GLOBAL { 41} 42.record.source_file 43 44 45# ==================== 46# METHODS 47 48.function_kind FunctionKind::NONE 49 _ESExpectedPropertyCountAnnotation 50 ExpectedPropertyCount 1 51 _ESSlotNumberAnnotation 52 SlotNumber 2 53.language ECMAScript 54.function any .#~A=#A(any a0, any a1, any a2, any a3) { 55 lda a3 # line: 18 # column: 0 56 stobjbyname 0x0, b, a2 # line: 18 # column: 0 57 lda a2 # line: 19 # column: 0 58 return # line: 19 # column: 0 59} 60 61.function_kind FunctionKind::NONE 62 _ESSlotNumberAnnotation 63 SlotNumber 0 64.language ECMAScript 65.function any .#~A>#callthis1(any a0, any a1, any a2, any a3) { 66 returnundefined # line: 25 # column: 0 67} 68 69.function_kind FunctionKind::NONE 70 _ESSlotNumberAnnotation 71 SlotNumber 0 72.language ECMAScript 73.function any .#~A>#callthis2(any a0, any a1, any a2, any a3, any a4) { 74 returnundefined # line: 27 # column: 0 75} 76 77.function_kind FunctionKind::NONE 78 _ESSlotNumberAnnotation 79 SlotNumber 0 80.language ECMAScript 81.function any .#~A>#callthis3(any a0, any a1, any a2, any a3, any a4, any a5) { 82 returnundefined # line: 30 # column: 0 83} 84 85.function_kind FunctionKind::NONE 86 _ESSlotNumberAnnotation 87 SlotNumber 0 88.language ECMAScript 89.function any .#~A>#callthisRange(any a0, any a1, any a2, any a3, any a4, any a5, any a6) { 90 returnundefined # line: 32 # column: 0 91} 92 93.function_kind FunctionKind::NONE 94 _ESSlotNumberAnnotation 95 SlotNumber 2 96.language ECMAScript 97.function any .#~A>#test(any a0, any a1, any a2) { 98 ldlexvar 0x0, 0x0 # line: 22 # column: 0 99 sta v0 # line: 22 # column: 0 100 throw.undefinedifholewithname A # line: 22 # column: 0 101 ldai 0x2 # line: 22 # column: 0 102 sta v1 # line: 22 # column: 0 103 mov v2, v0 # line: 22 # column: 0 104 mov v3, v1 # line: 22 # column: 0 105 newobjrange 0x0, 0x2, v2 # line: 22 # column: 0 106 return # line: 23 # column: 0 107} 108 109.function_kind FunctionKind::NONE 110 _ESSlotNumberAnnotation 111 SlotNumber 0 112.language ECMAScript 113.function any .#~A>#withRestParams(any a0, any a1, any a2, any a3) { 114 copyrestargs 0x0 # line: 33 # column: 0 115 returnundefined # line: 34 # column: 0 116} 117 118.function_kind FunctionKind::FUNCTION 119 _ESSlotNumberAnnotation 120 SlotNumber 31 121.language ECMAScript 122.function any .func_main_0(any a0, any a1, any a2) { 123 mov v0, a0 # line: 18446744073709551615 # column: 0 124 mov v1, a1 # line: 18446744073709551615 # column: 0 125 mov v2, a2 # line: 18446744073709551615 # column: 0 126 newlexenv 0x1 # line: 15 # column: 0 127 label@4: # line: 0 # column: 0 128 ldhole # line: 15 # column: 0 129 sta v7 # line: 15 # column: 0 130 defineclasswithbuffer 0x0, .#~A=#A, _GLOBAL_994, 0x1, v7 # line: 15 # column: 0 131 sta v6 # line: 15 # column: 0 132 sta v8 # line: 15 # column: 0 133 lda v8 # line: 15 # column: 0 134 stlexvar 0x0, 0x0 # line: 15 # column: 0 135 lda v6 # line: 15 # column: 0 136 ldobjbyname 0x1, prototype # line: 15 # column: 0 137 sta v8 # line: 15 # column: 0 138 lda v6 # line: 15 # column: 0 139 label@15: # line: 0 # column: 0 140 jmp label@18 # line: 15 # column: 0 141 label@16: # line: 0 # column: 0 142 poplexenv # line: 15 # column: 0 143 throw # line: 15 # column: 0 144 label@18: # line: 0 # column: 0 145 poplexenv # line: 15 # column: 0 146 sta v3 # line: 15 # column: 0 147 lda v3 # line: 36 # column: 0 148 sta v6 # line: 36 # column: 0 149 ldai 0x1 # line: 36 # column: 0 150 sta v7 # line: 36 # column: 0 151 newobjrange 0x3, 0x2, v6 # line: 36 # column: 0 152 sta v4 # line: 36 # column: 0 153 lda v4 # line: 37 # column: 0 154 sta v9 # line: 37 # column: 0 155 lda v9 # line: 37 # column: 0 156 ldobjbyname 0x5, test # line: 37 # column: 0 157 sta v8 # line: 37 # column: 0 158 lda v8 # line: 37 # column: 0 159 callthis0 0x7, v9 # line: 37 # column: 4 160 sta v7 # line: 37 # column: 0 161 lda v7 # line: 37 # column: 0 162 ldobjbyname 0x9, test # line: 37 # column: 0 163 sta v6 # line: 37 # column: 0 164 lda v6 # line: 37 # column: 0 165 callthis0 0xb, v7 # line: 37 # column: 11 166 lda v4 # line: 38 # column: 0 167 sta v7 # line: 38 # column: 0 168 lda v7 # line: 38 # column: 0 169 ldobjbyname 0xd, callthis1 # line: 38 # column: 0 170 sta v6 # line: 38 # column: 0 171 ldai 0x1 # line: 38 # column: 0 172 sta v8 # line: 38 # column: 0 173 lda v6 # line: 38 # column: 0 174 callthis1 0xf, v7, v8 # line: 38 # column: 4 175 lda v4 # line: 39 # column: 0 176 sta v7 # line: 39 # column: 0 177 lda v7 # line: 39 # column: 0 178 ldobjbyname 0x11, callthis2 # line: 39 # column: 0 179 sta v6 # line: 39 # column: 0 180 ldai 0x1 # line: 39 # column: 0 181 sta v8 # line: 39 # column: 0 182 ldai 0x2 # line: 39 # column: 0 183 sta v9 # line: 39 # column: 0 184 lda v6 # line: 39 # column: 0 185 callthis2 0x13, v7, v8, v9 # line: 39 # column: 4 186 lda v4 # line: 40 # column: 0 187 sta v7 # line: 40 # column: 0 188 lda v7 # line: 40 # column: 0 189 ldobjbyname 0x15, callthis3 # line: 40 # column: 0 190 sta v6 # line: 40 # column: 0 191 ldai 0x1 # line: 40 # column: 0 192 sta v8 # line: 40 # column: 0 193 ldai 0x2 # line: 40 # column: 0 194 sta v9 # line: 40 # column: 0 195 ldai 0x3 # line: 40 # column: 0 196 sta v10 # line: 40 # column: 0 197 lda v6 # line: 40 # column: 0 198 callthis3 0x17, v7, v8, v9, v10 # line: 40 # column: 4 199 lda v4 # line: 41 # column: 0 200 sta v7 # line: 41 # column: 0 201 lda v7 # line: 41 # column: 0 202 ldobjbyname 0x19, callthisRange # line: 41 # column: 0 203 sta v6 # line: 41 # column: 0 204 ldai 0x1 # line: 41 # column: 0 205 sta v8 # line: 41 # column: 0 206 ldai 0x2 # line: 41 # column: 0 207 sta v9 # line: 41 # column: 0 208 ldai 0x3 # line: 41 # column: 0 209 sta v10 # line: 41 # column: 0 210 ldai 0x4 # line: 41 # column: 0 211 sta v11 # line: 41 # column: 0 212 lda v6 # line: 41 # column: 0 213 callthisrange 0x1b, 0x4, v7 # line: 41 # column: 4 214 lda v4 # line: 42 # column: 0 215 sta v7 # line: 42 # column: 0 216 lda v7 # line: 42 # column: 0 217 ldobjbyname 0x1d, withRestParams # line: 42 # column: 0 218 sta v6 # line: 42 # column: 0 219 ldai 0x1 # line: 42 # column: 0 220 sta v8 # line: 42 # column: 0 221 ldai 0x2 # line: 42 # column: 0 222 sta v9 # line: 42 # column: 0 223 ldai 0x3 # line: 42 # column: 0 224 sta v10 # line: 42 # column: 0 225 ldai 0x4 # line: 42 # column: 0 226 sta v11 # line: 42 # column: 0 227 ldai 0x5 # line: 42 # column: 0 228 sta v12 # line: 42 # column: 0 229 ldai 0x6 # line: 42 # column: 0 230 sta v13 # line: 42 # column: 0 231 ldai 0x7 # line: 42 # column: 0 232 sta v14 # line: 42 # column: 0 233 ldai 0x8 # line: 42 # column: 0 234 sta v15 # line: 42 # column: 0 235 ldai 0x9 # line: 42 # column: 0 236 sta v16 # line: 42 # column: 0 237 ldai 0xa # line: 42 # column: 0 238 sta v17 # line: 42 # column: 0 239 ldai 0xb # line: 43 # column: 0 240 sta v18 # line: 43 # column: 0 241 ldai 0xc # line: 43 # column: 0 242 sta v19 # line: 43 # column: 0 243 ldai 0xd # line: 43 # column: 0 244 sta v20 # line: 43 # column: 0 245 ldai 0xe # line: 43 # column: 0 246 sta v21 # line: 43 # column: 0 247 ldai 0xf # line: 43 # column: 0 248 sta v22 # line: 43 # column: 0 249 ldai 0x10 # line: 43 # column: 0 250 sta v23 # line: 43 # column: 0 251 ldai 0x11 # line: 43 # column: 0 252 sta v24 # line: 43 # column: 0 253 ldai 0x12 # line: 43 # column: 0 254 sta v25 # line: 43 # column: 0 255 ldai 0x13 # line: 43 # column: 0 256 sta v26 # line: 43 # column: 0 257 ldai 0x14 # line: 43 # column: 0 258 sta v27 # line: 43 # column: 0 259 ldai 0x15 # line: 44 # column: 0 260 sta v28 # line: 44 # column: 0 261 ldai 0x16 # line: 44 # column: 0 262 sta v29 # line: 44 # column: 0 263 ldai 0x17 # line: 44 # column: 0 264 sta v30 # line: 44 # column: 0 265 ldai 0x18 # line: 44 # column: 0 266 sta v31 # line: 44 # column: 0 267 ldai 0x19 # line: 44 # column: 0 268 sta v32 # line: 44 # column: 0 269 ldai 0x1a # line: 44 # column: 0 270 sta v33 # line: 44 # column: 0 271 ldai 0x1b # line: 44 # column: 0 272 sta v34 # line: 44 # column: 0 273 ldai 0x1c # line: 44 # column: 0 274 sta v35 # line: 44 # column: 0 275 ldai 0x1d # line: 44 # column: 0 276 sta v36 # line: 44 # column: 0 277 ldai 0x1e # line: 44 # column: 0 278 sta v37 # line: 44 # column: 0 279 ldai 0x1f # line: 45 # column: 0 280 sta v38 # line: 45 # column: 0 281 ldai 0x20 # line: 45 # column: 0 282 sta v39 # line: 45 # column: 0 283 ldai 0x21 # line: 45 # column: 0 284 sta v40 # line: 45 # column: 0 285 ldai 0x22 # line: 45 # column: 0 286 sta v41 # line: 45 # column: 0 287 ldai 0x23 # line: 45 # column: 0 288 sta v42 # line: 45 # column: 0 289 ldai 0x24 # line: 45 # column: 0 290 sta v43 # line: 45 # column: 0 291 ldai 0x25 # line: 45 # column: 0 292 sta v44 # line: 45 # column: 0 293 ldai 0x26 # line: 45 # column: 0 294 sta v45 # line: 45 # column: 0 295 ldai 0x27 # line: 45 # column: 0 296 sta v46 # line: 45 # column: 0 297 ldai 0x28 # line: 45 # column: 0 298 sta v47 # line: 45 # column: 0 299 ldai 0x29 # line: 46 # column: 0 300 sta v48 # line: 46 # column: 0 301 ldai 0x2a # line: 46 # column: 0 302 sta v49 # line: 46 # column: 0 303 ldai 0x2b # line: 46 # column: 0 304 sta v50 # line: 46 # column: 0 305 ldai 0x2c # line: 46 # column: 0 306 sta v51 # line: 46 # column: 0 307 ldai 0x2d # line: 46 # column: 0 308 sta v52 # line: 46 # column: 0 309 ldai 0x2e # line: 46 # column: 0 310 sta v53 # line: 46 # column: 0 311 ldai 0x2f # line: 46 # column: 0 312 sta v54 # line: 46 # column: 0 313 ldai 0x30 # line: 46 # column: 0 314 sta v55 # line: 46 # column: 0 315 ldai 0x31 # line: 46 # column: 0 316 sta v56 # line: 46 # column: 0 317 ldai 0x32 # line: 46 # column: 0 318 sta v57 # line: 46 # column: 0 319 ldai 0x33 # line: 47 # column: 0 320 sta v58 # line: 47 # column: 0 321 ldai 0x34 # line: 47 # column: 0 322 sta v59 # line: 47 # column: 0 323 ldai 0x35 # line: 47 # column: 0 324 sta v60 # line: 47 # column: 0 325 ldai 0x36 # line: 47 # column: 0 326 sta v61 # line: 47 # column: 0 327 ldai 0x37 # line: 47 # column: 0 328 sta v62 # line: 47 # column: 0 329 ldai 0x38 # line: 47 # column: 0 330 sta v63 # line: 47 # column: 0 331 ldai 0x39 # line: 47 # column: 0 332 sta v64 # line: 47 # column: 0 333 ldai 0x3a # line: 47 # column: 0 334 sta v65 # line: 47 # column: 0 335 ldai 0x3b # line: 47 # column: 0 336 sta v66 # line: 47 # column: 0 337 ldai 0x3c # line: 47 # column: 0 338 sta v67 # line: 47 # column: 0 339 ldai 0x3d # line: 48 # column: 0 340 sta v68 # line: 48 # column: 0 341 ldai 0x3e # line: 48 # column: 0 342 sta v69 # line: 48 # column: 0 343 ldai 0x3f # line: 48 # column: 0 344 sta v70 # line: 48 # column: 0 345 ldai 0x40 # line: 48 # column: 0 346 sta v71 # line: 48 # column: 0 347 ldai 0x41 # line: 48 # column: 0 348 sta v72 # line: 48 # column: 0 349 ldai 0x42 # line: 48 # column: 0 350 sta v73 # line: 48 # column: 0 351 ldai 0x43 # line: 48 # column: 0 352 sta v74 # line: 48 # column: 0 353 ldai 0x44 # line: 48 # column: 0 354 sta v75 # line: 48 # column: 0 355 ldai 0x45 # line: 48 # column: 0 356 sta v76 # line: 48 # column: 0 357 ldai 0x46 # line: 48 # column: 0 358 sta v77 # line: 48 # column: 0 359 ldai 0x47 # line: 49 # column: 0 360 sta v78 # line: 49 # column: 0 361 ldai 0x48 # line: 49 # column: 0 362 sta v79 # line: 49 # column: 0 363 ldai 0x49 # line: 49 # column: 0 364 sta v80 # line: 49 # column: 0 365 ldai 0x4a # line: 49 # column: 0 366 sta v81 # line: 49 # column: 0 367 ldai 0x4b # line: 49 # column: 0 368 sta v82 # line: 49 # column: 0 369 ldai 0x4c # line: 49 # column: 0 370 sta v83 # line: 49 # column: 0 371 ldai 0x4d # line: 49 # column: 0 372 sta v84 # line: 49 # column: 0 373 ldai 0x4e # line: 49 # column: 0 374 sta v85 # line: 49 # column: 0 375 ldai 0x4f # line: 49 # column: 0 376 sta v86 # line: 49 # column: 0 377 ldai 0x50 # line: 49 # column: 0 378 sta v87 # line: 49 # column: 0 379 ldai 0x51 # line: 50 # column: 0 380 sta v88 # line: 50 # column: 0 381 ldai 0x52 # line: 50 # column: 0 382 sta v89 # line: 50 # column: 0 383 ldai 0x53 # line: 50 # column: 0 384 sta v90 # line: 50 # column: 0 385 ldai 0x54 # line: 50 # column: 0 386 sta v91 # line: 50 # column: 0 387 ldai 0x55 # line: 50 # column: 0 388 sta v92 # line: 50 # column: 0 389 ldai 0x56 # line: 50 # column: 0 390 sta v93 # line: 50 # column: 0 391 ldai 0x57 # line: 50 # column: 0 392 sta v94 # line: 50 # column: 0 393 ldai 0x58 # line: 50 # column: 0 394 sta v95 # line: 50 # column: 0 395 ldai 0x59 # line: 50 # column: 0 396 sta v96 # line: 50 # column: 0 397 ldai 0x5a # line: 50 # column: 0 398 sta v97 # line: 50 # column: 0 399 ldai 0x5b # line: 51 # column: 0 400 sta v98 # line: 51 # column: 0 401 ldai 0x5c # line: 51 # column: 0 402 sta v99 # line: 51 # column: 0 403 ldai 0x5d # line: 51 # column: 0 404 sta v100 # line: 51 # column: 0 405 ldai 0x5e # line: 51 # column: 0 406 sta v101 # line: 51 # column: 0 407 ldai 0x5f # line: 51 # column: 0 408 sta v102 # line: 51 # column: 0 409 ldai 0x60 # line: 51 # column: 0 410 sta v103 # line: 51 # column: 0 411 ldai 0x61 # line: 51 # column: 0 412 sta v104 # line: 51 # column: 0 413 ldai 0x62 # line: 51 # column: 0 414 sta v105 # line: 51 # column: 0 415 ldai 0x63 # line: 51 # column: 0 416 sta v106 # line: 51 # column: 0 417 ldai 0x64 # line: 51 # column: 0 418 sta v107 # line: 51 # column: 0 419 ldai 0x65 # line: 52 # column: 0 420 sta v108 # line: 52 # column: 0 421 ldai 0x66 # line: 52 # column: 0 422 sta v109 # line: 52 # column: 0 423 ldai 0x67 # line: 52 # column: 0 424 sta v110 # line: 52 # column: 0 425 ldai 0x68 # line: 52 # column: 0 426 sta v111 # line: 52 # column: 0 427 ldai 0x69 # line: 52 # column: 0 428 sta v112 # line: 52 # column: 0 429 ldai 0x6a # line: 52 # column: 0 430 sta v113 # line: 52 # column: 0 431 ldai 0x6b # line: 52 # column: 0 432 sta v114 # line: 52 # column: 0 433 ldai 0x6c # line: 52 # column: 0 434 sta v115 # line: 52 # column: 0 435 ldai 0x6d # line: 52 # column: 0 436 sta v116 # line: 52 # column: 0 437 ldai 0x6e # line: 52 # column: 0 438 sta v117 # line: 52 # column: 0 439 ldai 0x6f # line: 53 # column: 0 440 sta v118 # line: 53 # column: 0 441 ldai 0x70 # line: 53 # column: 0 442 sta v119 # line: 53 # column: 0 443 ldai 0x71 # line: 53 # column: 0 444 sta v120 # line: 53 # column: 0 445 ldai 0x72 # line: 53 # column: 0 446 sta v121 # line: 53 # column: 0 447 ldai 0x73 # line: 53 # column: 0 448 sta v122 # line: 53 # column: 0 449 ldai 0x74 # line: 53 # column: 0 450 sta v123 # line: 53 # column: 0 451 ldai 0x75 # line: 53 # column: 0 452 sta v124 # line: 53 # column: 0 453 ldai 0x76 # line: 53 # column: 0 454 sta v125 # line: 53 # column: 0 455 ldai 0x77 # line: 53 # column: 0 456 sta v126 # line: 53 # column: 0 457 ldai 0x78 # line: 53 # column: 0 458 sta v127 # line: 53 # column: 0 459 ldai 0x79 # line: 54 # column: 0 460 sta v128 # line: 54 # column: 0 461 ldai 0x7a # line: 54 # column: 0 462 sta v129 # line: 54 # column: 0 463 ldai 0x7b # line: 54 # column: 0 464 sta v130 # line: 54 # column: 0 465 ldai 0x7c # line: 54 # column: 0 466 sta v131 # line: 54 # column: 0 467 ldai 0x7d # line: 54 # column: 0 468 sta v132 # line: 54 # column: 0 469 ldai 0x7e # line: 54 # column: 0 470 sta v133 # line: 54 # column: 0 471 ldai 0x7f # line: 54 # column: 0 472 sta v134 # line: 54 # column: 0 473 ldai 0x80 # line: 54 # column: 0 474 sta v135 # line: 54 # column: 0 475 lda v6 # line: 42 # column: 0 476 wide.callthisrange 0x80, v7 # line: 42 # column: 4 477 ldundefined # line: 18446744073709551615 # column: 0 478 returnundefined # line: 18446744073709551615 # column: 0 479.catchall : 480 try_begin_label : label@4 481 try_end_label : label@15 482 catch_begin_label : label@16 483 catch_end_label : label@18 484} 485 486# ==================== 487# STRING 488.#~A=#A 489A 490b 491callthis1 492callthis2 493callthis3 494callthisRange 495prototype 496test 497withRestParams 498