1# source binary: arkcompiler/runtime_core/abc2program/tests/CommonSyntax.abc 2 3# ==================== 4# LITERALS 5 6_ESModuleRecord_2652 { 8 [ i32:0, i32:0, i32:0, i32:1, string:"ClassA", string:"ClassA", i32:0, i32:0, ]} 7 8_ESScopeNamesRecord_2618 { 12 [ tag_value:5, string:"Person", tag_value:5, string:"fetchData", tag_value:5, string:"TestA", tag_value:5, string:"ClassA", tag_value:5, string:"Parent", tag_value:5, string:"Child", ]} 9 10_GLOBAL_2688 { 8 [ tag_value:5, string:"sayHello", tag_value:6, method:.#~@4>#sayHello, tag_value:9, method_affiliate:0, tag_value:2, i32:1, ]} 11 12_GLOBAL_2710 { 8 [ tag_value:5, string:"sayHello", tag_value:6, method:.#~@5>#sayHello, tag_value:9, method_affiliate:0, tag_value:2, i32:1, ]} 13 14_GLOBAL_2732 { 4 [ tag_value:5, string:"mySymbol", tag_value:5, string:"prop", ]} 15 16_GLOBAL_2746 { 6 [ tag_value:2, i32:1, tag_value:2, i32:2, tag_value:2, i32:3, ]} 17 18_GLOBAL_2765 { 14 [ tag_value:5, string:"name", tag_value:5, string:"Alice", tag_value:5, string:"age", tag_value:2, i32:25, tag_value:5, string:"greet", tag_value:6, method:.#*#greet^1, tag_value:9, method_affiliate:0, ]} 19 20_GLOBAL_2802 { 8 [ tag_value:5, string:"gender", tag_value:5, string:"男", tag_value:5, string:"grade", tag_value:5, string:"2", ]} 21 22_GLOBAL_2826 { 6 [ tag_value:2, i32:1, tag_value:2, i32:2, tag_value:2, i32:3, ]} 23 24_GLOBAL_2845 { 8 [ tag_value:5, string:"greet", tag_value:6, method:.#~@0>#greet, tag_value:9, method_affiliate:0, tag_value:2, i32:1, ]} 25 26_GLOBAL_2867 { 2 [ tag_value:2, i32:0, ]} 27 28_GLOBAL_2876 { 2 [ tag_value:2, i32:0, ]} 29 30 31 32# ==================== 33# RECORDS 34 35.language ECMAScript 36.record _ESExpectedPropertyCountAnnotation { 37} 38.record.source_file 39 40.language ECMAScript 41.record _ESModuleRecord { 42 u32 arkcompiler/runtime_core/abc2program/tests/ts/release-line-number/CommonSyntax.ts _ESModuleRecord_2652 43} 44.record.source_file 45 46.language ECMAScript 47.record _ESScopeNamesRecord { 48 u32 arkcompiler/runtime_core/abc2program/tests/ts/release-line-number/CommonSyntax.ts _ESScopeNamesRecord_2618 49} 50.record.source_file 51 52.language ECMAScript 53.record _ESSlotNumberAnnotation { 54} 55.record.source_file 56 57.language ECMAScript 58.record _GLOBAL { 59} 60.record.source_file 61 62 63# ==================== 64# METHODS 65 66.function_kind FunctionKind::NC_FUNCTION 67 _ESSlotNumberAnnotation 68 SlotNumber 5 69.language ECMAScript 70.function any .#*#(any a0, any a1, any a2, any a3) { 71 tryldglobalbyname 0x0, console # line: 133 # column: 0 72 sta v0 # line: 133 # column: 0 73 ldobjbyname 0x1, log # line: 133 # column: 0 74 callthis1 0x3, v0, a3 # line: 133 # column: 0 75 returnundefined # line: 134 # column: 0 76} 77 78.function_kind FunctionKind::NC_FUNCTION 79 _ESSlotNumberAnnotation 80 SlotNumber 5 81.language ECMAScript 82.function any .#*#^1(any a0, any a1, any a2, any a3) { 83 tryldglobalbyname 0x0, console # line: 135 # column: 0 84 sta v0 # line: 135 # column: 0 85 ldobjbyname 0x1, error # line: 135 # column: 0 86 sta v1 # line: 135 # column: 0 87 lda.str An error occurred: # line: 135 # column: 0 88 sta v2 # line: 135 # column: 0 89 lda v1 # line: 135 # column: 0 90 callthis2 0x3, v0, v2, a3 # line: 135 # column: 0 91 returnundefined # line: 136 # column: 0 92} 93 94.function_kind FunctionKind::NC_FUNCTION 95 _ESSlotNumberAnnotation 96 SlotNumber 10 97.language ECMAScript 98.function any .#*#^2(any a0, any a1, any a2, any a3) { 99 tryldglobalbyname 0x0, console # line: 158 # column: 0 100 sta v0 # line: 158 # column: 0 101 ldobjbyname 0x1, error # line: 158 # column: 0 102 sta v1 # line: 158 # column: 0 103 lda.str YY start throw error # line: 158 # column: 0 104 sta v2 # line: 158 # column: 0 105 lda v1 # line: 158 # column: 0 106 callthis1 0x3, v0, v2 # line: 158 # column: 0 107 tryldglobalbyname 0x5, console # line: 159 # column: 0 108 sta v0 # line: 159 # column: 0 109 ldobjbyname 0x6, log # line: 159 # column: 0 110 sta v1 # line: 159 # column: 0 111 lda.str yy execute then # line: 159 # column: 0 112 sta v2 # line: 159 # column: 0 113 lda v1 # line: 159 # column: 0 114 callthis1 0x8, v0, v2 # line: 159 # column: 0 115 returnundefined # line: 160 # column: 0 116} 117 118.function_kind FunctionKind::NC_FUNCTION 119 _ESSlotNumberAnnotation 120 SlotNumber 5 121.language ECMAScript 122.function any .#*#^3(any a0, any a1, any a2, any a3) { 123 tryldglobalbyname 0x0, console # line: 161 # column: 0 124 sta v0 # line: 161 # column: 0 125 ldobjbyname 0x1, error # line: 161 # column: 0 126 sta v1 # line: 161 # column: 0 127 lda.str yy occur error # line: 161 # column: 0 128 sta v2 # line: 161 # column: 0 129 lda v1 # line: 161 # column: 0 130 callthis1 0x3, v0, v2 # line: 161 # column: 0 131 returnundefined # line: 162 # column: 0 132} 133 134.function_kind FunctionKind::NC_FUNCTION 135 _ESSlotNumberAnnotation 136 SlotNumber 5 137.language ECMAScript 138.function any .#*#^4(any a0, any a1, any a2) { 139 tryldglobalbyname 0x0, console # line: 163 # column: 0 140 sta v0 # line: 163 # column: 0 141 ldobjbyname 0x1, error # line: 163 # column: 0 142 sta v1 # line: 163 # column: 0 143 lda.str yy occur finally # line: 163 # column: 0 144 sta v2 # line: 163 # column: 0 145 lda v1 # line: 163 # column: 0 146 callthis1 0x3, v0, v2 # line: 163 # column: 0 147 returnundefined # line: 164 # column: 0 148} 149 150.function_kind FunctionKind::NC_FUNCTION 151 _ESSlotNumberAnnotation 152 SlotNumber 5 153.language ECMAScript 154.function any .#*#^5(any a0, any a1, any a2, any a3) { 155 tryldglobalbyname 0x0, console # line: 192 # column: 0 156 sta v0 # line: 192 # column: 0 157 ldobjbyname 0x1, log # line: 192 # column: 0 158 sta v1 # line: 192 # column: 0 159 lda.str resolved # line: 192 # column: 0 160 sta v2 # line: 192 # column: 0 161 lda v1 # line: 192 # column: 0 162 callthis2 0x3, v0, v2, a3 # line: 192 # column: 0 163 returnundefined # line: 193 # column: 0 164} 165 166.function_kind FunctionKind::NC_FUNCTION 167 _ESSlotNumberAnnotation 168 SlotNumber 5 169.language ECMAScript 170.function any .#*#^6(any a0, any a1, any a2, any a3) { 171 tryldglobalbyname 0x0, console # line: 196 # column: 0 172 sta v0 # line: 196 # column: 0 173 ldobjbyname 0x1, error # line: 196 # column: 0 174 sta v1 # line: 196 # column: 0 175 lda.str caught # line: 196 # column: 0 176 sta v2 # line: 196 # column: 0 177 lda v1 # line: 196 # column: 0 178 callthis2 0x3, v0, v2, a3 # line: 196 # column: 0 179 returnundefined # line: 197 # column: 0 180} 181 182.function_kind FunctionKind::NC_FUNCTION 183 _ESSlotNumberAnnotation 184 SlotNumber 5 185.language ECMAScript 186.function any .#*#^7(any a0, any a1, any a2) { 187 tryldglobalbyname 0x0, console # line: 199 # column: 0 188 sta v0 # line: 199 # column: 0 189 ldobjbyname 0x1, log # line: 199 # column: 0 190 sta v1 # line: 199 # column: 0 191 lda.str cleanup done # line: 199 # column: 0 192 sta v2 # line: 199 # column: 0 193 lda v1 # line: 199 # column: 0 194 callthis1 0x3, v0, v2 # line: 199 # column: 0 195 returnundefined # line: 200 # column: 0 196} 197 198.function_kind FunctionKind::FUNCTION 199 _ESSlotNumberAnnotation 200 SlotNumber 7 201.language ECMAScript 202.function any .#*#defaultGreet(any a0, any a1, any a2, any a3) { 203 ldundefined # line: 100 # column: 0 204 stricteq 0x0, a3 # line: 100 # column: 0 205 jeqz label@5 # line: 100 # column: 0 206 lda.str js # line: 100 # column: 0 207 sta a3 # line: 100 # column: 0 208 label@5: # line: 0 # column: 0 209 tryldglobalbyname 0x1, console # line: 101 # column: 0 210 sta v0 # line: 101 # column: 0 211 ldobjbyname 0x2, log # line: 101 # column: 0 212 sta v1 # line: 101 # column: 0 213 lda.str Hello, # line: 101 # column: 0 214 sta v2 # line: 101 # column: 0 215 lda a3 # line: 101 # column: 0 216 add2 0x4, v2 # line: 101 # column: 0 217 sta v2 # line: 101 # column: 0 218 lda v1 # line: 101 # column: 0 219 callthis1 0x5, v0, v2 # line: 101 # column: 0 220 returnundefined # line: 102 # column: 0 221} 222 223.function_kind FunctionKind::ASYNC_FUNCTION 224 _ESSlotNumberAnnotation 225 SlotNumber 13 226.language ECMAScript 227.function any .#*#fetchAndDisplayData(any a0, any a1, any a2) { 228 nop # line: 18446744073709551615 # column: 0 229 asyncfunctionenter # line: 18446744073709551615 # column: 0 230 sta v0 # line: 18446744073709551615 # column: 0 231 label@3: # line: 0 # column: 0 232 mov v1, v0 # line: 18446744073709551615 # column: 0 233 ldlexvar 0x0, 0x0 # line: 140 # column: 0 234 callarg0 0x0 # line: 140 # column: 0 235 asyncfunctionawaituncaught v0 # line: 140 # column: 0 236 suspendgenerator v0 # line: 140 # column: 0 237 lda v0 # line: 140 # column: 0 238 resumegenerator # line: 140 # column: 0 239 sta v4 # line: 140 # column: 0 240 lda v0 # line: 140 # column: 0 241 getresumemode # line: 140 # column: 0 242 sta v5 # line: 140 # column: 0 243 ldai 0x1 # line: 140 # column: 0 244 eq 0x2, v5 # line: 140 # column: 0 245 jeqz label@19 # line: 140 # column: 0 246 lda v4 # line: 140 # column: 0 247 throw # line: 140 # column: 0 248 label@19: # line: 0 # column: 0 249 tryldglobalbyname 0x3, console # line: 141 # column: 0 250 sta v5 # line: 141 # column: 0 251 ldobjbyname 0x4, log # line: 141 # column: 0 252 callthis1 0x6, v5, v4 # line: 141 # column: 0 253 label@23: # line: 0 # column: 0 254 jmp label@34 # line: 141 # column: 0 255 label@24: # line: 0 # column: 0 256 sta v3 # line: 142 # column: 0 257 mov v1, v0 # line: 142 # column: 0 258 tryldglobalbyname 0x8, console # line: 143 # column: 0 259 sta v4 # line: 143 # column: 0 260 ldobjbyname 0x9, error # line: 143 # column: 0 261 sta v5 # line: 143 # column: 0 262 lda.str An error occurred: # line: 143 # column: 0 263 sta v6 # line: 143 # column: 0 264 lda v5 # line: 143 # column: 0 265 callthis2 0xb, v4, v6, v3 # line: 143 # column: 0 266 label@34: # line: 0 # column: 0 267 mov v1, v0 # line: 143 # column: 0 268 ldundefined # line: 18446744073709551615 # column: 0 269 asyncfunctionresolve v0 # line: 18446744073709551615 # column: 0 270 return # line: 145 # column: 0 271 label@38: # line: 0 # column: 0 272 sta v2 # line: 138 # column: 0 273 lda v2 # line: 138 # column: 0 274 asyncfunctionreject v1 # line: 138 # column: 0 275 return # line: 145 # column: 0 276.catchall : 277 try_begin_label : label@3 278 try_end_label : label@23 279 catch_begin_label : label@24 280 catch_end_label : label@24 281.catchall : 282 try_begin_label : label@3 283 try_end_label : label@38 284 catch_begin_label : label@38 285 catch_end_label : label@38 286} 287 288.function_kind FunctionKind::FUNCTION 289 _ESSlotNumberAnnotation 290 SlotNumber 4 291.language ECMAScript 292.function any .#*#fetchData(any a0, any a1, any a2) { 293 tryldglobalbyname 0x0, Promise # line: 125 # column: 0 294 sta v0 # line: 125 # column: 0 295 definefunc 0x1, .#*@1*#, 0x2 # line: 125 # column: 0 296 sta v1 # line: 125 # column: 0 297 mov v2, v0 # line: 125 # column: 0 298 mov v3, v1 # line: 125 # column: 0 299 newobjrange 0x2, 0x2, v2 # line: 125 # column: 0 300 return # line: 130 # column: 0 301} 302 303.function_kind FunctionKind::NC_FUNCTION 304 _ESSlotNumberAnnotation 305 SlotNumber 6 306.language ECMAScript 307.function any .#*#greet(any a0, any a1, any a2, any a3) { 308 tryldglobalbyname 0x0, console # line: 77 # column: 0 309 sta v0 # line: 77 # column: 0 310 ldobjbyname 0x1, log # line: 77 # column: 0 311 sta v1 # line: 77 # column: 0 312 lda.str Hello, # line: 77 # column: 0 313 sta v2 # line: 77 # column: 0 314 lda a3 # line: 77 # column: 0 315 add2 0x3, v2 # line: 77 # column: 0 316 sta v2 # line: 77 # column: 0 317 lda v1 # line: 77 # column: 0 318 callthis1 0x4, v0, v2 # line: 77 # column: 0 319 returnundefined # line: 78 # column: 0 320} 321 322.function_kind FunctionKind::NONE 323 _ESSlotNumberAnnotation 324 SlotNumber 8 325.language ECMAScript 326.function any .#*#greet^1(any a0, any a1, any a2) { 327 tryldglobalbyname 0x0, console # line: 86 # column: 0 328 sta v0 # line: 86 # column: 0 329 ldobjbyname 0x1, log # line: 86 # column: 0 330 sta v1 # line: 86 # column: 0 331 lda.str Hello, # line: 86 # column: 0 332 sta v2 # line: 86 # column: 0 333 lda a2 # line: 86 # column: 0 334 ldobjbyname 0x3, name # line: 86 # column: 0 335 add2 0x5, v2 # line: 86 # column: 0 336 sta v2 # line: 86 # column: 0 337 lda v1 # line: 86 # column: 0 338 callthis1 0x6, v0, v2 # line: 86 # column: 0 339 returnundefined # line: 87 # column: 0 340} 341 342.function_kind FunctionKind::FUNCTION 343 _ESSlotNumberAnnotation 344 SlotNumber 1 345.language ECMAScript 346.function any .#*#sum(any a0, any a1, any a2, any a3, any a4) { 347 lda a4 # line: 30 # column: 0 348 add2 0x0, a3 # line: 30 # column: 0 349 return # line: 31 # column: 0 350} 351 352.function_kind FunctionKind::NC_FUNCTION 353 _ESSlotNumberAnnotation 354 SlotNumber 4 355.language ECMAScript 356.function any .#*@1*#(any a0, any a1, any a2, any a3, any a4) { 357 newlexenv 0x1 # line: 18446744073709551615 # column: 0 358 lda a3 # line: 18446744073709551615 # column: 0 359 stlexvar 0x0, 0x0 # line: 18446744073709551615 # column: 0 360 tryldglobalbyname 0x0, setTimeout # line: 126 # column: 0 361 sta v0 # line: 126 # column: 0 362 definefunc 0x1, .#*@1**#, 0x0 # line: 126 # column: 0 363 sta v1 # line: 126 # column: 0 364 ldai 0x3e8 # line: 126 # column: 0 365 sta v2 # line: 126 # column: 0 366 lda v0 # line: 126 # column: 0 367 callargs2 0x2, v1, v2 # line: 126 # column: 0 368 returnundefined # line: 129 # column: 0 369} 370 371.function_kind FunctionKind::NC_FUNCTION 372 _ESSlotNumberAnnotation 373 SlotNumber 2 374.language ECMAScript 375.function any .#*@1**#(any a0, any a1, any a2) { 376 ldlexvar 0x0, 0x0 # line: 127 # column: 0 377 sta v0 # line: 127 # column: 0 378 lda.str Data fetched successfully! # line: 127 # column: 0 379 sta v1 # line: 127 # column: 0 380 lda v0 # line: 127 # column: 0 381 callarg1 0x0, v1 # line: 127 # column: 0 382 returnundefined # line: 128 # column: 0 383} 384 385.function_kind FunctionKind::NONE 386 _ESExpectedPropertyCountAnnotation 387 ExpectedPropertyCount 2 388 _ESSlotNumberAnnotation 389 SlotNumber 4 390.language ECMAScript 391.function any .#~@0=#Person(any a0, any a1, any a2, any a3, any a4) { 392 lda a3 # line: 112 # column: 0 393 stobjbyname 0x0, name, a2 # line: 112 # column: 0 394 lda a4 # line: 113 # column: 0 395 stobjbyname 0x2, age, a2 # line: 113 # column: 0 396 lda a2 # line: 114 # column: 0 397 return # line: 114 # column: 0 398} 399 400.function_kind FunctionKind::NONE 401 _ESSlotNumberAnnotation 402 SlotNumber 8 403.language ECMAScript 404.function any .#~@0>#greet(any a0, any a1, any a2) { 405 tryldglobalbyname 0x0, console # line: 117 # column: 0 406 sta v0 # line: 117 # column: 0 407 ldobjbyname 0x1, log # line: 117 # column: 0 408 sta v1 # line: 117 # column: 0 409 lda.str Hello, # line: 117 # column: 0 410 sta v2 # line: 117 # column: 0 411 lda a2 # line: 117 # column: 0 412 ldobjbyname 0x3, name # line: 117 # column: 0 413 add2 0x5, v2 # line: 117 # column: 0 414 sta v2 # line: 117 # column: 0 415 lda v1 # line: 117 # column: 0 416 callthis1 0x6, v0, v2 # line: 117 # column: 0 417 returnundefined # line: 118 # column: 0 418} 419 420.function_kind FunctionKind::NONE 421 _ESSlotNumberAnnotation 422 SlotNumber 2 423.language ECMAScript 424.function any .#~@2=#TestA(any a0, any a1, any a2, any a3) { 425 lda a3 # line: 149 # column: 0 426 stobjbyname 0x0, value, a2 # line: 149 # column: 0 427 lda a2 # line: 149 # column: 0 428 return # line: 149 # column: 0 429} 430 431.function_kind FunctionKind::FUNCTION 432 _ESExpectedPropertyCountAnnotation 433 ExpectedPropertyCount 1 434 _ESSlotNumberAnnotation 435 SlotNumber 4 436.language ECMAScript 437.function any .#~@3=#ClassA(any a0, any a1, any a2) { 438 ldlexvar 0x0, 0x1 # line: 153 # column: 0 439 sta v0 # line: 153 # column: 0 440 throw.undefinedifholewithname TestA # line: 153 # column: 0 441 ldai 0x64 # line: 153 # column: 0 442 sta v1 # line: 153 # column: 0 443 mov v2, v0 # line: 153 # column: 0 444 mov v3, v1 # line: 153 # column: 0 445 newobjrange 0x0, 0x2, v2 # line: 153 # column: 0 446 stobjbyname 0x2, a, a2 # line: 153 # column: 0 447 lda a2 # line: 153 # column: 0 448 return # line: 153 # column: 0 449} 450 451.function_kind FunctionKind::FUNCTION 452 _ESSlotNumberAnnotation 453 SlotNumber 0 454.language ECMAScript 455.function any .#~@4=#Parent(any a0, any a1, any a2) { 456 lda a2 # line: 0 # column: 0 457 return # line: 0 # column: 0 458} 459 460.function_kind FunctionKind::NONE 461 _ESSlotNumberAnnotation 462 SlotNumber 0 463.language ECMAScript 464.function any .#~@4>#sayHello(any a0, any a1, any a2) { 465 lda.str Hello from Parent # line: 175 # column: 0 466 return # line: 176 # column: 0 467} 468 469.function_kind FunctionKind::FUNCTION 470 _ESSlotNumberAnnotation 471 SlotNumber 0 472.language ECMAScript 473.function any .#~@5=#Child(any a0, any a1, any a2, any a3) { 474 callruntime.supercallforwardallargs a0 # line: 18446744073709551615 # column: 0 475 sta v0 # line: 18446744073709551615 # column: 0 476 lda a2 # line: 18446744073709551615 # column: 0 477 throw.ifsupernotcorrectcall 0x1 # line: 18446744073709551615 # column: 0 478 lda v0 # line: 18446744073709551615 # column: 0 479 throw.ifsupernotcorrectcall 0x0 # line: 18446744073709551615 # column: 0 480 lda v0 # line: 18446744073709551615 # column: 0 481 return # line: 18446744073709551615 # column: 0 482} 483 484.function_kind FunctionKind::NONE 485 _ESSlotNumberAnnotation 486 SlotNumber 5 487.language ECMAScript 488.function any .#~@5>#sayHello(any a0, any a1, any a2) { 489 lda a2 # line: 182 # column: 0 490 ldsuperbyname 0x0, sayHello # line: 182 # column: 0 491 callthis0 0x2, a2 # line: 182 # column: 0 492 sta v0 # line: 182 # column: 0 493 lda.str and Child # line: 182 # column: 0 494 add2 0x4, v0 # line: 182 # column: 0 495 return # line: 183 # column: 0 496} 497 498.function_kind FunctionKind::FUNCTION 499 _ESSlotNumberAnnotation 500 SlotNumber 229 501.language ECMAScript 502.function any .func_main_0(any a0, any a1, any a2) { 503 ldai 0x19 # line: 18446744073709551615 # column: 0 504 sta v0 # line: 18446744073709551615 # column: 0 505 newlexenv 0x2 # line: 18446744073709551615 # column: 0 506 definefunc 0x0, .#*#defaultGreet, 0x0 # line: 18446744073709551615 # column: 0 507 sta v1 # line: 18446744073709551615 # column: 0 508 definefunc 0x1, .#*#fetchAndDisplayData, 0x0 # line: 18446744073709551615 # column: 0 509 sta v2 # line: 18446744073709551615 # column: 0 510 definefunc 0x2, .#*#fetchData, 0x0 # line: 18446744073709551615 # column: 0 511 stlexvar 0x0, 0x0 # line: 18446744073709551615 # column: 0 512 lda.str Alice # line: 16 # column: 0 513 sta v3 # line: 16 # column: 0 514 fldai 3.140000e+00 # line: 18 # column: 0 515 sta v4 # line: 18 # column: 0 516 ldundefined # line: 20 # column: 0 517 sta v5 # line: 20 # column: 0 518 ldnull # line: 21 # column: 0 519 sta v6 # line: 21 # column: 0 520 tryldglobalbyname 0x3, Symbol # line: 22 # column: 0 521 callarg0 0x4 # line: 22 # column: 0 522 sta v7 # line: 22 # column: 0 523 ldbigint 10 # line: 23 # column: 0 524 sta v8 # line: 23 # column: 0 525 createobjectwithbuffer 0x6, _GLOBAL_2732 # line: 24 # column: 0 526 sta v9 # line: 24 # column: 0 527 createarraywithbuffer 0x7, _GLOBAL_2746 # line: 27 # column: 0 528 sta v10 # line: 27 # column: 0 529 definefunc 0x8, .#*#sum, 0x2 # line: 29 # column: 0 530 sta v11 # line: 29 # column: 0 531 ldai 0x1 # line: 29 # column: 0 532 sta v12 # line: 29 # column: 0 533 ldai 0x2 # line: 29 # column: 0 534 sta v13 # line: 29 # column: 0 535 lda v11 # line: 32 # column: 0 536 callargs2 0x9, v12, v13 # line: 32 # column: 0 537 tryldglobalbyname 0xb, Date # line: 34 # column: 0 538 sta v11 # line: 34 # column: 0 539 mov v14, v11 # line: 34 # column: 0 540 newobjrange 0xc, 0x1, v14 # line: 34 # column: 0 541 tryldglobalbyname 0xe, console # line: 36 # column: 0 542 sta v11 # line: 36 # column: 0 543 ldobjbyname 0xf, log # line: 36 # column: 0 544 sta v13 # line: 36 # column: 0 545 lda v12 # line: 36 # column: 0 546 ldobjbyvalue 0x11, v10 # line: 36 # column: 0 547 sta v10 # line: 36 # column: 0 548 mov v14, v11 # line: 36 # column: 0 549 mov v15, v3 # line: 36 # column: 0 550 mov v16, v0 # line: 36 # column: 0 551 mov v17, v4 # line: 36 # column: 0 552 mov v18, v5 # line: 36 # column: 0 553 mov v19, v6 # line: 36 # column: 0 554 mov v20, v7 # line: 36 # column: 0 555 mov v21, v8 # line: 36 # column: 0 556 mov v22, v9 # line: 36 # column: 0 557 mov v23, v10 # line: 36 # column: 0 558 lda v13 # line: 36 # column: 0 559 callthisrange 0x13, 0x9, v14 # line: 36 # column: 0 560 ldai 0x12 # line: 36 # column: 0 561 greatereq 0x15, v0 # line: 39 # column: 0 562 jeqz label@69 # line: 39 # column: 0 563 tryldglobalbyname 0x16, console # line: 40 # column: 0 564 sta v3 # line: 40 # column: 0 565 ldobjbyname 0x17, log # line: 40 # column: 0 566 sta v4 # line: 40 # column: 0 567 lda.str Adult # line: 40 # column: 0 568 sta v5 # line: 40 # column: 0 569 lda v4 # line: 40 # column: 0 570 callthis1 0x19, v3, v5 # line: 40 # column: 0 571 jmp label@77 # line: 40 # column: 0 572 label@69: # line: 0 # column: 0 573 tryldglobalbyname 0x1b, console # line: 42 # column: 0 574 sta v3 # line: 42 # column: 0 575 ldobjbyname 0x1c, log # line: 42 # column: 0 576 sta v4 # line: 42 # column: 0 577 lda.str Minor # line: 42 # column: 0 578 sta v5 # line: 42 # column: 0 579 lda v4 # line: 42 # column: 0 580 callthis1 0x1e, v3, v5 # line: 42 # column: 0 581 label@77: # line: 0 # column: 0 582 lda.str Monday # line: 46 # column: 0 583 sta v3 # line: 46 # column: 0 584 lda.str Monday # line: 48 # column: 0 585 strictnoteq 0x20, v3 # line: 48 # column: 0 586 jeqz label@86 # line: 48 # column: 0 587 lda.str Friday # line: 51 # column: 0 588 strictnoteq 0x21, v3 # line: 51 # column: 0 589 jeqz label@95 # line: 51 # column: 0 590 jmp label@104 # line: 51 # column: 0 591 label@86: # line: 0 # column: 0 592 tryldglobalbyname 0x22, console # line: 49 # column: 0 593 sta v3 # line: 49 # column: 0 594 ldobjbyname 0x23, log # line: 49 # column: 0 595 sta v4 # line: 49 # column: 0 596 lda.str Start of the week # line: 49 # column: 0 597 sta v5 # line: 49 # column: 0 598 lda v4 # line: 49 # column: 0 599 callthis1 0x25, v3, v5 # line: 49 # column: 0 600 jmp label@112 # line: 49 # column: 0 601 label@95: # line: 0 # column: 0 602 tryldglobalbyname 0x27, console # line: 52 # column: 0 603 sta v3 # line: 52 # column: 0 604 ldobjbyname 0x28, log # line: 52 # column: 0 605 sta v4 # line: 52 # column: 0 606 lda.str End of the week # line: 52 # column: 0 607 sta v5 # line: 52 # column: 0 608 lda v4 # line: 52 # column: 0 609 callthis1 0x2a, v3, v5 # line: 52 # column: 0 610 jmp label@112 # line: 52 # column: 0 611 label@104: # line: 0 # column: 0 612 tryldglobalbyname 0x2c, console # line: 55 # column: 0 613 sta v3 # line: 55 # column: 0 614 ldobjbyname 0x2d, log # line: 55 # column: 0 615 sta v4 # line: 55 # column: 0 616 lda.str Midweek # line: 55 # column: 0 617 sta v5 # line: 55 # column: 0 618 lda v4 # line: 55 # column: 0 619 callthis1 0x2f, v3, v5 # line: 55 # column: 0 620 label@112: # line: 0 # column: 0 621 ldai 0x5 # line: 55 # column: 0 622 sta v3 # line: 55 # column: 0 623 ldai 0x0 # line: 55 # column: 0 624 sta v4 # line: 55 # column: 0 625 mov v5, v4 # line: 55 # column: 0 626 label@117: # line: 0 # column: 0 627 lda v3 # line: 59 # column: 0 628 less 0x31, v5 # line: 59 # column: 0 629 jeqz label@129 # line: 59 # column: 0 630 tryldglobalbyname 0x32, console # line: 60 # column: 0 631 sta v6 # line: 60 # column: 0 632 ldobjbyname 0x33, log # line: 60 # column: 0 633 callthis1 0x35, v6, v5 # line: 60 # column: 0 634 lda v5 # line: 59 # column: 0 635 tonumeric 0x37 # line: 59 # column: 0 636 inc 0x38 # line: 59 # column: 0 637 sta v5 # line: 59 # column: 0 638 jmp label@117 # line: 59 # column: 0 639 label@129: # line: 0 # column: 0 640 mov v5, v4 # line: 59 # column: 0 641 label@130: # line: 0 # column: 0 642 lda v3 # line: 65 # column: 0 643 less 0x39, v5 # line: 65 # column: 0 644 jeqz label@142 # line: 65 # column: 0 645 tryldglobalbyname 0x3a, console # line: 66 # column: 0 646 sta v6 # line: 66 # column: 0 647 ldobjbyname 0x3b, log # line: 66 # column: 0 648 callthis1 0x3d, v6, v5 # line: 66 # column: 0 649 lda v5 # line: 67 # column: 0 650 tonumeric 0x3f # line: 67 # column: 0 651 inc 0x40 # line: 67 # column: 0 652 sta v5 # line: 67 # column: 0 653 jmp label@130 # line: 67 # column: 0 654 label@142: # line: 0 # column: 0 655 tryldglobalbyname 0x41, console # line: 71 # column: 0 656 sta v6 # line: 71 # column: 0 657 ldobjbyname 0x42, log # line: 71 # column: 0 658 callthis1 0x44, v6, v5 # line: 71 # column: 0 659 lda v5 # line: 72 # column: 0 660 tonumeric 0x46 # line: 72 # column: 0 661 inc 0x47 # line: 72 # column: 0 662 sta v5 # line: 72 # column: 0 663 lda v3 # line: 73 # column: 0 664 less 0x48, v5 # line: 73 # column: 0 665 jnez label@142 # line: 73 # column: 0 666 definefunc 0x49, .#*#greet, 0x1 # line: 76 # column: 0 667 sta v5 # line: 76 # column: 0 668 lda.str js # line: 79 # column: 0 669 sta v6 # line: 79 # column: 0 670 lda v5 # line: 79 # column: 0 671 callarg1 0x4a, v6 # line: 79 # column: 0 672 createobjectwithbuffer 0x4c, _GLOBAL_2765 # line: 82 # column: 0 673 sta v5 # line: 82 # column: 0 674 ldobjbyname 0x4d, greet # line: 89 # column: 0 675 callthis0 0x4f, v5 # line: 89 # column: 0 676 lda.str Js # line: 92 # column: 0 677 sta v6 # line: 92 # column: 0 678 lda.str Hello, # line: 93 # column: 0 679 sta v7 # line: 93 # column: 0 680 lda v6 # line: 93 # column: 0 681 add2 0x51, v7 # line: 93 # column: 0 682 sta v6 # line: 93 # column: 0 683 lda.str ! # line: 93 # column: 0 684 add2 0x52, v6 # line: 93 # column: 0 685 createobjectwithbuffer 0x53, _GLOBAL_2802 # line: 96 # column: 0 686 lda v5 # line: 97 # column: 0 687 ldobjbyname 0x54, gender # line: 97 # column: 0 688 lda v5 # line: 97 # column: 0 689 ldobjbyname 0x56, grade # line: 97 # column: 0 690 lda v1 # line: 103 # column: 0 691 callarg0 0x58 # line: 103 # column: 0 692 createarraywithbuffer 0x5a, _GLOBAL_2826 # line: 106 # column: 0 693 sta v1 # line: 106 # column: 0 694 createemptyarray 0x5b # line: 107 # column: 0 695 sta v5 # line: 107 # column: 0 696 lda v1 # line: 107 # column: 0 697 starrayspread v5, v4 # line: 107 # column: 0 698 lda v5 # line: 107 # column: 0 699 ldobjbyname 0x5c, length # line: 107 # column: 0 700 sta v1 # line: 107 # column: 0 701 ldai 0x4 # line: 107 # column: 0 702 stownbyvalue 0x5e, v5, v1 # line: 107 # column: 0 703 lda v1 # line: 107 # column: 0 704 inc 0x60 # line: 107 # column: 0 705 sta v1 # line: 107 # column: 0 706 lda v3 # line: 107 # column: 0 707 stownbyvalue 0x61, v5, v1 # line: 107 # column: 0 708 lda v1 # line: 107 # column: 0 709 inc 0x63 # line: 107 # column: 0 710 ldhole # line: 110 # column: 0 711 sta v1 # line: 110 # column: 0 712 defineclasswithbuffer 0x64, .#~@0=#Person, _GLOBAL_2845, 0x2, v1 # line: 110 # column: 0 713 sta v1 # line: 110 # column: 0 714 ldobjbyname 0x65, prototype # line: 110 # column: 0 715 lda.str Alice # line: 120 # column: 0 716 sta v3 # line: 120 # column: 0 717 mov v14, v1 # line: 120 # column: 0 718 mov v15, v3 # line: 120 # column: 0 719 mov v16, v0 # line: 120 # column: 0 720 newobjrange 0x67, 0x3, v14 # line: 120 # column: 0 721 sta v0 # line: 120 # column: 0 722 ldobjbyname 0x69, greet # line: 121 # column: 0 723 callthis0 0x6b, v0 # line: 121 # column: 0 724 ldlexvar 0x0, 0x0 # line: 132 # column: 0 725 callarg0 0x6d # line: 132 # column: 0 726 sta v0 # line: 132 # column: 0 727 ldobjbyname 0x6f, then # line: 132 # column: 0 728 sta v1 # line: 132 # column: 0 729 definefunc 0x71, .#*#, 0x1 # line: 132 # column: 0 730 sta v3 # line: 132 # column: 0 731 lda v1 # line: 132 # column: 0 732 callthis1 0x72, v0, v3 # line: 132 # column: 0 733 sta v0 # line: 132 # column: 0 734 ldobjbyname 0x74, catch # line: 134 # column: 0 735 sta v1 # line: 134 # column: 0 736 definefunc 0x76, .#*#^1, 0x1 # line: 134 # column: 0 737 sta v3 # line: 134 # column: 0 738 lda v1 # line: 134 # column: 0 739 callthis1 0x77, v0, v3 # line: 134 # column: 0 740 lda v2 # line: 146 # column: 0 741 callarg0 0x79 # line: 146 # column: 0 742 ldhole # line: 148 # column: 0 743 sta v0 # line: 148 # column: 0 744 defineclasswithbuffer 0x7b, .#~@2=#TestA, _GLOBAL_2867, 0x1, v0 # line: 148 # column: 0 745 sta v0 # line: 148 # column: 0 746 ldobjbyname 0x7c, prototype # line: 148 # column: 0 747 lda v0 # line: 148 # column: 0 748 stlexvar 0x0, 0x1 # line: 148 # column: 0 749 ldhole # line: 152 # column: 0 750 sta v0 # line: 152 # column: 0 751 defineclasswithbuffer 0x7e, .#~@3=#ClassA, _GLOBAL_2876, 0x0, v0 # line: 152 # column: 0 752 sta v0 # line: 152 # column: 0 753 ldobjbyname 0x7f, prototype # line: 152 # column: 0 754 lda v0 # line: 152 # column: 0 755 stmodulevar 0x0 # line: 152 # column: 0 756 tryldglobalbyname 0x81, a # line: 157 # column: 0 757 sta v0 # line: 157 # column: 0 758 ldobjbyname 0x82, then # line: 157 # column: 0 759 sta v1 # line: 157 # column: 0 760 definefunc 0x84, .#*#^2, 0x1 # line: 157 # column: 0 761 sta v2 # line: 157 # column: 0 762 lda v1 # line: 157 # column: 0 763 callthis1 0x85, v0, v2 # line: 157 # column: 0 764 sta v0 # line: 157 # column: 0 765 ldobjbyname 0x87, catch # line: 160 # column: 0 766 sta v1 # line: 160 # column: 0 767 definefunc 0x89, .#*#^3, 0x1 # line: 160 # column: 0 768 sta v2 # line: 160 # column: 0 769 lda v1 # line: 160 # column: 0 770 callthis1 0x8a, v0, v2 # line: 160 # column: 0 771 sta v0 # line: 160 # column: 0 772 ldobjbyname 0x8c, finally # line: 162 # column: 0 773 sta v1 # line: 162 # column: 0 774 definefunc 0x8e, .#*#^4, 0x0 # line: 162 # column: 0 775 sta v2 # line: 162 # column: 0 776 lda v1 # line: 162 # column: 0 777 callthis1 0x8f, v0, v2 # line: 162 # column: 0 778 lda v9 # line: 168 # column: 0 779 ldobjbyname 0x91, foo # line: 168 # column: 0 780 callthis0 0x93, v9 # line: 168 # column: 0 781 ldobjbyname 0x95, bar # line: 169 # column: 0 782 sta v0 # line: 169 # column: 0 783 lda v4 # line: 169 # column: 0 784 ldobjbyvalue 0x97, v0 # line: 169 # column: 0 785 sta v0 # line: 169 # column: 0 786 ldobjbyname 0x99, baz # line: 170 # column: 0 787 callthis0 0x9b, v0 # line: 170 # column: 0 788 ldhole # line: 173 # column: 0 789 sta v0 # line: 173 # column: 0 790 defineclasswithbuffer 0x9d, .#~@4=#Parent, _GLOBAL_2688, 0x0, v0 # line: 173 # column: 0 791 sta v0 # line: 173 # column: 0 792 ldobjbyname 0x9e, prototype # line: 173 # column: 0 793 defineclasswithbuffer 0xa0, .#~@5=#Child, _GLOBAL_2710, 0x0, v0 # line: 179 # column: 0 794 sta v0 # line: 179 # column: 0 795 ldobjbyname 0xa1, prototype # line: 179 # column: 0 796 mov v14, v0 # line: 179 # column: 0 797 newobjrange 0xa3, 0x1, v14 # line: 186 # column: 0 798 sta v0 # line: 186 # column: 0 799 tryldglobalbyname 0xa5, console # line: 187 # column: 0 800 sta v1 # line: 187 # column: 0 801 ldobjbyname 0xa6, log # line: 187 # column: 0 802 sta v2 # line: 187 # column: 0 803 lda v0 # line: 187 # column: 0 804 ldobjbyname 0xa8, sayHello # line: 187 # column: 0 805 callthis0 0xaa, v0 # line: 187 # column: 0 806 sta v0 # line: 187 # column: 0 807 lda v2 # line: 187 # column: 0 808 callthis1 0xac, v1, v0 # line: 187 # column: 0 809 tryldglobalbyname 0xae, somePromise # line: 190 # column: 0 810 sta v0 # line: 190 # column: 0 811 ldobjbyname 0xaf, then # line: 191 # column: 0 812 sta v1 # line: 191 # column: 0 813 definefunc 0xb1, .#*#^5, 0x1 # line: 191 # column: 0 814 sta v2 # line: 191 # column: 0 815 lda v1 # line: 191 # column: 0 816 callthis1 0xb2, v0, v2 # line: 191 # column: 0 817 sta v0 # line: 191 # column: 0 818 ldobjbyname 0xb4, catch # line: 195 # column: 0 819 sta v1 # line: 195 # column: 0 820 definefunc 0xb6, .#*#^6, 0x1 # line: 195 # column: 0 821 sta v2 # line: 195 # column: 0 822 lda v1 # line: 195 # column: 0 823 callthis1 0xb7, v0, v2 # line: 195 # column: 0 824 sta v0 # line: 195 # column: 0 825 ldobjbyname 0xb9, finally # line: 198 # column: 0 826 sta v1 # line: 198 # column: 0 827 definefunc 0xbb, .#*#^7, 0x0 # line: 198 # column: 0 828 sta v2 # line: 198 # column: 0 829 lda v1 # line: 198 # column: 0 830 callthis1 0xbc, v0, v2 # line: 198 # column: 0 831 tryldglobalbyname 0xbe, someObj # line: 203 # column: 0 832 ldobjbyname 0xbf, very # line: 205 # column: 0 833 ldobjbyname 0xc1, deep # line: 205 # column: 0 834 ldobjbyname 0xc3, property # line: 205 # column: 0 835 sta v0 # line: 205 # column: 0 836 ldobjbyname 0xc5, toString # line: 207 # column: 0 837 callthis0 0xc7, v0 # line: 207 # column: 0 838 tryldglobalbyname 0xc9, someObj # line: 209 # column: 0 839 ldobjbyname 0xca, prop1 # line: 210 # column: 0 840 sta v0 # line: 210 # column: 0 841 ldnull # line: 209 # column: 0 842 strictnoteq 0xcc, v0 # line: 209 # column: 0 843 jeqz label@348 # line: 209 # column: 0 844 ldundefined # line: 209 # column: 0 845 strictnoteq 0xcd, v0 # line: 209 # column: 0 846 jeqz label@348 # line: 209 # column: 0 847 lda v0 # line: 211 # column: 0 848 ldobjbyname 0xce, prop2 # line: 211 # column: 0 849 callthis0 0xd0, v0 # line: 211 # column: 0 850 sta v0 # line: 211 # column: 0 851 ldobjbyname 0xd2, method # line: 212 # column: 0 852 sta v1 # line: 212 # column: 0 853 ldnull # line: 209 # column: 0 854 strictnoteq 0xd4, v1 # line: 209 # column: 0 855 jeqz label@348 # line: 209 # column: 0 856 ldundefined # line: 209 # column: 0 857 strictnoteq 0xd5, v1 # line: 209 # column: 0 858 jeqz label@348 # line: 209 # column: 0 859 lda v1 # line: 212 # column: 0 860 callthis0 0xd6, v0 # line: 212 # column: 0 861 label@348: # line: 0 # column: 0 862 tryldglobalbyname 0xd8, getContext # line: 215 # column: 0 863 callarg0 0xd9 # line: 215 # column: 0 864 ldobjbyname 0xdb, config # line: 216 # column: 0 865 sta v0 # line: 216 # column: 0 866 ldnull # line: 215 # column: 0 867 strictnoteq 0xdd, v0 # line: 215 # column: 0 868 jeqz label@363 # line: 215 # column: 0 869 ldundefined # line: 215 # column: 0 870 strictnoteq 0xde, v0 # line: 215 # column: 0 871 jeqz label@363 # line: 215 # column: 0 872 lda.str someKey # line: 217 # column: 0 873 ldobjbyvalue 0xdf, v0 # line: 217 # column: 0 874 sta v0 # line: 217 # column: 0 875 ldobjbyname 0xe1, toLowerCase # line: 218 # column: 0 876 callthis0 0xe3, v0 # line: 218 # column: 0 877 label@363: # line: 0 # column: 0 878 returnundefined # line: 18446744073709551615 # column: 0 879} 880 881# ==================== 882# STRING 883 and Child 884! 885.#*# 886.#*#^1 887.#*#^2 888.#*#^3 889.#*#^4 890.#*#^5 891.#*#^6 892.#*#^7 893.#*#defaultGreet 894.#*#fetchAndDisplayData 895.#*#fetchData 896.#*#greet 897.#*#sum 898.#*@1*# 899.#*@1**# 900.#~@0=#Person 901.#~@2=#TestA 902.#~@3=#ClassA 903.#~@4=#Parent 904.#~@5=#Child 90510 906Adult 907Alice 908An error occurred: 909Data fetched successfully! 910Date 911End of the week 912Friday 913Hello from Parent 914Hello, 915Js 916Midweek 917Minor 918Monday 919Promise 920Start of the week 921Symbol 922TestA 923YY start throw error 924a 925age 926bar 927baz 928catch 929caught 930cleanup done 931config 932console 933deep 934error 935finally 936foo 937gender 938getContext 939grade 940greet 941js 942length 943log 944method 945name 946prop1 947prop2 948property 949prototype 950resolved 951sayHello 952setTimeout 953someKey 954someObj 955somePromise 956then 957toLowerCase 958toString 959value 960very 961yy execute then 962yy occur error 963yy occur finally 964